Pull to refresh

Development

Show first
Rating limit
Level of difficulty

How can a manual tester understand an automation tester, and vice versa?

Level of difficultyEasy
Reading time3 min
Views981

When we go abroad for vacation or meet a foreigner on the street who doesn’t speak Russian but is trying to ask, “Where is the restroom? How do I get to…”, we wonder how to explain things to them in Russian in a way they would understand.

I asked myself a similar question when trying to explain something to a colleague using SQL while they were working with Java. The main goal of my work was to create a quality test model. Without it, there would be no proper regression testing later on.

I started by building a framework filling it with test cases. We held a meeting where we discussed priority of positive and negative test cases briefly. When developing the test scenarios, I used the incremental model, but as practice showed, this approach also required an iterative method. For example, it is like having the outline of the Mona Lisa first, then adding colors, painting the background, and so on.

It’s better to maintain the checklist in Excel format to add columns, write notes, and more. And let’s not forget that, as we take on the role of Leonardo da Vinci, we use different colors and get creative.

I am a manager by profession specializating in Production Management. My motivator is the Theory of Constraints (TOC) methodology, which focuses on identifying and managing the key constraint of a system to determine the efficiency of the entire system as a whole:

Read more

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

Level of difficultyMedium
Reading time3 min
Views614

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

PostgreSQL 18: Part 1 or CommitFest 2024-07

Level of difficultyMedium
Reading time10 min
Views917
Read more →

How to add a card to Apple Wallet in React Native?

Reading time4 min
Views1.3K

Mobile developers can use Apple Wallet and Google Wallet integrations for different types of apps.

Once we already wrote our own library for Apple Wallet in React Native because we couldn't find anything ready to use. But now that Google Wallet is fully released, it's time to update it.

Now, this library provides integration with both Apple Wallet on iOS and Google Wallet on Android. It allows you to add, remove, and check for existing passes on iOS, and add passes to Google Wallet on Android.

Read more

«Where, where have you gone», or searching for missing stations on public transport routes in OpenStreetMap

Level of difficultyMedium
Reading time6 min
Views1K

OpenStreetMap (OSM) is a global project formed around a geographic information database which is being filled by all comers — both enthusiasts and interested companies. Anybody can contribute, but the openness has its downside: incorrect edits often get into the database. Hence plenty of validators of OSM data have been written which allow to maintain the data quality at an acceptable level.

Since 2016 there exists an open source subway preprocessor that validates (generates error reports) rapid transit routes in OSM for completeness and logical/topological errors, and converts them into formats that are suitable for routing and rendering, e.g. GTFS. Besides OSM data it takes a list of public transport (PT) networks which contains the checking information about the number of lines, stations etc. per a PT network. The preprocessor has successfully proven itself in the preparation of PT data for applications such as Maps.me and Organic Maps.

In this article, I would like to share an approach to detecting one of the types of errors that occur quite often in OSM data and automatic detection of which is somewhat challenging. It's an accidental loss of a station from a route. The source code of the validator and the described algorithm are open source. But first, let's define the concepts used to represent PT data in OpenStreetMap.

Read more

Regulation of computing power, joint insurance of AI products, and protection of hybrid people

Reading time7 min
Views725

Issues of cooperation in the field of regulation of computing power, joint insurance of AI products, and determining the social status and protection of persons with a hybrid nervous system (hybrid people) 

Dear Colleagues and Friends,

In furtherance of the discussion on the topic of "Key technology policy issues will be grappling with in 2025", let me outline some mullings at the intersection of the theory and practice of computer science, law, and neuroethics.

«Our society and thus each individual has the possibility to (help) decide how the world, in which we want to live with artificial intelligence in the future, should look. Philosophy, law, and technology play a central role in the discourse that has to be conducted for this purpose» (from Fraunhofer IAIS’s report «Trustworty use of AI»).

 Essential idea of that proposals - drawing from the deep technical expertise of the computing community, to provide to policy leaders and stakeholders nonpartisan theses on policy gaps in the field of neuroethics, development and implementation of ML/AI tools. It is preferable that this regulation be a harmonious symbiosis of legal norms both at the state level and at the level of socially responsible professional communities.

