• ConcurrenCpp — The C++ concurrency library

      Repository


      concurrencpp allows applications to write asynchronous code easily and safely by using executors and coroutines.


      By using concurrencpp applications can break down big procedures that need to be processed asynchronously into smaller tasks that run concurrently and work in a co-operative manner to achieve the wanted result.


      concurrencpp also allows applications to write parallel algorithms more easily by using parallel coroutines.


      concurrencpp main advantages are:


      • Being able to write non-blocking, asynchronous code easily by using the C++20 coroutines and the co_await keyword.
      • Being able to write modern concurrent code without having to rely on low-level concurrency primitives like locks and condition variables.
      • The concurrency runtime manages all low-level resources such as threads automatically.
      • Reducing the possibility of race conditions, data races and deadlocks by using high-level objects with built-in synchronization.
      • concurrencpp provides various types of commonly used executors with a complete coroutine integration.
      • Applications can extend the library by using their own provided executors.
      • Applications automatically scale-up to use all hardware processors (cores).
      Read more →
    • Solving coding problems with Kotlin: Collection functions

        (originally published on Medium)

        I have talked to many Android developers, and most of them are excited about Kotlin. So am I. When I just started learning Koltin, I was solving Kotlin Koans, and along with other great features, I was impressed with the power of functions for performing operations on collections. Since then, I spent three years writing Koltin code but rarely utilised all the potential of the language.

        During this year, I did more than a hundred coding problems on Leetcode in Java. I didn’t switch to Kotlin because I know the syntax of Java 6 so well, that I could effortlessly write code without autocompletion and syntax highlighting. But I didn’t keep track of new Java features, as Android support of Java SDK lacked many versions behind. I didn’t switch to Kotlin for solving problems right away. Although I was writing Kotlin code for several years, I felt that I need to make an extra cognitive effort to get the syntax and the language constructions right. Solving algorithmic problems, especially under the time pressure, is very different from Android app development. Still, the more I learned about Kotlin, the more I realised how many powerful features I’m missing, and how much boilerplate code I need to write.

        One day, I have decided that I need to move on, so I started a new session in Leetcode and switched the compiler to Kotlin. I solved just a few easy problems, but I already feel that I have something to share.

        Читать далее
      • SIEM Solutions Overview (Security Information and Event Management)


        Modern corporate IT infrastructure consists of many systems and components. And monitoring their work individually can be quite difficult — the larger the enterprise is, the more burdensome these tasks are. But there are the tools, which collect reports on the work of the entire corporate infrastructure — SIEM (Security Information and Event Management) system in one place. Read the best of such products according to Gartner experts in our review, and learn about the main features from our comparison table.
        Read more →
      • Making python's dream of multithreading come true

          Intro


          So you are writing some CPU-intensive code in Python and really trying to find ways out of its single-threaded prison. You might be looking towards Numba's "nopython parallel" mode, you might be using forked processes with multiprocessing, you might be writing microservices with database-like coordinators, or even writing your own multithreaded programs in C/C++ just like creators of TensorFlow did.


          In this article I'm describing a rationale for my pet project where I try to implement facilities for general purpose multitasking to be used in a form of simple python code, employing a database-like approach for interpreters communication, while keeping the GIL (Global Interpreter Lock) and trying to be as pythonic as possible.



          It could also become handy in the light of upcoming multiple interpreters support in CPython.


          As far as I know, nobody came that far in trying to provide Python program with native shareable storage. The last closest attempt was Python Object Sharing which is pretty much dead by now. I hope my project won't meet the same fate.

          Read more →
        • How to rank higher on Google?

          image

          There are different approaches to manage construct a brand online, get leads and win in business. By the by, on the off chance that you know a smidgen at a time measure on the most proficient strategy to rank higher on Google first page nothing can stop your business developing expedient. Different SEO methodologies are basic when ranking on Google typically. Additionally, you head the centre insider real factors.

          Once more thing you ought to have is consistent quality considering the route that in 2019 SEO requires some certified imperativeness and only the best page that gives the most spurring power to the clients will rank. Notwithstanding, for that, your site page ought to get made and more references must come towards the site page with backlinks. Backlinks are an inside factor to rank higher on Google search. After the On-page, SEO is done well, by and large, your next off-site SEO work begins with vault posting for citation building. It must be done by specialists and Dinesh is the world's best as for citation building.
          Read more →
        • Check how you remember nullable value types. Let's peek under the hood

            image1.png

            Recently nullable reference types have become trendy. Meanwhile, the good old nullable value types are still here and actively used. How well do you remember the nuances of working with them? Let's jog your memory or test your knowledge by reading this article. Examples of C# and IL code, references to the CLI specification, and CoreCLR code are provided. Let's start with an interesting case.
            Read more →
          • How to make integration with 50 suppliers and not get crazy

            • Translation
            There are many supplier types. Some suppliers ready to get your data format, another — don't; some use SOAP protocol, another — REST; some uses EAN for goods identification — another uses offer ID; some ready to give you order status, another — don't, some uses vocabulary, witch elements you need to map with your’ s master data, another — don't. Simply put — suppliers are extremely different.

            However, we need to automate the data exchange. Now is the 21st century. In perfect world we need to found the B2B conference for suppliers and them customers (in auto part market in my case) and develop one data exchange format and be happy. Unfortunately, we live in imperfect world.
            Read more →
          • Ads
            AdBlock has stolen the banner, but banners are not teeth — they will be back

            More
          • Technical Challenges of VuzeCamera (iOS) — First-ever 3D VR Movie Shot in Space

              VuzeCamera is the first consumer 360° 3D camera and a new dual-camera that gives anyone the power to create and share immersive experiences in 360° or VR180° (3D) Photo and Video.


              This device is regularly ranked in the top selections of the best cameras, it’s been praised by numerous reviews, and a couple of years ago the Vuze camera went to the International Space Station to shoot the first-ever 3D VR movie shot in space.
              Read more →
            • Checking Clang 11 with PVS-Studio

                PVS-Studio: I'm still worthy

                Every now and then, we have to write articles about how we've checked another fresh version of some compiler. That's not really much fun. However, as practice shows, if we stop doing that for a while, folks start doubting whether PVS-Studio is worth its title of a good catcher of bugs and vulnerabilities. What if the new compiler can do that too? Sure, compilers evolve, but so does PVS-Studio – and it proves, again and again, its ability to catch bugs even in high-quality projects such as compilers.
                Read more →
              • Checking a Header-Only C++ Library Collection (awesome-hpp)

                  PVS-Studio and Awesome hpp

                  Somehow, we've happened to check most of the libraries making up a collection called "Awesome hpp". These are small header-only projects in C++. Hopefully, the information about the bugs we've found will help make the libraries better. We'll also be happy to see the developers use PVS-Studio on a regular basis thanks to the free-license option we provide.
                  Read more →
                • 5 Most Popular IT Outsourcing Software Development Companies in India

                    The global IT outsourcing market generated a revenue of $520.74 billion in 2019 and it is expected to surge at a CAGR of 7.7% during the 2020-2027 period. The immense growth of the market is due to the growing popularity of outsourcing software development companies across the globe. 

                    In fact, in 2018, India dominated the global IT outsourcing market with a 67.0% share and the Indian IT sector generated a revenue of more than $150.0 billion with a CAGR of 10-15.0% per year. 

                    The majority of small businesses, start-ups, and enterprises are inclined towards IT outsourcing companies for managing and handling their business. There are hundreds and thousands of outsourcing software development companies available on the internet but choosing the top-notch IT outsourcing company is a tough call because you might fall into the wrong trap

                    So, for that, I am going to shortlist the top 5 software development outsourcing companies in India that not only add value to your business but also help you to expand your business across the globe. 

                    I am going to prepare a list of parameters that will back the shortlisting of these top 5 IT outsourcing companies in India- 

                    Read More
                  • Amnesia: The Dark Descent or How to Forget to Fix Copy Paste

                      image1.png

                      Just before the release of the "Amnesia: Rebirth" game, the vendor "Fractional Games" opened the source code of the legendary "Amnesia: The Dark Descent" and its sequel "Amnesia: A Machine For Pigs". Why not use the static analysis tool to see what dreadful mistakes are hidden in the inside of these cult horror games?
                      Read more →
                    • Is headless e-commerce right for your business?

                        Is headless e-commerce right for your business?

                        Headless e-commerce is a hot topic in the media and industry events. Business owners who learn more about headless eCommerce (usually called “headless commerce”) start feeling uncomfortable, not understanding whether it is sufficiently important to implement it or not. No one wants to stay behind with technology, but retailers do not have money left for unnecessary toys either. Let's have a look for possible benefits and pitfalls.
                        Read more →
                      • The work on the historical development plan case Vladimir city (Russia)

                          I am a russian cartographer Alexander Pronin and I am going to tell you how we together with my colleague Nikita Slavin, a map of the age of the houses of the city of Vladimir was created.

                          Data


                          For the layer with buildings I used a free map from OpenStreetMap. This layer contains the address, which is divided into columns, names of the objects and numbers of storeys. I collect data on the year of construction, address, name of the object and photos from several sources.

                          The first one is my project владимирдом.рф It’s a plot that I created to show the residents of my hometown how our city was built up. In this case I took the year of construction data from the website of the Ministry of Housing and Communal Services, for kindergartens and schools — from their official websites. A lot of information was sent also by site users. The map only shows the year of construction.

                          Read more →
                        • 5 Thought-Provoking Use Cases Of Blockchain In Diverse Industries

                            Blockchain is a decentralized technology that maintains a record of all transactions occurring over a peer-to-peer network. Due to Blockchain's several different high-level use cases, numerous industries described Blockchain as the 'magic beans.' 

                            Blockchains store the record in a decentralized system that is interconnected. This technology lessens vulnerability and enhances transparency in all industrial sectors as information is stored digitally, and it does not have any centralized point to carry out the transactions.

                            Do You Know?

                            Read more
                          • Checking the Code of DeepSpeech, or Why You Shouldn't Write in namespace std

                              DeepSpeech is an open-source speech recognition engine developed by Mozilla. It's pretty fast and ranks high, which makes its source code an interesting target for static analysis. In this article, I'll show you some of the bugs found in DeepSpeech's C++ code.

                              image1.png

                              Introduction


                              We have already scanned a few projects based on machine learning before, so there was nothing new about DeepSpeech to us in this respect. No wonder since the project is quite popular: as of this writing, it has 15k stars on GitHub.
                              Read more →
                            • Part 2: Upsetting Opinions about Static Analyzers

                                Единорог грустит

                                By writing the article "Upsetting Opinions about Static Analyzers" we were supposed to get it off our chest and peacefully let it all go. However, the article unexpectedly triggered robust feedback. Unfortunately, the discussion went in the wrong direction, and now we will make a second attempt to explain our view of this situation.
                                Read more →
                              • How To Build a Password Management Software Using JAVA?

                                  In this digital world, people prefer to work remotely. There are numerous tasks that each of us goes through every day. If I talk about an application's usage, then it has been predicted that there will be a 25% increase in global app downloads between 2018 and 2022

                                  But it can be quite challenging for organizations to maintain and create multiple passwords. Hence, a password management software can be a great choice to manage this effectively. It is like your bank locker, where one can store numerous passwords. The users only need a master password to access the software.

                                  Do You Know? 

                                  Read More