<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Igor T</title>
    <description>The latest articles on DEV Community by Igor T (@exceedteam).</description>
    <link>https://dev.to/exceedteam</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F478874%2F97ef6f5f-67d5-4ce6-9599-fea3549a61ab.png</url>
      <title>DEV Community: Igor T</title>
      <link>https://dev.to/exceedteam</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/exceedteam"/>
    <language>en</language>
    <item>
      <title>python vs php</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Wed, 17 Mar 2021 20:44:21 +0000</pubDate>
      <link>https://dev.to/exceedteam/python-vs-php-5b14</link>
      <guid>https://dev.to/exceedteam/python-vs-php-5b14</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/http%3A%2F%2F95.182.121.107%3A9900%2Fup%2F1462%2F4.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/http%3A%2F%2F95.182.121.107%3A9900%2Fup%2F1462%2F4.webp" alt="python vs php"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There is no bad programming language. Each one is created for a specific purpose. So the choice between Python and PHP is what your goal from development is. To see the difference, you need to learn what you can create in Python and PHP.&lt;/p&gt;
&lt;h3&gt;Using PHP&lt;/h3&gt;

&lt;p&gt;PHP is a general-purpose scripting language that is heavily used for web application development. Currently supported by the vast majority of hosting providers.&lt;/p&gt;

&lt;p&gt;How to use PHP:&lt;/p&gt;
&lt;ul&gt;

&lt;li&gt;Templates for dynamic sites&lt;/li&gt;

&lt;li&gt;The main goal of PHP is to write scripts running on the server side &lt;/li&gt;

&lt;li&gt;Websites&lt;/li&gt;

&lt;li&gt;Online communities&lt;/li&gt;

&lt;li&gt;Easy handling of images&lt;/li&gt;

&lt;li&gt;E-commerce Applications&lt;/li&gt;

&lt;li&gt;Content, information, and resource management systems&lt;/li&gt;

&lt;li&gt;Database&lt;/li&gt;

&lt;li&gt;Mobile Apps&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;And much more. PHP can integrate with all existing operating systems. Even users who are just beginning to get acquainted with the world of website development can make web pages easy to use and easy to manage.&lt;/p&gt;
&lt;h3&gt;Using Python&lt;/h3&gt;

&lt;p&gt;Python is a high-level programming language. Python is easy to use because of its syntax and simple code. There are a huge number of libraries and frameworks based on Python. It is used when you need a unique solution and easy scaling of the project.&lt;/p&gt;

&lt;p&gt;How to use Python:&lt;/p&gt;
&lt;ul&gt;

&lt;li&gt;Artificial Intelligence (AI)&lt;/li&gt;

&lt;li&gt;Database&lt;/li&gt;

&lt;li&gt;Graphical user interface&lt;/li&gt;

&lt;li&gt;Robotics&lt;/li&gt;

&lt;li&gt;Machine Learning&lt;/li&gt;

&lt;li&gt;Face Recognition&lt;/li&gt;

&lt;li&gt;Enterprise Applications&lt;/li&gt;

&lt;li&gt;Websites&lt;/li&gt;

&lt;li&gt;Games&lt;/li&gt;

&lt;li&gt;Mobile Apps&lt;/li&gt;

&lt;li&gt;System programming&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;And much more. Python is often used by beginners or junior developers who are just learning about data science. Python has large libraries, including machine learning.&lt;/p&gt;
&lt;h3&gt;Conclusion&lt;/h3&gt;

&lt;p&gt;&lt;b&gt;Each of the languages is good at its job.&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;

&lt;li&gt;Python is used for machine learning. &lt;/li&gt;

&lt;li&gt;PHP is used for server-side scripting and web development.&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Therefore, your choice should be based solely on the purpose of the project that you have to develop.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://exceed-team.com/tech/python-vs-php" rel="noopener noreferrer"&gt;Python vs PHP | Exceed Team Blog&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Uber to employ more than 70,000 drivers in Britain</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Wed, 17 Mar 2021 20:41:38 +0000</pubDate>
      <link>https://dev.to/exceedteam/uber-to-employ-more-than-70-000-drivers-in-britain-5caf</link>
      <guid>https://dev.to/exceedteam/uber-to-employ-more-than-70-000-drivers-in-britain-5caf</guid>
      <description>&lt;p&gt;Uber will officially employ more than 70,000 British drivers. This decision was taken by the company after the UK Supreme Court ruled that drivers should not be considered self-employed. This was reported by The Verge.&lt;/p&gt;
