• Ruby on Rails' Big Place in Marketplace Development

      How do you know that it’s time for you to launch your online marketplace? When do you see the necessity to provide the ultimate clear and fast “brand – consumer” communications? The point of an online marketplace is to grow customers loyalty by offering them an ever-expanding range of products.

      A brand, whether online or not, must use its reputation and expertise to make its marketplace successful.

      Let's take a look at the benefits of marketplaces and the reliability of Ruby on Rails as the strongest development tool.

      Read more →
    • Diamond inheritance problem is not a problem, that's a tricky feature


      Before discussing the topic I’d like to start with a general suggestion not to use multiple inheritance and especially diamond unless you are strongly forced to. You may use e.g. composition or aggregation instead.

      Well, “Diamond inheritance problem” is some kind of steady expression which formed many years ago. You can easily find a lot of articles suggesting usage of “virtual public” to avoid the ambiguity and so on. For instance, https://en.wikipedia.org/wiki/Multiple_inheritance


       That is not wrong as for the problem stated but anyway it is quite one-side statement.
       Below you can find:

      • difference in memory allocation and initialization order between public and public virtual inheritance (examples 1, 2),
      • examples of practical usage of both public and public virtual inheritance (examples 3, 4).
      Read more →
    • Guide for entrepreneurs to launch an on-demand grocery delivery app amid the coronavirus pandemic

        After the onset of the coronavirus pandemic, Instacart, a popular online grocery platform, hired 300,000 workers to meet the demands of the people. In addition, they are planning to hire 250,000 more. Such is the demand for online grocery platforms nowadays. People are in self-isolation with restricted outdoor movements. The fear of contracting the disease is so high that people are looking for alternative ways even to access essential services. As a result, smartphone applications are gaining increased attention from people all over the world.
        Read more →
      • Approach to calculating individual risk in COVID-19

          In February 2020, when the disease came to Europe, it became apparent to me that our timid hopes that the epidemics would subside and be finally buried in the China's soil were ruined. It was already evident from the Chinese statistics that the virus is lethal enough to scare and mild enough to pass unnoticed in many cases and, thus, to guarantee its effective dissemination. The question was when it reaches each next country.

          Another question was the individual risks, especially the risk of lethal outcome if one contracts the virus. The average figure of around 5% was circulated by late January and early February. It was known that males were more susceptible to fatal outcomes. By February, it was also evident that the virus doesn't lead to death only in the elderly — the middle age was significantly affected, as well.

          Read more →
        • Parallelism in PostgreSQL: treatment of trees and conscience

            Database scaling is a continually coming future. DBMS get improved and better scaled on hardware platforms, while the hardware platforms themselves increase the performance, number of cores, and memory — Achilles is trying to catch up with the turtle, but has not caught up yet. The database scaling challenge manifests itself in all its magnitude.

            Postgres Professional had to face the scaling problem not only theoretically, but also in practice: through their customers. Even more than once. It's one of these real-life cases that this article
            will discuss.
            Many thanks to Elena Indrupskaya for the translation. Russian version is here.
            Read more →
          • Why we love and choose Ruby instead of Node.js?

              Choosing between Node.js and Ruby on Rails, when choosing a development platform, is a core decision. That affects how the project unfolds over time, and how much server resources will be needed. Both languages can support web applications of high complexity, but each has its advantages and disadvantages. Knowledge of these pros and cons will help to choose the best solution for the proposed project. Let's analyze in more detail and tell you about our choice and experience.

              Read more →
            • WebGL tutorial: image processing

              In this tutorial you will learn how to use WebGL for image processing. We will cover basic stuff like initialization, texture loading, and simple fragment shaders. I will try to cover all aspects of interaction with WebGL but you should have decent understanding of vanila javascript. If you want more in depth explanations, there is a good book called "Learn WebGL", check it out.

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

            • Programming as an endless educational pursuit

                When one embarks on the journey to master the craft of programming, they come to the realisation that it has no finish line. No matter how good you are, there are still things to learn, solutions to explore.

                Today, we’ll talk about the importance of remaining a lifelong student, language adoption trends according to StackOverflow and why programming itself might not be what you end up learning to become better.

                Read more →
              • Powershell way to exclude folder from Defender list

                • Tutorial
                To exclude some folder from the defender list can be used cmdlet Set-MpPreference
                Manly, now you can stop reading, go to the PowerShell and update excludes:)
                But if you are want to see how to perform this in more detail — welcome under the habrcut.

                UPD: Added a script to add selected folder to excluded Defender locations (at the end of the post)
                Read more →
              • Four Ways Quantum Computing Will Change Artificial Intelligence Forever

                  If science were a dating app, quantum physics and machine learning probably wouldn’t be a match. They’re from completely different fields and often require completely different backgrounds and skills. But, throw in a little quantum computing and, suddenly, that science-matchmaking app becomes Tinder and the attraction between the two is palpable.


                  (Credit: cmo.adobe.com/articles/2017/5/how-will-artificial-intelligence-impact-business-tlp-ptr.html#gs.5zlifl)

                  Even though the extent of change that quantum computing will unleash on AI is up for debate, many experts now more than suspect that quantum computing will definitely alter AI at some level. Analysts from bank holding company BBVA, for example, point toward the natural synergy between quantum computing and AI as reasons why quantum machine learning will eventually best classical machine learning.

                  “Quantum machine learning can be more efficient than classic machine learning, at least for certain models that are intrinsically hard to learn using conventional computers,” says Samuel Fernández Lorenzo, a quantum algorithm researcher who collaborates with BBVA’s New Digital Businesses area. “We still have to find out to what extent do these models appear in practical applications.”
                  Read more →
                • Your company life before and after accounting automation

                    The manual work of the accountant went into oblivion. Today everyone makes machines, but, of course, controlled by a specialist. Although in our last project we have carefully worked on the topic of artificial intelligence and some accounting operations can already occur with little or no human intervention. Let's look at what systems we attracted, and what exactly was done to save time on daily routine operations.

                    Read more →
                  • Managing hundreds of servers for load testing: autoscaling, custom monitoring, DevOps culture

                      In the previous article, I talked about our load testing infrastructure. On average, we use about 100 servers to create a load, about 150 servers to run our service. All these servers need to be created, configured, started, deleted. To do this, we use the same tools as in the production environment to reduce the amount of manual work:

                      • Terraform scripts for creating and deleting a test environment;
                      • Ansible scripts for configuring, updating, starting servers;
                      • In-house Python scripts for dynamic scaling, depending on the load.

                      Thanks to the Terraform and Ansible scripts, all operations ranging from creating instances to starting servers are performed with only six commands:

                      #launch the required instances in the AWS console
                      ansible-playbook deploy-config.yml #update servers versions
                      ansible-playbook start-application.yml #start our app on these servers
                      ansible-playbook update-test-scenario.yml --ask-vault-pass #update the JMeter test scenario if it was changed
                      infrastructure-aws-cluster/jmeter_clients:~# terraform apply #create JMeter servers for creating the load
                      playbook start-jmeter-server-cluster.yml #start the JMeter cluster
                      ansible-playbook start-stress-test.yml #start the test

                      Read more →
                    • Are Your File Transfer Integrations GDPR Compliant?

                      The onslaught of data security breaches today is relentless, with thousands of major breaches each year and 50 percent more breaches in 2019 vs. 2018, according to a report by Risk Based Security. The costs for each breach have burgeoned as well, with the average cost of a data breach at about $3.92 million.

                      Securing data from breaches not only spares bottom line and publicity, it's now also a basic legal requirement to comply with rapidly growing data privacy laws.

                      While organizations have long had to comply with industry-specific standards, such as HIPAA in healthcare and the Payment Card Industry Data Security Standard (PCI DSS), you now also face new consumer privacy regulations. Including:

                      Read more →
                    • JSONPath in PostgreSQL: committing patches and selecting apartments

                        This article was written in Russian in 2019 after the PostgreSQL 12 feature freeze, and it is still up-to-date. Unfortunately other patches of the SQL/JSON will not get even into version 13.
                        Many thanks to Elena Indrupskaya for the translation.


                        All that relates to JSON(B) is relevant and of high demand in the world and in Russia, and it is one of the key development areas in Postgres Professional. The jsonb type, as well as functions and operators to manipulate JSON/JSONB, appeared as early as in PostgreSQL 9.4. They were developed by the team lead by Oleg Bartunov.

                        The SQL/2016 standard provides for JSON usage: the standard mentions JSONPath — a set of functionalities to address data inside JSON; JSONTABLE — capabilities for conversion of JSON to usual database tables; a large family of functions and operators. Although JSON has long been supported in Postgres, in 2017 Oleg Bartunov with his colleagues started their work to support the standard. Of all described in the standard, only one patch, but a critical one, got into version 12; it is JSONPath, which we will, therefore, describe here.
                        Read more →
                      • Reach Out Top Hadoop Consulting Companies To Leverage Big Data In 2020


                          Hadoop is divided into different modules, each of which delivers a distinct task crucial for a computer system and is uniquely designed for big data analytics. Apache Software Foundation developed this incredible platform. It is extensively utilized by worldwide developers to build big data Hadoop solutions amazingly and easily.

                          Big data offers several perks, some of them are; examining root causes of failures, recognizing the potential of data-driven marketing, improving and enhancing customer engagement, and much more. By offering multiple solutions in a single stream it helps in lowering the cost of the organization.

                          In various industries such as Retail, Manufacturing, Financial insurance, Education, Transportation, Agriculture, Healthcare, Energy, etc big data is utilized and that’s why it’s demand is expanding day by day. The Global Hadoop Market is envisioned to grow to $84.6 billion by 2021, with an expected CAGR of 63.4%.
                          Read more →
                        • Why I keep track of spendings in a personal app made with Git+JS

                          • Translation

                          Hi, folks, let me share my experience of creating an application to keep track of my spendings. Specifically, let me do it by answering the following questions:

                          1. Why keep track of spendings in an application?
                          2. Why did I create the application as a personal project?
                          3. Why does the project use Git+JS?

                          1. Why keep track of spendings in an application?

                          I, like many people out there, wanted to become rich and successful. To become rich, one is often advised to run a personal budget, that's what I started to do several years ago. I'd like to point out that running my personal budget hasn't made me rich and successful, and I increased income simply by moving to Moscow.

                          Read more →
                        • Is Python The Answer To High-End Mobile Apps?


                          Before the development of any software or a mobile app, the first thing that comes in mind is- which programming language is the best for this app. Yes! It is really important to choose the best programming language for particular mobile app development.

                          So, among various programming languages, let’s throw light on the significance of Python in Mobile app development or it could also be said that why Python is the best language for mobile app development?

                          Before that, let’s have a look at the stat where according to statista.com, Python remains the most popular programming language in 2020, according to GitHub and Google Trends, surpassing longstanding Java and JavaScript in popularity.

                          Python was also the biggest gainer in the Tiobe index of the popularity of programming languages in the year 2018, rising by 3.62% points from January 2018 to January 2019, with a rating of approx. 8.2% for this month.
                          Read more →
                        • Best .Net Development Tools in 2020

                            .Net is indeed an important application development platform as it is secure, robust and quite easy to learn and implement. Developers are widely using the .Net framework to build web applications and even modernizing the legacy programming based applications into .Net based ones. .Net developers also use many 3rd party tools to carry out the development work. These tools have proven to provide the best support while the development goes on.

                            Here are some of the top useful tools being used by many offshore .net development teams, .net developers, individual .net programmers, etc.
                            Read more →
                          • Why we fell in love with Vue.js?

                              Implementation a web UI is faced with more and more complex tasks that require the use of more and more complex tools. The trend of leaving the MVC application architecture, as well as the desire of developers to use separate libraries for each layer of tasks, led to changes, against which the Vue.JS framework appeared and became popular. Let's try to understand why Vue.JS appeared and what problems it carefully solves.

                              Read more →
                            • How to test Ansible and don't go nuts

                                It is the translation of my speech at DevOps-40 2020-03-18:

                                After the second commit, each code becomes legacy. It happens because the original ideas do not meet actual requirements for the system. It is not bad or good thing. It is the nature of infrastructure & agreements between people. Refactoring should align requirements & actual state. Let me call it Infrastructure as Code refactoring.

                                Read more →