Pull to refresh

How to become an author

Yandex huge privacy issue or not?

Reading time2 min

Hi to everyone!

I'm new here. Someone told me that Habr is like russian reddit for developers (and maybe not). And I'm here today to share my story and get opinions from you, part of this community.

In August 2024 I visited Moscow, and got Russian starter pack, even if foregneir :-)
Will be useful later because I'm moving here, Русский язык coming soon, извините!

So let's start with getting a new bank account, make a new mobile number and start to register to some essential service platforms like Metro, Gorod, ВВ, Perekrostak and Yandex for delivery and taxis. And in every service I found something strange. A certain "Ivan" (I've changed the name for privacy) is present in all my accounts where I try to register.
That's it! The phone number that my bank gave me was just.... recyled! So I could start to get personal data through all these existing account on this new phone number of mine but the most shocking thing occured today!

Alarm on 9:00, I woke up and I got a message by Yandex:

Read more
Total votes 4: ↑4 and ↓0+5
Comments1

Rabbit Testing: A Multifaceted Approach to Quality Assurance

Level of difficultyMedium
Reading time4 min

In the fast-paced world of software development, ensuring the quality and reliability of applications is crucial. With the ever-increasing complexity of software systems, it becomes essential to adopt a comprehensive and structured approach to testing. One such approach can be encapsulated in the acronym "RABBIT," where each letter stands for a distinct branch of testing. This multifaceted strategy covers various testing methodologies that together create a robust framework for quality assurance. This article explores each branch of RABBIT testing in detail, providing insights into their significance, implementation, and appropriate use cases.

Read more
Total votes 1: ↑0 and ↓1-1
Comments0

The Implicit Reparameterization Trick in Action: Python Library for Gradients Computation

Level of difficultyMedium
Reading time3 min

The explicit reparameterization trick is often used to train various latent variable models due to the ease of calculating gradients of continuous random variables. However, due to its peculiarities, explicit reparameterization trick is not applicable to several important continuous standard distributions, such as mixture, Gamma, Beta and Dirichlet.

An alternative method for calculating reparameterization gradients relies on implicit differentiation of cumulative distribution functions. The implicit reparameterization trick is much more expressive and applicable to a wider class of distributions

This article provides an overview of various reparameterization tricks and announces a new Python library, irt.distributions, for sampling from various distributions using the implicit reparameterization trick.

Read more
Total votes 3: ↑3 and ↓0+3
Comments0

Character Creation Assistance, a hobby ML project

Level of difficultyMedium
Reading time8 min

For one of my projects I was exploring Reddit to understand how players create characters in video games, what is important to them in this process, and what their preferences are. It turns out that communities sharing their creations or seeking help with specific character designs remain active even for games released years ago. This realization sparked the idea for a hobby project that could assist these players in creating the characters they envision.

Read more
Total votes 3: ↑3 and ↓0+7
Comments0

Code Push in Flutter

Level of difficultyEasy
Reading time7 min

Code Push in Flutter

In the fast-paced world of mobile app development, the ability to quickly push updates to users is crucial. Enter Code Push - a game-changing technology that allows developers to update mobile apps instantly without going through the traditional app store review process. This article explores how to implement Code Push in Flutter applications using Shorebird, a powerful tool that brings this capability to the Flutter ecosystem.

Read more
Total votes 2: ↑2 and ↓0+4
Comments0

Machine Learning and Data Science: Academia vs. Industry

Level of difficultyMedium
Reading time8 min

Machine Learning (ML) technologies are becoming increasingly popular and have various applications, ranging from smartphones and computers to large-scale enterprise infrastructure that serves billions of requests per day. Building ML tools, however, remains difficult today because there are no industry-wide standardised approaches to development. Many engineering students studying ML and Data Science must re-learn once they begin their careers. In this article, I've compiled a list of the top five problems that every ML specialist faces only on the job, highlighting the gap between university curriculum and real-world practice. 

Read more
Total votes 17: ↑17 and ↓0+17
Comments0

How to understand when proxies are lying

Level of difficultyEasy
Reading time3 min

How to understand when proxies are lying: verification of physical locations of network proxies using an active geolocation algorithm

People all over the world use commercial proxies to hide their true location or identity. This can be done to solve various tasks, including accessing blocked information or ensuring privacy.

Read more
Total votes 7: ↑7 and ↓0+7
Comments0

Stopwatch implementation on FPGA board

Reading time5 min

In this report we describe our implementation experience of a stopwatch system executing on an FPGA board. We programmed this device in the Quartus Prime II software environment by using Verilog hardware description language. The program is tailored to the Altera MAX 10 FPGA board, as well as uses a set of other peripheral devices for progress visualization purposes.

Read more
Total votes 3: ↑3 and ↓0+4
Comments0

The Rule of Handling Tasks That Never Get Done

Level of difficultyEasy
Reading time3 min

This week, I was reflecting on a recent one-on-one chat with a manager in my division about keeping our backlogs clean and dealing with those tasks that just keep getting pushed back.

I jot down my thoughts and decided to share them with you. It's a common issue, right? Tasks hanging around, always getting postponed. Let's talk about the mess this creates in our backlogs and how to handle it the right way.