&lt;h2&gt;What happened&lt;/h2&gt;

&lt;p&gt;The trial in the Uber case lasted since 2016. Then two drivers of the service said that their actions are too controlled by Uber, although the company is not an official employer. More than two dozen people soon joined the class action. After a series of appeals, Uber lost the trial in February 2021. The company was required to officially employ more than 70,000 people.&lt;/p&gt;


Thus, British drivers will be given the status of an employee with benefits and paid leave. In addition, they will also be registered in the pension program and will receive at least the minimum wage in the country (8.72 pounds per hour for persons aged 25 and over). The calculation will be carried out without taking into account the time spent waiting for the order."The Supreme Court's decision has provided us with a clearer plan for the way forward so that we can develop a model that provides drivers with guarantees as employees, while allowing them to work on a flexible schedule, as has been the case with Uber since its introduction in the UK in 2012," commented Uber Chief executive Dara Khosrowshahi.&lt;br&gt;&lt;br&gt;&lt;a href="https://exceed-team.com/tech/uber-to-employ-more-than-70,000-drivers-in-britain"&gt;Uber to employ more than 70,000 drivers in Britain | Exceed Team Blog&lt;/a&gt;

</description>
    </item>
    <item>
      <title>Why is Python so popular despite being so slow?</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Fri, 05 Mar 2021 19:45:15 +0000</pubDate>
      <link>https://dev.to/exceedteam/why-is-python-so-popular-despite-being-so-slow-551f</link>
      <guid>https://dev.to/exceedteam/why-is-python-so-popular-despite-being-so-slow-551f</guid>
      <description>&lt;p&gt;Why is Python so popular despite being so slow?&lt;br&gt;
Speed is only important when you’re writing something that’s very computation-intensive or will be run many many times. For one-off jobs, or other jobs where speed of execution isn’t really important, speed of development becomes much more important.&lt;/p&gt;

&lt;p&gt;Why is python so popular despite being so slow&lt;br&gt;
Python is a more semantically powerful, high-level language than faster languages, which makes it much quicker and less painful to develop in. It’s for the same reasons that it’s so semantically powerful that it’s so slow: it must be interpreted because the language is too dynamic to be statically compiled. There is a trade-off among programming languages between speed of execution and convenience of development, and for many projects the former is more important while for many the latter is more important. Python probably won out over the other high-level/scripting languages because it also happens to be a very elegant.&lt;/p&gt;

&lt;p&gt;Also, Python has many many libraries available for it, many of which are written in C, which means you can do many things that are very CPU-intensive using Python at the helm. (Of course, the extensive base of libraries available is another reason why Python is such a useful language to code in, but the fact that Python is an elegant language probably explains why it gained the momentum that results in so many libraries being written for it in the first place.)&lt;br&gt;
There is also PyPy, which speeds up Python execution by several hundred percent by just-in-time compiling it.&lt;br&gt;
I guess it’s just cheaper to throw more servers at it than it is to code in and maintain, say, C or C++. Or maybe it’s that at typical server speeds internet bandwidth, hard drive access, etc. becomes a bottleneck before actual code execution does. Just speculation, though, I don’t know much about it.&lt;/p&gt;

&lt;p&gt;Being fast really matters. As somebody said in her talk, "Users really respond to speed."&lt;/p&gt;

&lt;p&gt;A major problem for the future is datasets keep getting bigger and at a rate much faster than memory bandwidth and latency improves. I was speaking to a hedge fund tech guy at the D language meetup last night about this. His datasets are maybe 10x bigger than 10 years ago, and memory is maybe only 2x as fast. These relative trends show no sign of slowing - so Moore's Law isn't going to bail you out here.. He found that at data sizes for logs of 30 gig Python chokes. He also said that you can prise numpy from his cold dead hands as its very useful for quick prototyping. But, contra Guido, no Python isn't fast enough for many serious people, and this problem will only get worse. It has horrible cache locality, and when the CPU has to wait for memory access due to the data not being in the cache you may have to wait 500 cycles&lt;/p&gt;

