• How to choose the appropriate level of statistical significance for an AB-test

      Nowadays a lot of product managers have to confirm most of their decisions with AB-tests. Yet, it is far not always clear how to choose the parameters for the test. A particularly difficult parameter to tune is often the level of statistical significance. If we choose too high level - tests will fail even though improvements do exist. If we choose too low level - we'll be getting lots of "confirmations" of false improvements.

      When we make decisions based on AB-tests, once in a while we'll be making mistakes. We can limit the losses caused by such mistakes by choosing the appropriate level of statistical significance.

      Read more
    • 12 Tech Trends Every Java Developer Must Learn To Win The Game In 2021

        The previous year has been very distressing for businesses and employees. Though, software development didn’t get so much affected and is still thriving. While tech expansion is continuing, Java development is also going under significant transformation.

        The arrival of new concepts and technologies has imposed a question mark on the potential of Java developers. From wearable applications to AI solutions, Java usage is a matter of concern for peers.

        Moreover, it is high time that developers enhance their skills as to the changing demands of the industry. If you are a Java developer, surely you too would be wondering what I am talking about what things you should learn.

        Read more
      • Blockchain is the perfect solution to online privacy problem

          We are increasingly aware of the importance of our personal data. Primarily due to numerous data leaks and the fact of numerous sales of personal information on the black market. Yes, huge corporations like Apple or Samsung prioritize the preservation of sensitive user data. However, they find it difficult to store and use them at the same time. That is why blockchain technology is the perfect tool for solving the online privacy problem.

          There are constant news in the media about the problem of personal privacy, which is represented by constant data leaks and the general technological illiteracy of the world population. In the Pew study, nearly 80% of respondents said they are very concerned about how companies are using the data they collect. In MState's study, 24% of respondents stopped using certain apps due to privacy concerns.

          Today, an increasing number of people are actively protecting their data by refusing the services of companies and applications that use personal data. This is why Apple, Lyft, Dropbox, and Adobe have started taking a consumer-centric approach to data privacy. Consumers' understanding that their personal data is a commodity is increasing.

          Free TON is a prime example of a secure blockchain. This blockchain has some of the best features compared to Ethereum, Binance Smart Chain, and Stellar. Data security directly depends on the use of blockchain. Each of the above blockchains provides a different level of data protection. Ethereum is the most popular blockchain, but Free TON may soon overtake it. This blockchain is just over a year old, and its capabilities exceed those of all other blockchains.

          Читать далее
        • Telegram bot provides time-based currency

            Many of us spend time in specialized telegram groups. The power over communication here belongs to random people with their own shortcomings. Conflict and abuse occurs regularly. Is there another way to keep order so that scam spam doesn't flourish and no one has total control over group members?

            In my case, these thoughts led to the development and testing of a system that can be connected to your Telegram today.

            How it works?
          • Ads
            AdBlock has stolen the banner, but banners are not teeth — they will be back

            More
          • Atomic Swaps — Taking out the Middleman

              And so here we find ourselves in the year of our lord 2021. Global crypto market capitalization is approaching $2 trillion. PayPal is launching a crypto checkout service. Lindsay Lohan is shilling Tron. The Dogecoin Super Bowl commercial didn’t happen, but Elon’s taking it “literally” to the moon instead. Our ascendancy is complete. Crypto is mainstream. But, even today, getting your hands on certain crypto assets can be a bit of an epic journey. 

              Читать далее
            • Flitter Your Business With AI Integrated Flutter App Development

              As we all are aware of the fact that the digital market is heavily leaning towards a reliable UX-driven process, app development has become quite complex, especially for targeting the industry for mobile platforms.

              For every organization, creating a product that is beneficial for their customer needs always comes up with a plethora of challenges. 

              From the technical point of time, there are various challenges that every business faces, including selecting the right platform for the app, the right technology stack or framework, and creating an app that fulfills the needs and expectations of customers.  

              Similarly, there are more challenges that every business faces and needs to cope with while creating its dream product. 

              So, what to do??

              Well, what if I say that the answer to all your queries and questions is Flutter app development with Artificial Intelligence (AI)  integration……

              Surprised? Wondering how? 

              Well, AI in Flutter app development is one of the best advancements in the software market. The concept of AI was first introduced during the 20th century with loads of innovations and advancements that we are still integrating into our mobile app development. 

              But, what are Artificial Intelligence and Flutter app development? 

              Read more
            • Data Science Digest — 21.04.21

                Hi All,

                I’m pleased to invite you all to enroll in the Lviv Data Science Summer School, to delve into advanced methods and tools of Data Science and Machine Learning, including such domains as CV, NLP, Healthcare, Social Network Analysis, and Urban Data Science. The courses are practice-oriented and are geared towards undergraduates, Ph.D. students, and young professionals (intermediate level). The studies begin July 19–30 and will be hosted online. Make sure to apply — Spots are running fast!

                If you’re more used to getting updates every day, follow us on social media:

                Telegram
                Twitter
                LinkedIn
                Facebook

                Regards,
                Dmitry Spodarets.

                Read more
              • Neural network Telegram bot with StyleGAN and GPT-2

                  The Beginning


                  So we have already played with different neural networks. Cursed image generation using GANs, deep texts from GPT-2 — we have seen it all.


                  This time I wanted to create a neural entity that would act like a beauty blogger. This meant it would have to post pictures like Instagram influencers do and generate the same kind of narcissistic texts. \


                  Initially I planned to post the neural content on Instagram but using the Facebook Graph API which is needed to go beyond read-only was too painful for me. So I reverted to Telegram which is one of my favorite social products overall.


                  The name of the entity/channel (Aida Enelpi) is a bad neural-oriented pun mostly generated by the bot itself.


                  One of the first posts generated by Aida

                  Read more →
                • Data Science Digest — We Are Back

                    Hi All,

                    I have some good news for you…

                    Data Science Digest is back! We’ve been “offline” for a while, but no worries — You’ll receive regular digest updates with top news and resources on AI/ML/DS every Wednesday, starting today.

                    If you’re more used to getting updates every day, follow us on social media:

                    Telegram - https://t.me/DataScienceDigest
                    Twitter - https://twitter.com/Data_Digest
                    LinkedIn - https://www.linkedin.com/company/data-science-digest/
                    Facebook - https://www.facebook.com/DataScienceDigest/

                    And finally, your feedback is very much appreciated. Feel free to share any ideas with me and the team, and we’ll do our best to make Data Science Digest a better place for all.

                    Regards,
                    Dmitry Spodarets.

                    Read more
                  • Algorithms in Go: Bit Manipulation

                      This article is a part of Algorithms in Go series where we discuss common algorithmic problems and their solution patterns.


                      In this edition, we take a closer look at bit manipulations. Bit operations can be extremely powerful and useful in an entire class of algorithmic problems, including problems that at first glance does not have to do anything with bits.


                      Let's consider the following problem: six friends meet in the bar and decide who pays for the next round. They would like to select a random person among them for that. How can they do a random selection using only a single coin?



                      The solution to this problem is not particularly obvious (for me:), so let's simplify a problem for a moment to develop our understanding. How would we do the selection if there were only three friends? In other words, how would we "mimic" a three-sided coin with a two-sided coin?

                      Read more →
                    • Distributed Artificial Intelligence with InterSystems IRIS

                        Author: Sergey Lukyanchikov, Sales Engineer at InterSystems

                        What is Distributed Artificial Intelligence (DAI)?

                        Attempts to find a “bullet-proof” definition have not produced result: it seems like the term is slightly “ahead of time”. Still, we can analyze semantically the term itself – deriving that distributed artificial intelligence is the same AI (see our effort to suggest an “applied” definition) though partitioned across several computers that are not clustered together (neither data-wise, nor via applications, not by providing access to particular computers in principle). I.e., ideally, distributed artificial intelligence should be arranged in such a way that none of the computers participating in that “distribution” have direct access to data nor applications of another computer: the only alternative becomes transmission of data samples and executable scripts via “transparent” messaging. Any deviations from that ideal should lead to an advent of “partially distributed artificial intelligence” – an example being distributed data with a central application server. Or its inverse. One way or the other, we obtain as a result a set of “federated” models (i.e., either models trained each on their own data sources, or each trained by their own algorithms, or “both at once”).

                        Distributed AI scenarios “for the masses”

                        We will not be discussing edge computations, confidential data operators, scattered mobile searches, or similar fascinating yet not the most consciously and wide-applied (not at this moment) scenarios. We will be much “closer to life” if, for instance, we consider the following scenario (its detailed demo can and should be watched here): a company runs a production-level AI/ML solution, the quality of its functioning is being systematically checked by an external data scientist (i.e., an expert that is not an employee of the company). For a number of reasons, the company cannot grant the data scientist access to the solution but it can send him a sample of records from a required table following a schedule or a particular event (for example, termination of a training session for one or several models by the solution). With that we assume, that the data scientist owns some version of the AI/ML mechanisms already integrated in the production-level solution that the company is running – and it is likely that they are being developed, improved, and adapted to concrete use cases of that concrete company, by the data scientist himself. Deployment of those mechanisms into the running solution, monitoring of their functioning, and other lifecycle aspects are being handled by a data engineer (the company employee).

                        Читать далее
                      • High-Quality Text-to-Speech Made Accessible, Simple and Fast

                          image


                          There is a lot of commotion in text-to-speech now. There is a great variety of toolkits, a plethora of commercial APIs from GAFA companies (based both on new and older technologies). There are also a lot of Silicon Valley startups trying to ship products akin to "deep fakes" in speech.


                          But despite all this ruckus we have not yet seen open solutions that would fulfill all of these criteria:


                          • Naturally sounding speech;
                          • A large library of voices in many languages;
                          • Support for 16kHz and 8kHz out of the box;
                          • No GPUs / ML engineering team / training required;
                          • Unique voices not infringing upon third-party licenses;
                          • High throughput on slow hardware. Decent performance on one CPU thread;
                          • Minimalism and lack of dependencies. One-line usage, no builds or coding in C++ required;
                          • Positioned as a solution, not yet another toolkit / compilation of models developed by other people;
                          • Not affiliated by any means with ecosystems of Google / Yandex / Sberbank;

                          We decided to share our open non-commercial solution that fits all of these criteria with the community. Since we have published the whole pipeline we do not focus much on cherry picked examples and we encourage you to visit our project GitHub repo to test our TTS for yourself.

                          Read more →
                        • Grinding in video games and real life

                          Grind is a process of slowly getting valuable resources (be it experience points or loot) by repetitive and often simple tasks in video games. It has been present from the beginning of gaming but has become more widespread with the popularization of online RPG games because of their leveling systems and competitive elements. 

                          It is highly criticized by gamers around the world for making games boring and work-like, yet many people specifically choose to play grind-heavy games. The reason might be because they find simple repetitive tasks relaxing and distracting from real-life problems, as a form of escapism.

                          However, there is also a gameplay reason for grinding: getting valuable resources early can make a game easier later. Some popular games like Diablo are even centered around grind. Thus, everyone will have to grind at some point to prevent gameplay from getting too difficult, which quickly becomes an inescapable habit. Later, gamers might apply grinding even to games that do not require it. Interestingly enough, grinding early on can also make the late-game boring because it is going to be too easy if the game was not designed for grinding. For example, in Subnautica, getting a lot of resources early on will make some of the late-game tools useless because all the resources that could have been gained with them have already been gained.

                          From the example above, we can see that grind does not always improve the gameplay. We can also see that it is not always a necessary process and can be either minimized or avoided entirely: sometimes, the need for it exists only in our mind, forcing us to diminish the fun of actually playing the game. Is it just a question of habit or is there any other reason for us to grind?

                          Читать далее
                        • Multiple violations of policies in RMS open letter

                            Author: Chris Punches (@cmpunches, Silo group). License: "Please feel free to share unmodified".

                            The following text is an unmodified copy of now removed issue #2250 on rms-open-letter.github.io repository. The text claims multiple violations of different policies, codes of conduct and other documents in creation, content and support of the "Open letter to remove Richard M. Stallman from all leadership positions". The issue has not been addressed.

                            Read more
                          • Algorithms in Go

                            • Tutorial

                            Most solutions to algorithmic problems can be grouped into a rather small number of patterns. When we start to solve some problem, we need to think about how we would classify them. For example, can we apply fast and slow аlgorithmic pattern or do we need to use cyclic sortpattern? Some of the problems have several solutions based on different patterns. In this series, we discuss the most popular algorithmic patterns that cover more than 90% of the usual problems.

                            It is different from High-School Algorithms 101 Course, as it is not intended to cover things like Karatsuba algorithm (fast multiplication algorithm) or prove different methods of sorting. Instead, Algorithmic Patterns focused on practical skills needed for the solution of common problems. For example, when we set up a Prometheus alert for high request latency we are dealing with Sliding Window Pattern. Or let say, we organize a team event and need to find an available time slot for every participant. At the first glance, it is not obvious that in this case, we are actually solving an algorithmic problem. Actually, during our day we usually solve a bunch of algorithmic problems without realizing that we dealing with algorithms.

                            The knowledge about Algorithmic Patterns helps one to classify a problem and then apply the appropriate method.

                            But probably most importantly learning algorithmic patterns boost general programming skills. It is especially helpful when you are debugging some production code, as it trains you to understand the execution flow.

                            Patterns covered so far:

                            Sliding Window I

                            Sliding Window II

                            Merge Intervals

                            Dutch National Flag

                            Matrix Spiral

                            Iterative Postorder Traversal

                            Bit Manipulation

                            Stay tuned :)

                            <Promo> If you interested to work as a backend engineer, there is an open position in my squad. Prior knowledge of Golang is not required. I am NOT an HR and DO NOT represent the company in any capacity. However, I can share my personal experience as a backend engineer working in the company. </Promo>

                            Read more
                          • Algorithms in Go: Iterative Postorder Traversal

                            • Tutorial

                            In this article, we discuss the postorder traversal of a binary tree. What does postorder traversal mean? It means that at first, we process the left subtree of the node, then the right subtree of the node, and only after that we process the node itself.

                            Why would we need to do it in this order? This approach solves an entire class of algorithmic problems related to the binary trees. For example, to find the longest path between two nodes we need to traverse the tree in a postorder manner. In general, postorder traversal is needed when we cannot process the node without processing its children first. In this manner, for example, we can calculate the height of the tree. To know the height of a node, we need to calculate the height of its children and increment it by one.

                            Let's start with a recursive approach. We need to process the left child, then the right child and finally we can process the node itself. For simplicity, let's just save the values into slice out.

                            Read more