• Data Type Should Not Be Considered As a Source of Its Behaviour

      When you start learning a programming language(or just programming in general), usually there are first few chapters in books that introduce us such thing like data types (or just types). And we don't focus on this subject as much as we should because it's so simple, right? Well… I think that there is one little detail which can lead to big mistakes of understanding what really data type is.

      Read more →
    • All About Google App Engine (GAE): Features & Business Uses

        If I talk about Google then we all know that it provides an enormous range of tools, products, and services. In the running market, Google has scored high percentile and left a footprint in the list of world’s top 4 companies. Many creations of Google are widely used all over the world and the best example of this is Goole Search Engine.


        What Is Google App Engine?


        By the name, we can recognize that Google has created a Google App Engine, the name is similar to a search engine but its purpose is different. App Engine is a service and cloud computing platform employed for developing and hosting web applications.

        The platform supports Go, PHP, Java, Python, Node.js, .NET, and Ruby applications and apart from this it also supports other programming languages through custom runtimes. The App Engine serves 350 plus Billion requests per day.

        Global Google Cloud Revenue


        Source: Statista

        It is a PaaS (platform-as-a-service) Cloud computing platform that is entirely managed and utilizes in-built services to drive the apps. Once after downloading the SDK you can instantly start the development process but for this, it is mandatory to have technical knowledge. If you don’t know the technical terms then there is no need to take tension as there are many IT industries in the market that are providing Google App Engine Development Services.
        Read more →
      • NSA, Ghidra, and Unicorns

          NSA, Ghidra, and Unicorns

          This time, the PVS-Studio team's attention was attracted by Ghidra, a big bad reverse-engineering framework allowing developers to analyze binary files and do horrible things to them. The most remarkable fact about it is not even that it's free and easily extensible with plugins but that it was developed and uploaded to GitHub for public access by NSA. On the one hand, you bet NSA has enough resources for keeping their code base clean. On the other hand, new contributors, who are not well familiar with it, may have accidentally introduced bugs that could stay unnoticed. So, we decided to feed the project to our static analyzer and see if it has any code issues.
          Read more →
        • Weekend picks: A closer look at ITMO University

            ITMO University occupies several prominent buildings in the centre of St. Petersburg. But residents and guests alike rarely get a chance to take a look at what’s happening inside them. Articles featured in this digest will take you on a virtual tour of our labs, as well as shed some light on the work underway within our walls.

            Read more →
          • Locks in PostgreSQL: 3. Other locks

            • Translation
            We've already discussed some object-level locks (specifically, relation-level locks), as well as row-level locks with their connection to object-level locks and also explored wait queues, which are not always fair.

            We have a hodgepodge this time. We'll start with deadlocks (actually, I planned to discuss them last time, but that article was excessively long in itself), then briefly review object-level locks left and finally discuss predicate locks.

            Deadlocks


            When using locks, we can confront a deadlock. It occurs when one transaction tries to acquire a resource that is already in use by another transaction, while the second transaction tries to acquire a resource that is in use by the first. The figure on the left below illustrates this: solid-line arrows indicate acquired resources, while dashed-line arrows show attempts to acquire a resource that is already in use.

            To visualize a deadlock, it is convenient to build the wait-for graph. To do this, we remove specific resources, leave only transactions and indicate which transaction waits for which other. If a graph contains a cycle (from a vertex, we can get to itself in a walk along arrows), this is a deadlock.


            Read more →
          • How to Integrate Netvisor to Shopify and Simplify the Company's Business Processes

              Thousands of new online businesses created daily. Dozens of different platforms work like real mega plants to meet the needs of humanity. In recent years, the Shopify occupies a leading position in the market and continues to gain momentum. Shopify's functionality is expanding rapidly, but sometimes even it's not enough. We want to show how you can integrate the accounting Netvisor to your newly made e-shop and what benefits you get at it.

              Read more →
            • AdBlock has stolen the banner, but banners are not teeth — they will be back

              More
              Ads
            • Facebook Ad Campaigns Ways from Manual to Automotive

                Based on practice, even the simplest data analysis can lead to a significant reduction in CPA. Advertising campaigns on Facebook are no exceptions and need to be optimized over time. Often under optimization, you can see experiments with different types of audiences and targeting. If you want to get more conversions within the same budget, then you should pay attention to a few crucial points that we will consider in this article.

                Read more →
              • Top 10 RPA Service Providers to Automate your Business Processes

                  Adaptive service providers in Robotic Process Automation or RPA implementation domains are finding solutions to fill emerging service gaps in industries impacted by changes across the world at the macro-level. Traditionally, RPA is used extensively in manufacturing-intensive industries and healthcare industries. However, the newer world dynamics are driving immense adaptation and RPA use is evolving at a faster pace in services delivery as well.



                  Mainly business functions like outsourcing, financial services and insurance, banking, procurement outsourcing, Human Resources Outsourcing which used RPA in a limited way are being further adapted to drive exponential growth in RPA services verticals by service providers with a vision to build newer paradigms for Automated services. RPA service providers India are setting new trends, as they develop customized solutions for every industry player.

                  Analysts estimate that the Global Robotic Process Automation Market is poised to grow to $7.2 billion by 2025 at 32.6% CAGR (Research and Markets Report, 2020). Growth of CAGR for RPA in India is at 20% by 2025.

                  In the newer world framework, organizations need to make strategic decisions and consciously adopt higher technology platforms like RPA for higher efficiency, performance and cost effective ROI. For local businesses, finding the best RPA service providers is a game changer.

                  As the demand for robotic process automation increases market participants include Uipath, Automation Anywhere and Blue prism.

                  Here are some of the top globally trusted RPA service providers:

                  Read more →
                • List of Top World Ruby's Conferences

                    Ruby programmers around the world are participating in an increasing number of conferences where they gather to share reports on unfinished projects, discuss the future of Ruby, and welcome newcomers to the community. At such conferences, new ideas are born and a lot of inspiration comes for real masters of their craft. Let's take a look at the list of the main events of the Ruby community.

                    Read more →
                  • Keratoplasty — the last option to “fix” the eyes if everything is bad (and something about modern methods)

                    • Translation

                    Nylon 10/0 (to sew the cornea)

                    For the “last chance” operation or cornea transplant, donor tissue is needed. Specifically, we are interested in tissue with a thickness of 500–600 microns for penetrating keratoplasty. Next you need to work with this film with your hands, sew with a thin nylon thread. Then, when the cornea grows together, remove the suture. No biodegradable materials — their decay products will begin to lysing and can cause inflammation, which will exclude a positive result of the operation. Moreover, the transplant is recommended to flash twice around the perimeter — this increases the chances of its correct and uniform fixation. The second layer of nylon is most often not removed at all, because as long as it does not interfere, we don’t touch it.

                    But let's start from the beginning. Specifically, from situations where a person may need this difficult for Russia operation, but quite familiar in Germany. It is of three types:

                    • PKP, that is, the removal of the entire cornea of ​​the patient, for example, with a diameter of 7 to 8.5 mm and sewing on a new one.
                    • DALK, that is, corneal tissue transplantation with the exception of the Descemet's membrane and endothelium.
                    • DMEK, that is, the «installation» of only the layer of the Descemet's membrane and endothelial cells instead of the same layer in a patient.
                    Read more →
                  • Locks in PostgreSQL: 2. Row-level locks

                    • Translation
                    Last time, we discussed object-level locks and in particular relation-level locks. In this article, we will see how row-level locks are organized in PostgreSQL and how they are used together with object-level locks. We will also talk of wait queues and of those who jumps the queue.



                    Row-level locks


                    Organization


                    Let's recall a few weighty conclusions of the previous article.

                    • A lock must be available somewhere in the shared memory of the server.
                    • The higher granularity of locks, the lower the contention among concurrent processes.
                    • On the other hand, the higher the granularity, the more of the memory is occupied by locks.

                    There is no doubt that we want a change of one row not block other rows of the same table. But we cannot afford to have its own lock for each row either.

                    There are different approaches to solving this problem. Some database management systems apply escalation of locks: if the number of row-level locks gets too high, they are replaced with one, more general lock (for example: a page-level or an entire table-level).

                    As we will see later, PostgreSQL also applies this technique, but only for predicate locks. The situation with row-level locks is different.
                    Read more →
                  • How do doctors do the vision correction themselves

                    • Translation


                    Of course, “we cannot do it ourselves” —the surgery requires another surgeon whom you trust 100%. Answering the question of who the relatives trust — I use mine myself. I did the operation to my mother, aunt, daughter, husband — who needed something “to fix”. Walter operated on his wife and father-in-law.

                    We can usually do this while shooting or tell how it happens, with the consent of loved ones. We do this when we need to “sacrifice” someone for the sake of science. In our clinic already 6 people after laser vision correction. In the network of clinics SMILE EYES also a few people. The last case — we have 7 years of work in the position of operating nurse-administrator girl Anya, she meets and escorts patients for refractive operations. She is experienced with experience: by the age of 35, fifteen she wore soft contact lenses, sometimes she used glasses. The idea of ​​correction lived in her for all 7 years — as it happens, she saw many times in the form of records from the operating rooms. She saw both Lasik and femtoLasik, and only the operation of vision correction ReLEX SMILE (minimally invasive lenticle extraction) instilled in her confidence in safety and painlessness.

                    About Anya: I was preparing for the operation as it should be — for a week I honestly took off contact lenses and used glasses. The patients of the clinic were surprised and asked why she was wearing glasses, explaining that she was preparing for a correction. The day was chosen so that she spent the morning in the clinic; in the afternoon, a correction could be made. On this day, I had several SMILE, several SMILE operations — with Walter, who came from Germany. We agreed that Anya will be operated by Professor Sekundo, and I will help camera operators with shooting.
                    Read more →
                  • A Bug Caused by the #line Directive in the Visual C++ Compiler

                      image1.png

                      The #line directive is added by the preprocessor and can then be used to help the developer understand which file and line a particular code fragment in the preprocessed file refers to. The #line directive tells code-processing tools to change the compiler's internally stored line number and filename to a given line number and filename. Subsequent lines will be numbered relative to that position. Explicit preprocessing is mostly used for debugging or by various generators. In any case, a bug breaking this functionality may have a variety of negative effects. One of our users was faced with such a problem in Visual Studio 2019.
                      Read more →
                    • Machine Learning & Big Data: Let’s Find The Relationship Between Them

                        image

                        Machine learning is indeed a famous word among technologies. Today we will relate it with another famous term that is Big data. Both these have become Buzz words these days. Let’s here find out their meaning individually.

                        Big data is known as the process in which we collect and analyze the large volume of data sets (called Big Data) which helps in discovering useful hidden patterns and other information such as customer choices, market trends which is really beneficial for the organizations to remain informed and customer-oriented business decisions.
                        Read more →
                      • Y messenger Manifesto

                        Y messenger - decentralized end-2-end encrypted messenger


                        We are a team of independent developers. We have created a new messenger, the purpose of which is to solve the critical problems of the modern Internet and the modes of communication it provides. We see users become hostages to the services they have grown accustomed to and we see corporations exploiting their users and controlling them. And we don’t like it. We believe the Internet should be different.
                        In this Manifesto, we disclose our vision of the Internet and describe what we have done to make it better. If you share our ideas — join us. Together we can achieve more than each of us can alone.

                        Read more →
                      • We implant an artificial lens (you will need it after 60 years)

                        • Translation


                        The lens in your eye can change its optical power: when you focus somewhere on the vision, this is what happens. Payback for the «moving parts of the mechanism» — wear with age. At about 40-45 years old, problems usually begin with age-related visual impairment; in 60-70 years, you need up to three pairs of different points. At the same time, the clarity of view is reduced due to the process of sclerosis and lens opacity — it is worth thinking about replacing the lens, until it becomes dim and becomes completely rigid.

                        To date, the technology of replacing the lens is standardized and well developed. Potential risks are generally somewhat higher than with laser vision correction, but at present this type of surgery is performed even on transparent lenses with refractive purpose (when the patient does not like to wear glasses with thick glasses), that is, it is quite a “household” task for ophthalmology.
                        Read more →
                      • Most Popular JS Frameworks Overview

                          JavaScript is a multi-paradigm language. It supports event-driven, functional, and imperative, including object-oriented and prototype-based, programming styles. JavaScript was initially used only for client side. These days JavaScript is used as a server-side programming language as well. To summarize in just one simple sentence — JavaScript is the language of the web.

                          Read more →
                        • Scaling Culture as the Key to Getting Eyeballs on Your Brand

                            The Web is a blessing and a curse. It’s the greatest publishing platform ever devised, it offers accessibility and allows for the free flow of information. On the other hand, it has made getting actual exposure even harder. Yet, some brands still mistake the former for the latter and continue to pursue traditional marketing strategies.

                            Read more →
                          • How to climb a tree

                              Picture 2

                              Rather, how to get down from it. But first things first. This article stands out a bit of the usual format of articles from PVS-Studio. We often write about checking other projects, but almost never lift the veil on our inner workings. It's time to rectify this omission and talk about how the analyzer is built from the inside. More precisely, about the most important of its parts — the syntax tree. The article will focus on the part of PVS-Studio that relates to the C and C++ languages.
                              Read more →