&lt;p&gt;Original: &lt;a href="https://exceed-team.com/tech/why-is-python-so-popular-despite-being-so-slow"&gt;Why is Python so popular despite being so slow?&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>A database of 21 million users has been published in darknet</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Mon, 01 Mar 2021 20:06:50 +0000</pubDate>
      <link>https://dev.to/exceedteam/a-database-of-21-million-users-has-been-published-in-darknet-2lgb</link>
      <guid>https://dev.to/exceedteam/a-database-of-21-million-users-has-been-published-in-darknet-2lgb</guid>
      <description>&lt;p&gt;A database of 21 million users of free VPN apps for Android has been published on shady forums. It includes email addresses, passwords and logins, as well as information about mobile devices and payments.&lt;/p&gt;

&lt;p&gt;The leak was discovered by CyberNews experts. The database contains customer data for applications such as GeckoVPN, SuperVPN, and ChatVPN. The base is dated February 24. It contains user data from Russia and the Middle East.&lt;/p&gt;

&lt;p&gt;SuperVPN is considered one of the most popular VPNs for Android with over 100 million downloads on Google Play. GeckoVPN has 10 million downloads and ChatVPN has 50,000.&lt;/p&gt;

&lt;p&gt;Previously, the data of SuperVPN users has already been made public as part of a large-scale leak. Then 1.2 TB of data from several VPN providers appeared on the network, which included passwords, personal information and a list of websites visited by users. Security researchers found several copies of Internet activity logs on their shared server, although ISPs officially promised not to store the information.&lt;/p&gt;

&lt;p&gt;The seller of the database claims that he was able to penetrate the storage due to the fact that the services did not change passwords on their servers for a long time.&lt;/p&gt;

&lt;p&gt;Fraudsters can now use data from such a database for phishing and man-in-the-middle attacks.&lt;/p&gt;

&lt;p&gt;Experts believe that the new leak occurred due to "obvious negligence in handling confidential information", since "the owners of the services simply did not change the default passwords on their database servers."&lt;/p&gt;


Some experts have suggested that free VPNs sell customer data to advertisers to make money. According to some of them, individual applications provide information about clients to intelligence agencies.&lt;br&gt;&lt;br&gt;&lt;a href="https://exceed-team.com/tech/darknet-database-published"&gt;The darknet sells a database of 21 million users of popular VPN services | Exceed Team Blog&lt;/a&gt;

</description>
    </item>
    <item>
      <title>Google Photos will begin to compress high-quality photos with distortion</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Mon, 01 Mar 2021 19:39:00 +0000</pubDate>
      <link>https://dev.to/exceedteam/google-photos-will-begin-to-compress-high-quality-photos-with-distortion-1lp1</link>
      <guid>https://dev.to/exceedteam/google-photos-will-begin-to-compress-high-quality-photos-with-distortion-1lp1</guid>
      <description>&lt;p&gt;The Google Photos team has launched an email newsletter about new paid editing features for Google One customers. In addition, free users have been warned that uploading photos in their original quality will result in distortion. Thus, users will have to buy additional storage space in order to save the photo in the desired form.&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kS4movqV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/http://95.182.121.107:9900/up/1434/4.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kS4movqV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/http://95.182.121.107:9900/up/1434/4.webp" alt="google photos will begin to compress highquality photos with distortion"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When the service was launched in 2015, its creator, Anil Sabharwal, promised that uploading high-quality photos would provide “nearly identical visual quality” to the original images.&lt;/p&gt;

&lt;p&gt;However, Google is now striving to ensure that users pay extra for it. The company demonstrated what the difference would be between original image quality and high quality.&lt;/p&gt;

&lt;p&gt;High quality image specifications are limited to 16 megapixels for photos or 1080p for videos. They can be stored on the service for free until June 2021. In this case, the images of the original quality are loaded with any resolution that the user's camera provides, that is, they can be larger files. Storing these files will require purchasing a Google One plan after the free 15GB of storage runs out.&lt;/p&gt;

&lt;p&gt;Most users probably won't notice the difference between high and original image quality. However, this can be a problem for those who are engaged in professional photography or video shooting.&lt;/p&gt;

&lt;p&gt;All new photos and videos uploaded in high quality will take up storage space from June 1st. This applies to both free and purchased additional space.&lt;/p&gt;


Last fall, Google also offered Drive users with unlimited G Suite storage for $ 12 a month to upgrade to Workspace for a minimum of $ 20. The former option will be retained only for companies with four or more employees.&lt;br&gt;&lt;br&gt;&lt;a href="https://exceed-team.com/tech/google-photos-quality"&gt;Google Photos will begin to compress high-quality photos with distortion | Exceed Team Blog&lt;/a&gt;