The approach mentioned in paragraph 6.2 of The CEN-CENELEC Focus Group Report: Road Map on Artificial Intelligence (AI) and, in fact, focused on autonomous self-regulation of AI tools (systems) seems inappropriate to current risks and treats: “An alternative approach is that the system itself ensures that modifications of its functionality due to self-learning have no negative impact on assessment topics like safety or fairness”.  Further, in the same place, the potential ineffectiveness of the certification system for AI tools is actually recognized: “For artificial intelligence systems that learn as they are used, the problem is that the behavior of the system changes continuously and will require a new conformity assessment each time.”

Read more

Advanced CAPTCHA Bypass Techniques for SEO Specialists with Code Examples

Level of difficultyEasy
Reading time11 min
Views1.2K

Every SEO professional has encountered CAPTCHA. If not, they are either not professionals, misunderstand the term SEO (possibly confusing it with SMM or CEO), or are very new to this challenging field.

One could endlessly deny and argue that CAPTCHA is overrated and does not deserve significant resources. But these arguments end the moment one needs data from a search engine result page, like Yandex, without knowledge of XML requests… Or, say, a client wants to scrape the entire Amazon (just because they do) and offers good pay...

Read more

The Yes Conditional/Positive Statement

Level of difficultyMedium
Reading time4 min
Views626

So let’s talk about the word yes.  Another way to say it is that, we need to give some positive statements to make a sale. 

I said, in the last article that Russians and Eastern European people are much more reserved with giving the answer of yes. So in this culture, it is normal to wait to have more facts about what the work will be for giving a positive answer. But this creates real problem and an absolute block when it comes to selling your IT software and project development to western cultures!

Let’s break this down into understandable pieces. 

Read more

GSN vs Account Abstraction: Blockchain Superheroes in Search of Savings

Level of difficultyMedium
Reading time6 min
Views901

In the world of blockchain, where the word "gas" is most often associated not with gas stations, but with fees for transactions in Ethereum, the search for ways to minimize these costs is becoming increasingly relevant. Less heartache for an empty wallet and more time to solve really important issues... for example, what to cook for lunch =)

Similar to the epic Batman vs Superman battle, compare GSN and Account Abstraction. As in any superhero story, each of them has its own unique abilities and disadvantages, which we will look at in detail.

Read more

GSN and dApps: A Novel without gas obstacles

Level of difficultyMedium
Reading time8 min
Views749

Imagine: you've just created an incredible decentralized application, and it's so cool that even your grandmother wanted to try it. But once users are faced with the need to pay a commission, the entire UX (User Experience) rapidly slides down like a ball down a slide. Blockchain promises a bright future in which decentralization, transparency and security are our best friends, and it makes us pay for daily operations. Imagine if you had to pay every time you like on social networks or send a message in a messenger. It's terrible, isn't it? But dApps users face something like this every day.

But now, like a prince on a white horse, GSN (Gas Station Network) appears. With its help, developers can make their applications gas-less, and users will finally be able to forget about commissions like a nightmare.

In this article, we will look at what GSN is, how it works, and how to implement it into your projects to please users.

Read more

Cloud Communications: Understanding UCaaS, CCaaS, and CPaaS

Level of difficultyEasy
Reading time4 min
Views1.4K

In today's world, where businesses increasingly rely on effective communication, cloud technologies offer a wide range of solutions to optimize interactions both within the company and with customers. Three of the most popular options are UCaaS, CCaaS, and CPaaS. While they all fall under the umbrella of cloud communications, their functionality and applications differ significantly. Let's delve into the details.

UCaaS (Unified Communications as a Service)

UCaaS unifies various communication channels, such as voice calls, video conferencing, messaging, and email, into a single platform. This allows employees to easily communicate and collaborate with each other, regardless of their location.

Benefits of UCaaS:

Read more

Effective Monitoring with Firebase Performance for Flutter Apps

Level of difficultyMedium
Reading time7 min
Views1.9K