Check out my latest article where I dive into the art of backlog hygiene. Trust me, your team will thank you for it!

Read more
Total votes 3: ↑3 and ↓0+3
Comments0

Mastering ChatGPT

Level of difficultyMedium
Reading time7 min

In today's rapidly advancing technological landscape, natural language processing and comprehension have become essential components of everyday life. Leading the charge in this arena is OpenAI's ChatGPT API, renowned for its exceptional ability to understand and interact with human language. Imagine elevating ChatGPT's functionality to new heights, enabling it to carry out specific tasks based on commands given in natural language. This article aims to shed light on the potential of incorporating function calling into the ChatGPT API, thereby enhancing its utility. I will illustrate through practical examples how such extensions can unlock a myriad of opportunities and applications.

Read more
Total votes 5: ↑5 and ↓0+5
Comments0

React Global State Management: A Brief History and a Quick Guide

Level of difficultyEasy
Reading time9 min

If you’re a React developer, you know how important state management is. State is the data that powers your UI, making it interactive and dynamic. But managing state in React can be tricky, especially when you have to share it across multiple components or deal with complex and asynchronous logic.

That’s why over the years, React developers have come up with various solutions for state management, each with its own advantages and disadvantages. In this article, we’ll take a look at some of the most popular ones and how they evolved. We’ll also review some of the current state-management libraries and how to choose the best one for your app.

Read more
Total votes 3: ↑3 and ↓0+3
Comments0

WebSocket Reconnection in Flutter

Level of difficultyMedium
Reading time5 min

Continuous socket connection can be crucial to ensure correct app behavior. Whether it’s delivering real-time chat updates, stock prices, or in-app indicators, a reliable connection is vital.

One of the irritating problems with sockets is a sudden loss of connection. If the true cause is not visibly evident, i.e., unstable internet connection, then the disruption cause is often well hidden. To tackle this issue we can implement an automatic socket reconnection strategy. Let’s see what options we have in the industry-standard socket library for Dart — web_socket_channel.

Read more
Total votes 4: ↑4 and ↓0+4
Comments0

Thoughts and short notes (in go) after reading «Clean Code»

Level of difficultyEasy
Reading time4 min

Clean Go

Hey guys, I recently dove into 'Clean Code' by Robert C. Martin and found some valuable insights. The book is originally in Java, but I decided to reinterpret the principles in Go. Here's my take on the clean code concepts and how they can improve our coding practices.

1. Clean Code

The gist: Clean code is more than just working code; it's code that other developers can easily read, understand, and modify.

Read more
Rating0
Comments0

Trade bot python setup (using Binance API), Vol 1

Level of difficultyMedium
Reading time5 min

Trading robots are conquering the Wall Street! Learn how to create your first automated python trading bot.

We present a fully functioning trading bot pipeline on python using the Binance API. Starting with the general introduction, we provided a comprehensive overview of main API calls and their implementation on python. After this we show a fully functioning python code presenting a basic trading bot with core features using static channel breakout strategy.

Read more
Total votes 1: ↑1 and ↓0+1
Comments0

Architecture Decision Records (ADR): Enhancing Software Development

Level of difficultyEasy
Reading time3 min

Introduction to ADRs

ADRs are critical for documenting architectural decisions in software projects. They provide a historical record of decisions, rationales, and impacts, vital for future teams and stakeholders.

Defining ADRs

An ADR is a document capturing key architectural decisions along with their context and consequences. It helps stakeholders understand why certain choices were made during a project, promoting transparency and clarity.

Read more
Rating0
Comments0

The mystery of Telegram

Level of difficultyEasy
Reading time12 min

This article was originally posted at Product Identity.

What comes to your mind when you hear the word Telegram?

I wouldn’t be surprised if drugs, sex, or crypto are your first associations. Throughout the years, Telegram earned a shady reputation, perhaps not strategically, but for a “good” reason.

I feel like Telegram is a mystery. On the outside, it might be perceived as a platform designed for drug traffickers, crypto scammers, and sexual abusers.

I shared this feeling when I joined the early team of Bancor in 2016, as I also joined its internal group chat, needless to say, on Telegram.

However, the app was quickly removed from my list of stigmas. Instead, I started to appreciate Telegram for its well-crafted product and care for design. From its meticulous attention to small details to have a unique brand — it stands as a dogma of an opinionated product (and a company) in many aspects. In addition, it helped me recognize the benefits of separating my private and professional lives early on.

After using Telegram extensively over the past 7+ years, I feel the urge to write about it, but this time not in the spirit of its typical news headlines.

Read more
Total votes 2: ↑2 and ↓0+2
Comments1

Crafting Enhanced Dropdown Interactions with Svelte: Constructing an Advanced Dropdown Component with Svelte

Level of difficultyMedium
Reading time3 min

In the realm of frontend development, the quest for enhancing user interaction remains a constant pursuit. Developers, inspired by innovation, often seek solutions to refine components for a seamless user experience. Today, we delve into the construction of an advanced dropdown component using Svelte — a framework known for its simplicity and effectiveness.

Read more
Total votes 3: ↑3 and ↓0+3
Comments0
1
23 ...