</description>
      <category>googlecloud</category>
      <category>images</category>
      <category>compress</category>
      <category>photos</category>
    </item>
    <item>
      <title>TOP-4 interesting grocery app features. AI everywhere :)</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Tue, 17 Nov 2020 17:36:15 +0000</pubDate>
      <link>https://dev.to/exceedteam/top-4-interesting-features-of-my-only-grocery-app-ai-everywhere-3601</link>
      <guid>https://dev.to/exceedteam/top-4-interesting-features-of-my-only-grocery-app-ai-everywhere-3601</guid>
      <description>&lt;p&gt;Hey guys. &lt;/p&gt;

&lt;p&gt;I just finished my current grocery app delivery project. &lt;br&gt;
Except obvious and boring features like responsive templates and Google map integrations I've done 4 interesting features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI for product recommendations&lt;/li&gt;
&lt;li&gt;Rich push notifications. That increase CTR on 30%&lt;/li&gt;
&lt;li&gt;Admin KPI funnels&lt;/li&gt;
&lt;li&gt;Synchronisation with accounting systems (auto import / auto push)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;More detailed list of features is in my article: &lt;a href="https://exceed-team.com/grocery-delivery-app-features"&gt;Top-16 features of grocery app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;P.s.: Which other interesting features I can suggest to my client?&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Tips I've learned over 10 years for maintainability of my code</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Thu, 12 Nov 2020 18:52:41 +0000</pubDate>
      <link>https://dev.to/exceedteam/tips-for-maintainable-code-3ike</link>
      <guid>https://dev.to/exceedteam/tips-for-maintainable-code-3ike</guid>
      <description>&lt;p&gt;I've been writing code for over 10 years now, and although I've been doing more management lately, at my peak I was able to write 500+ lines of well-performing code a day. Here are the principles that helped me with this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;b&gt;Don't over-generalize&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Don't optimize your code in advance&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Name and group everything that happens correctly&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Don't mix algorithms and other technologically complex pieces of code with business logic&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Don't use any advanced features of any language&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;It is worth throwing all OOP out of your head&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Use as many asserts, logs and other methods to catch unplanned system state as early as possible&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Every extra line of code is evil&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;

Every extra line of code is evil:) Wherever possible, you should not use someone else's code that you have not read and understood&lt;br&gt;&lt;br&gt;

&lt;p&gt;Here I placed just names of my mistakes, but if you are interested here the &lt;a href="https://exceed-team.com/tech/how-to-write-maintainable-code"&gt;full version with each point explanations&lt;/a&gt;&lt;/p&gt;

</description>
      <category>hire</category>
      <category>senior</category>
      <category>go</category>
      <category>developers</category>
    </item>
    <item>
      <title>b2b ideas and trends 2021</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Sat, 07 Nov 2020 15:44:31 +0000</pubDate>
      <link>https://dev.to/exceedteam/b2b-ideas-and-trends-2021-2goh</link>
      <guid>https://dev.to/exceedteam/b2b-ideas-and-trends-2021-2goh</guid>
      <description>&lt;p&gt;Recently I wrote about one curious pattern, I decided to generalize and find more interesting changes in b2b sales this year and what will grow in the next.&lt;/p&gt;

&lt;p&gt;The basis of the method is to look at those services for b2b sales that have become popular or have attracted investments. I took tweekly reviews as a basis (there you can read more about each one)&lt;/p&gt;

&lt;p&gt;Here's what's new clearly caught my eye:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Superpersonalization. New services allow you to track VIP clients on the site and call them at the time of a certain click, moreover, there are ways of advertising not just to site visitors, but to a specific person. For example, when you need to get your commercial offer not just a general, but a specific Ivan Petrovich. An example service is Qualified.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What is popular with teens and B2C will eventually penetrate B2B. Stories on LinkedIn, Streams instead of webinars, TikTok and WhatsApp for business. I already wrote about this recently.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Zoom sales and calendars. Services that help customers meet and sell virtually and organize remote communications. Clockwise, for example.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Lots of new lead generation services for LinkedIn, Instagram, etc.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/http%3A%2F%2F95.182.121.107%3A9900%2Fup%2F1189%2F4.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/http%3A%2F%2F95.182.121.107%3A9900%2Fup%2F1189%2F4.webp" alt="b2b ideas and trends 2021"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;ol&gt;

