Pull to refresh

All streams

Show first
Rating limit
Level of difficulty

Stages of product work on the MVP of the AI course generator

Level of difficulty Easy
Reading time 2 min
Views 108
Website development *Product Management *
Sandbox

When developing functional digital products, especially at the preliminary stages (from MVP to alpha versions) many teams use the «technology first» principle. This means a minimum of user convenience, a maximum of engineering competence. When evaluating the potential of a product, further efforts are already in the direction of creating ergonomic visitor paths, design and more. However, here lies the catch - since not two clients or a prospective investor can evaluate the entire user route, touch it with their hands and make sure that the system works, you can lose both clients and partners.

Read more
Rating 0
Comments 0

SEO Tips to Magento 2 Product Pages

Reading time 3 min
Views 99
Search engines *Product Management *Magento *
Sandbox

Avoid duplicate content

Many online merchants face a common challenge with multiple product variations, leading to duplicate content issues. When similar products have slightly different URLs like "?=sortby" or "?p=2", search engines may view them as duplicates, impacting your website's credibility and search rankings. To tackle this:

Read more
Rating 0
Comments 0

Review of mini-book «60 terrible tips for a C++ developer»

Level of difficulty Easy
Reading time 6 min
Views 142
PVS-Studio corporate blog Programming *Perfect code *C++ *C *
Review

I wrote a small e-book about terrible tips for C++ developers. Actually, it describes bad programming practices and explains why it's better to avoid them. However, every chapter of this mini-book starts with a terrible tip — just for fun.


60 terrible tips for a C++ developer


By the way, these tips may seem artificial but believe me, they are based on the real experience. In other words, the described terrible tips occur in developers' lives — that's why it's worth discussing them. First of all, this book will be useful for junior developers. But more skilled C++ developers can also find interesting and useful tips.


Even though it's a mini-book, it clearly does not fit into the Habr format. Too many words. So, I decided to write here the review. Here is the link to find the full version of the mini-book: 60 terrible tips for a C++ developer.


If you still hesitate whether to read it or not, below you will find a list of terrible tips that will be discussed in the mini-book.


View the terrible tips:

Read more →
Total votes 8: ↑6 and ↓2 +4
Comments 0

On Schnorr identification protocol compatibility with instant digital signature mode

Reading time 6 min
Views 100
Information Security *

The article describes the interactive Schnorr identification protocol (hereinafter referred to as the Schnorr protocol) and formulates the problem of compatibility of this protocol with the instant digital signature (IDS) mode. This post shows how to modify the Schnorr protocol to provide such compatibility.

Read more
Rating 0
Comments 0

APRS. AFSK modulator from Flipper Zero

Level of difficulty Medium
Reading time 7 min
Views 2.3K
C *Development of communication systems *
Tutorial

There is such an interesting data transfer protocol - APRS. A lot has already been told about him on the Internet. There will be no in-depth theoretical material here. This article will describe how to create your own "pocket" AFSK modulator. In the following articles there will be instructions for going on the air and for creating a simple demodulator. Which will allow you to accept APRS packages and display information on the display right on the street. Everything will be implemented for Flipper Zero. If you don't have this gadget yet, then don't worry and try everything on the great and terrible Arduino. It is very interesting to transmit information at a distance "with your own hands".

Read more
Total votes 3: ↑3 and ↓0 +3
Comments 2

Spring Data JPA entity enum converter

Reading time 4 min
Views 575
Programming *Java *Perfect code *Designing and refactoring *Concurrent computing *
Case

Faced with situation when had to map STRING VALUE coming from database TO ENUM. The problem happens when value stored in database differs from enum name. And here we need a workaround to make a mapping. I will describe main points on how I was able to realise it.

Entity field converter?
Rating 0
Comments 0

How to make a robot? What is first

Level of difficulty Easy
Reading time 3 min
Views 900
JavaScript *Node.JS *Robotics development *Development for Raspberry Pi *Robotics

I develop robots, and I'm often asked, "How to make a robot?" and "Where do you find information and what resources do you use?"

If you don't know where to start and want to create your own robot, this article is for you. In it, I will try to explain the process and also share the first steps you should take.

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