Firebase Performance offers a free, comprehensive solution for tracking app performance. As part of the Firebase suite, it provides seamless integration with other Firebase services like Crashlytics, making it easier to manage all performance and crash data in one place. This not only simplifies access but also streamlines team collaboration without the need to manage multiple platforms.

Read more

XML parsing into plain Map in Golang

Level of difficultyEasy
Reading time4 min
Views3K

While in 2024 using XML looks a bit outdated, it still happens. And sometimes it happens we are to deal with XML having "free-structure", i.e. it couldn't be parsed into tree of user-defined structs. For JSON there still is a way to parse it with a single call into map[string]any and work with it using careful type assertions. Regretfully, there is no similar feature for XML (in Golang). Here I'll draft suitable function and demonstrate it - both for others and for myself if I ever need this again (recreating it from scratch may be somewhat painful).

Let's see implementation

How to bypass CAPTCHA: Breaking Down a Complex Process in the Simplest Terms

Level of difficultyEasy
Reading time7 min
Views3.1K

CAPTCHA is not just a single word that can be defined; it's an acronym consisting of nine words (and two prepositions): Completely Automated Public Turing Test To Tell Computers and Humans Apart. This mouthful was shortened to the concise CAPTCHA to avoid creating yet another hard-to-pronounce term. Translated into Russian, this abbreviation sounds like "Полностью автоматизированный публичный тест Тьюринга для различения компьютеров и людей" (Fully Automated Public Turing Test to Differentiate Computers and Humans).

Read more

Modern X-ray detectors

Level of difficultyMedium
Reading time11 min
Views2.8K

Wilhelm Röntgen discovered X-ray November 8th 1895, when he did experiments with cathode rays in a vacuum tube. To capture and save images of the shadows from the X-rays, he used ordinary photoplates. Fortunately, sensitive to visible light silver based photoemulsions turned out to be sensitive to the X-ray too. These photoplates became the first X-ray detectors.

More than 100 years of scientific progress led to the creation of a number of various detectors for recording X-ray images. Developments of the microelectronics and semiconductor manufacturing technologies are crucial for development of the modern X-ray detectors. These detectors can transform the energy of the X-ray photon directly to the electrical signal. They allow capturing detailed, digital, high-resolution X-ray images.

Digital images are easy to work with. For example one can merge multiple macro images into an image of the whole object and represent monochrome images in false colors like Simon Procz did with this X-ray image of a flower he did in 2012.

Read more

Replit 101: Learn to Use Replit Agent and Deploy Your First App

Level of difficultyEasy
Reading time4 min
Views3.3K

Did you know that coding tools have evolved so rapidly that they're now shaping the future of programming itself? As technology advances, platforms like Replit are leading the charge, making coding more accessible and collaborative than ever before. In this article, I'll show you what Replit is and how to use it.

Read more

React Native Splash Screen — support for different themes

Reading time5 min
Views1.8K

Hi all! The dev.family team is in touch. In this article, we are sharing a short guide on how to install Splash Screen in a cross-platform app written in React Native with support for multiple themes.

Splash screen is the first screen that users see before loading into the main application. This screen is perhaps the best way to make the name of your app, and in general, its entire name, more memorable.

But this is not the main role of the splash screen. Under it, for example, you can hide receiving data from the API and loading the main application. We do this when we show the loader on the screen when loading the same data. This allows you to improve the UX and immediately demonstrate the finished application to the user. And as a result, remove the extra loader when opening it for the first time.

In this short guide, we will look at installing splash screens for iOS and Android using the react-native framework using the react-native-splash-screen library.

Read more

Starfive visionfive 2: home cookbook

Reading time10 min
Views1.9K

Recently I have bought starfive visionfive-2 SoC for my own experiments, honestly speaking
I am striving to work with risc-v. After some time I decided to share my experience. Here my bulletpoints:

Small preparation USB-to-Serial connector Write image to microSD/SSD Set boot mode settings

Boot Update bootloader Build kernel Native build Pod build Cross-build on amd64: fast and handy

Chroot to risc-v system from amd64 and install packages

Bonus 1: run qemu with risc-v

Bonus 2: build deb packages for risc-v

Bonus 3: kernel build script

Conclusions

Read more