&lt;li&gt;&lt;p&gt;Automation and simplification. No-code tools for B2B. For example, Unqork, Userguiding.&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Increased requirements for the security of companies' data. Remote control requires more careful tracking of passwords and credentials, you need to be able to defend against cyber attacks. Sample project - Pcysys.&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Training is built into the sales process. Salesperson training systems are built right into CRM. For example GO1.&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Prompter instructors and prompter translators in your ear. You put on the earpiece and everything tells you there. During negotiations and sales, you have a mentor who tells you how to better behave in a given situation or simply helps to negotiate in an unfamiliar language. For example, Librestream, Kudo, Beekeeper.&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Fast video recording and sharing. Just like text and even simpler. For visual sales and product demonstrations. For example, Loom.&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Localization of products for new countries. Hot new markets are India and Indonesia. For example, Localised.&lt;/p&gt;&lt;/li&gt;

&lt;/ol&gt;
&lt;br&gt;&lt;br&gt;&lt;a href="https://exceed-team.com/tech/b2b-ideas-andt-rends-2021" rel="noopener noreferrer"&gt;b2b ideas and trends 2021 | Exceed Team Blog&lt;/a&gt;

</description>
      <category>b2b</category>
      <category>ideas</category>
      <category>trends</category>
      <category>2021</category>
    </item>
    <item>
      <title>📢 Multithreading vs asynchronous programming</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Sat, 07 Nov 2020 12:02:30 +0000</pubDate>
      <link>https://dev.to/exceedteam/multithreading-vs-asynchronous-programming-5bl5</link>
      <guid>https://dev.to/exceedteam/multithreading-vs-asynchronous-programming-5bl5</guid>
      <description>&lt;p&gt;There are several different concepts related to the field of parallel computing.

&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Concurrency
&lt;/li&gt;
&lt;li&gt;Parallel execution
&lt;/li&gt;
&lt;li&gt;Multithreading
&lt;/li&gt;
&lt;li&gt;Asynchronous execution
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each of these terms is strictly defined and has a clear meaning.&lt;/p&gt;

&lt;h2&gt;Concurrency&lt;/h2&gt;

&lt;p&gt;Concurrency (&lt;em&gt;) is the most general term that says that more than one task is running at the same time. For example, you can watch TV and comment on photos on Facebook at the same time. Windows, even the 95th could (&lt;/em&gt;*) simultaneously play music and show pictures.&lt;/p&gt;

&lt;p&gt;Concurrent execution is the most general term, which does not say how this concurrency will be obtained: by suspending some computational elements and switching them to another task, by truly concurrent execution, by delegating work to other devices, or otherwise. It does not matter.&lt;/p&gt;

&lt;p&gt;Competitive performance means that more than one task will be solved within a certain period of time.&lt;/p&gt;

&lt;h2&gt;Parallel execution&lt;/h2&gt;

&lt;p&gt;Parallel computing means having more than one computing device (for example, a processor) that will simultaneously perform several tasks.&lt;/p&gt;

&lt;p&gt;Concurrent execution is a strict subset of concurrent execution. This means that parallel programming is impossible on a computer with one processor;)&lt;/p&gt;

&lt;h2&gt;Multithreading&lt;/h2&gt;

&lt;p&gt;Multithreading is one way to implement concurrent execution by separating out the worker thread abstraction.&lt;/p&gt;

&lt;p&gt;Threads abstract low-level details from the user and allow more than one work to be done in parallel. The operating system, runtime, or library hides the details of whether multithreading will be concurrent (when there are more threads than physical processors) or parallel (when the number of threads is less than or equal to the number of processors and multiple tasks are physically executing simultaneously).&lt;/p&gt;

&lt;h2&gt;Asynchronous execution&lt;/h2&gt;

&lt;p&gt;Asynchrony means that an operation can be performed by someone on the side: a remote Web site, server, or other device outside of the current computing device.&lt;/p&gt;

&lt;p&gt;The main property of such operations is that the beginning of such an operation requires much less time than the main work. This allows many asynchronous operations to be performed simultaneously, even on a device with a small number of computing devices.&lt;/p&gt;

&lt;h2&gt;CPU-bound and IO-Bound operations&lt;/h2&gt;