Supercharge Your React Projects with Custom Hooks

Level of difficulty Medium
Reading time 42 min
Views 2.3K
Website development *JavaScript *ReactJS *TypeScript *Visual programming *
Tutorial

In this article, we dive into the world of custom React hooks and explore the incredible potential they hold for supercharging your work projects. With over 20 carefully crafted hooks at your disposal, I personally utilize these hooks in my own work projects, and now I'm excited to share them with you. From enhancing functionality to streamlining workflows, these custom hooks are designed to empower developers and deliver user-friendly experiences. Join us on this journey as we unleash the power of these 20+ hooks and unlock new levels of productivity and innovation in your React projects.

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

gookit/goutil — released v0.6.10, an extension library of common Go features

Level of difficulty Medium
Reading time 5 min
Views 363
Abnormal programming **nix *Go *
Sandbox

gookit/goutil An extended library of Go's common functionality. Contains: number, string, slice/array, Map, struct, reflection, text, file, error, time and date, test, CLI, command run, system information, formatting, common information acquisition, etc.

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

LeetCode 2612 (Hard). Minimum Reverse Operations. Swift. BFS. O(n+k). O(n)

Level of difficulty Hard
Reading time 3 min
Views 887
Algorithms *Swift *
Case

LeetCode 2612 (Hard). Minimum Reverse Operations.

The algorithm follows a breadth-first search (BFS) approach to determine the minimum number of reverse operations needed to bring the 1 to each position in the array.

To speed up the algorithm, we mark banned positions with -2 instead of using set lookups. This optimization reduces the constant coefficient and improves the speed of the algorithm, but it may still result in a time limit exceeded (TLE) error.

For each visited position, there are potentially O(k) target positions that can be reached through reverse operations. To avoid the multiplicative cost of iterating over all these potential positions, we update the nextNode2s array. This array initially points forward by 2, but we update it dynamically to point beyond all the target positions considered for each visited position. This optimization helps improve the efficiency of the algorithm and avoids unnecessary computations.

Read more
Rating 0
Comments 0

The Role of the Technical Writer in the AI Revolution: Bridging the Gap between Technology and Communication

Level of difficulty Easy
Reading time 6 min
Views 406
Reading room Technical Writing *
Opinion

AI technologies offer unprecedented opportunities for innovation, efficiency, and growth in such industries as advanced machine learning algorithms or intelligent automation systems. However, to harness the power of AI, effective communication becomes paramount.

The growing impact of AI in modern business is undeniable. Organizations leverage AI to automate processes, gain insights from vast amounts of data, personalize customer experiences, and make informed decisions. Yet, the complex nature of AI technology often creates a significant gap between AI capabilities and the understanding of its users.

Here the role of a technical writer becomes crucial. Technical writers act as a bridge between AI technology and its users, ensuring that complex concepts have a clear, concise, and user-friendly manner of speaking. They are the main participants in making AI accessible to a broader audience, facilitating adoption, and maximizing its potential.

Effective communication is essential to reduce the gap between AI technology and its users. While AI systems may be sophisticated and comprehensive, their impact can be weak without proper understanding and utilization. Technical writers contribute to the success of AI implementations by translating complex AI concepts into easily digestible documentation, user manuals, tutorials, and other communication channels.

Furthermore, technical writers understand the importance of tailoring information for different audiences. They communicate with non-technical stakeholders, including executives, decision-makers, and end-users, who may lack extensive technical expertise. Using the AI capabilities, benefits, and potential limitations, technical writers empower these stakeholders to make informed decisions and embrace AI solutions.

Read more
Rating 0
Comments 0

AI for Software Business Analysis

Level of difficulty Easy
Reading time 5 min
Views 1.2K
System Analysis and Design *Product Management *Artificial Intelligence
Review

Generative AI is creating waves in the way we work, significantly revolutionizing the software development process. AI tools are appearing in various phases of software development, such as design, development, and testing. However, there aren't many tools specifically focused on software business analysis tasks.

But with a little creative thinking, we can put "one-size-fits-all" applications like ChatGPT to good use. It can definitely speed up execution of many typical tasks and free up analysts to focus on the more challenging, strategic aspects of the job.

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

