Skip to main content

What is BitTorrent, how does it work and what can it be used for?

· 4 min read

What is BitTorrent?

BitTorrent is a communication protocol that allows downloading and sharing large files over the Internet without relying on the presence of a centralized server to store shared files. The protocol was designed by Bram Cohen in 2001. Today BitTorrent is one of the most popular protocols for transferring large files such as digital video and audio files.

Despite earning a bad reputation as a protocol that is used for piracy, many organizations, businesses and content creators use BitTorrent protocol for completely legitimate purposes that benefit everyone involved without breaking the law. For example, BitTorrent is used by many large and small companies for distributing software, games, videos, music and large data sets across countless users and servers.

7 practical ways ChatGPT and artificial intelligence can help software engineers to become more productive

· 47 min read

Disclaimer: This post was not created using ChatGPT.

Record-breaking start of the new AI

ChatGPT is a new AI-powered chatbot that was launched as a prototype on November 30, 2022. Immediately after its launch the chatbot attracted an incredible number of users due to its ability to provide answers to questions from a wide variety of domains. Time to reach 1 million users In this post we will look into practical applications of the new chatbot for software engineers and talk about AI’s weak points.

Exception handling: Are exceptions in C#, C++ and Java too slow?

· 3 min read

A battle of opinions

There is a disagreement among software engineers about using exceptions. Some engineers are convinced that throwing exceptions is very slow and expensive and exceptions should not be used to indicate an error. Others always use exceptions instead of returning an error.

What do you think is the correct answer? The answer to this question is the most common answer that I hear and give as a software engineer: it depends. It depends on the type of project you are working on and how often exceptions are thrown.

Best practices for multi-column indexes in relational databases

· 3 min read

Best practices for multi-column indexes in relational databases

Multi-column indexes are also known as composite, combined, or concatenated indexes. They are used to improve the speed of data retrieval operations in relational databases. Multi-column indexes are more complex compared to single-column indexes and therefore require extra attention when defining them. Here are the best practices for creating and working with such indexes.

Programming languages used at Google

· 5 min read

Programming languages used at Google

There is an incredible number of programming languages used by software engineers and scientists around the world. The most recent survey of Stack Overflow shows that there are over 35 languages that are used by professional software developers today. The list of notable programming languages available on Wikipedia consists of approximately 700 languages. The online historical encyclopedia of programming languages goes much further and presents almost 9000 languages on its list! This number even exceeds the number of 7,151 spoken languages that are still in use today!

Scrolling through these lists can be entertaining and a bit nostalgic for experienced software professionals while beginners may find this information somewhat intimidating. However, out of all of these languages, only 5 are officially approved and strongly encouraged at Google.

Announcing Price Tracker

· 5 min read

Announcing Price Tracker

Price Tracker is a command-line tool for monitoring prices of products and generating alerts when prices drop.