&lt;p&gt;Another important point from the developer's point of view is the difference between CPU-bound and IO-bound operations. CPU-Bound operations load the computing power of the current device, and IO-Bound allows you to perform a task outside the current piece of hardware.&lt;/p&gt;

&lt;p&gt;The difference is important because the number of simultaneous operations depends on which category they belong to. It is quite normal to run hundreds of IO-Bound operations in parallel, and hope that there are enough resources to process all the results. To run in parallel too many CPU-bound operations (more than the number of computing devices) is pointless.&lt;/p&gt;

&lt;p&gt;Returning to the original question: it makes no sense to execute the Calc method in 1000 threads if it is CPU-Intensive (loads the central processor), since this will lead to a drop in the overall efficiency of calculations. The OS will have to switch several available cores to serve hundreds of threads. And this process is not cheap.&lt;/p&gt;


&lt;p&gt;The simplest and most effective way to solve a CPU-Intensive task is to use the Fork-Join idiom: a task (for example, input data) needs to be split into a certain number of subtasks that can be performed in parallel. Each subtask should be independent and not access shared variables / memory. Then, you need to collect intermediate results and combine them&lt;/p&gt;
&lt;br&gt;&lt;br&gt;&lt;a href="https://exceed-team.com/tech/multithreading-vs-asynchronous-programming"&gt;Multithreading vs asynchronous programming | Exceed Team Blog&lt;/a&gt;

</description>
      <category>multithreading</category>
      <category>asynchronous</category>
      <category>programming</category>
    </item>
    <item>
      <title>Why do I always feel like I’m too late for all the startup trends? </title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Sat, 07 Nov 2020 07:20:29 +0000</pubDate>
      <link>https://dev.to/exceedteam/why-do-i-always-feel-like-i-m-too-late-for-all-the-startup-trends-of</link>
      <guid>https://dev.to/exceedteam/why-do-i-always-feel-like-i-m-too-late-for-all-the-startup-trends-of</guid>
      <description>&lt;p&gt;How can I be at the front of the trends, executing them?t&lt;/p&gt;

</description>
    </item>
    <item>
      <title>📢 Express subdomain routing</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Sat, 07 Nov 2020 07:17:45 +0000</pubDate>
      <link>https://dev.to/exceedteam/express-subdomain-routing-1j9c</link>
      <guid>https://dev.to/exceedteam/express-subdomain-routing-1j9c</guid>
      <description>&lt;p&gt;One day I ran into a problem of how to setup and test express-subdomain lib locally. And after 1 hour of research I resolved my problem :D Here is my solution:


Firstly need to add a couple lines to your /etc/hosts file:&lt;br&gt;

&lt;/p&gt;
&lt;pre&gt;127.0.0.1 example.myapp.dev
127.0.0.1 example.dev&lt;/pre&gt;


And then I created live node js script&lt;br&gt;

&lt;pre&gt;//connect express
var express = require('express');
var subdomain = require('express-subdomain');
var app = express();

app.use(express.json());

//set sub routing
app.sub_test = express.Router();
app.use(subdomain('sub_test', app.sub_test));

//top level routing
app.get('/', (req, res) =&amp;gt; {
  res.send('Index page')
});

app.get('/index2', (req, res) =&amp;gt; {
  res.send('Second index page')
});

//subdomain routing
app.sub_test.get('/', (req, res) =&amp;gt; {
  res.send('Subdomain index')
});

app.sub_banana.get('/index2', (req, res) =&amp;gt; {
  res.send('Subdomain index2')
});

//start server
var http = require('http');

var port = 3000
app.set('port', port);

var server = http.createServer(app);

server.listen(port);&lt;/pre&gt;



&lt;br&gt;&lt;br&gt;&lt;a href="https://exceed-team.com/tech/express-subdomain"&gt;Express subdomain routing | Exceed Team Blog&lt;/a&gt;

</description>
    </item>
    <item>
      <title>Developing EHR system</title>
      <dc:creator>Igor T</dc:creator>
      <pubDate>Sat, 07 Nov 2020 07:10:02 +0000</pubDate>
      <link>https://dev.to/exceedteam/developing-ehr-system-p3c</link>
      <guid>https://dev.to/exceedteam/developing-ehr-system-p3c</guid>
      <description>

</description>
      <category>developing</category>
      <category>ehr</category>
      <category>systems</category>
    </item>
  </channel>
</rss>