ChatGPT to Help You Become a 10x Programmer

Level of difficulty Easy
Reading time 2 min
Views 4.6K
Programming *Big Data *Artificial Intelligence
Tutorial

I believe that every programmer has at least once heard about ChatGPT and its marvelous abilities to process, calculate and create huge amounts of data; if not, go check out this Wikipedia article - https://en.wikipedia.org/wiki/ChatGPT.

Can you imagine that some 50 years ago people could not even believe that there may be something artificial surpassing humans in so many areas? Nowadays, we have this marvel at the distance of a few tabs on a phone screen or a keyboard; however, there is still a sadly large number of people who do not fully—if at all— utilize all the perks of ChatGPT in their lines of work. This is mostly related either to people's reluctance to learn new technologies or the fear of losing coding skills they have previously gained—which is not the case with using ChatGPT properly.

In this article I want to give you some of the most useful uses of ChatGPT for your coding work. Remember, there is nothing shameful in using the AI, since this the development and further implementation of it in our day-to-day life is inevitable, so we should start adapting to it as early as we can to take the full advantage of this "magical" technology. Let's get started.

Read more
Rating 0
Comments 4

Validation WebHook troubleshooting, how low can you go?

Level of difficulty Medium
Reading time 11 min
Views 608
Network technologies *DevOps *Kubernetes *
Case

I'm Alex Movergan, DevOps team lead at Altenar. I focus on automation in general and on improving troubleshooting skills within my team. In this article, I'll share a captivating tale that revolves around Kubernetes, validation webhooks, kubespray, and Calico.

Join me on this DevOps journey as we explore real-world scenarios unraveling the intricacies of troubleshooting in a Kubernetes environment.

Read more
Total votes 4: ↑4 and ↓0 +4
Comments 1

Your own Duolingo without overengineering

Reading time 14 min
Views 747
Python *Programming *Learning languages
Tutorial

Hi, my name is Mikhail Emelyanov, I’m a Python programmer and I would like to show you my pet project — Flywheel, a micro-platform for learning foreign languages, a mixture of Duolingo and Anki, an application that can teach you to properly write in Spanish (or any other language you’re studying). Flywheel’s source code is available on GitHub.


Flywheel


As you may know, generalized knowledge of a foreign language can be broken down into four relatively independent components: reading, writing, listening, and speaking. Unfortunately, training one of these abilities has no direct effect on the other components, so, for example, by developing our reading skills, the effect on our writing skills is quite indirect. Flywheel is a ‘sharpener’ specifically for written Spanish.


If you’ve ever used Duolingo, you should have some idea of the format in which you’ll be studying. The formula is simple: here’s a phrase, translate it into the other language; the app will remember the last time you translated a phrase and how successful you were at it; and depending on the accuracy of your answer, it will determine when you should do the same phrase again. In my opinion, Duolingo and its approach are brilliant. However… There are certain aspects that somewhat spoil the learning experience, and Flywheel was specifically designed to address them.

Read more →
Rating 0
Comments 0

Business Continuity and Operation Resilience on paper vs. for real

Level of difficulty Easy
Reading time 7 min
Views 276
Information Security *Project management *Studying in IT
Opinion
Translation

Hello, my reading friends!

My previous post (rus) on Habr was about how the Business Continuity Management function started, as well as about its relations with other corporate functions. In fact, it was quite theoretical.

This time, I’d like to tell you about some practical vectors of procedures and tools implementation as regards to Business Continuity Management, or BCM, along with Operational Resilience, or OpRes. Plus some real initiatives that can follow the BCM & OpRes implementation in a company and the associated with it investigation of the corporate landscape and procedures.

More about initiatives for integration
Rating 0
Comments 0

Android MapView with clustering and dynamic images in markers

Level of difficulty Medium
Reading time 11 min
Views 468
Development for Android *
Tutorial

In this article, I will cover basic work with MapView (and MapFragment) markers, learn how to implement marker clustering, i.e. group markers located close to each other, and display dynamic icons in the markers, i.e. load by url and display remote images. Ultimately, we will create such map with clusters and dynamic image loading (in background).

Read more
Rating 0
Comments 0