Pull to refresh

My feed

Type
Rating limit
Level of difficulty
Warning
To set up filters sign in or sign up
Article

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

Level of difficultyMedium
Reading time6 min
Views1.1K

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
Article

Advanced CAPTCHA Bypass Techniques for SEO Specialists with Code Examples

Level of difficultyEasy
Reading time11 min
Views1.4K

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
Article

How AI can ease the work for UX Designers

Level of difficultyEasy
Reading time3 min
Views1.1K

In the last couple years Artificial Intelligence has taken the world by storm, starting to revolutionize the tech industry in many aspects, including UX. AI can help UX designers to automate some routine tasks that take a lot of time, providing more space for creativity and product quality improvement. It’s not likely that AI might replace human designers in the near future, but it can definitely ease the work of designers in some ways. 

Let’s discuss how AI can be applied in UX Design these days:

Read more
Article

The Yes Conditional/Positive Statement

Level of difficultyMedium
Reading time4 min
Views695

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
Post

ls аудио с битрейдом и сортировкой, на баше, используя ffprobe

while read i; do echo "$(ffprobe -i "$i" 2>&1 | egrep -o 'bitrate: [0-9]{1,3} .{4}' | cut -d' ' -f2-3)" "$i"; done < <(find . -type f -printf '%P\n' \( -iname \*.ogg -o -iname \*.mp3 \)) | sort -n -k1,1

Пример того что получаем:

128 kb/s aaa.mp3
128 kb/s bbb.mp3
128 kb/s ccc.mp3
256 kb/s xxx.mp3
256 kb/s yyy.mp3
256 kb/s zzz.mp3

Базировано на https://www.linuxquestions.org/questions/linux-newbie-8/how-to-list-bitrate-of-all-my-mp3's-on-command-line-4175601321/#post5680865

Расширил и опубликовал https://gitlab.com/vitaly-zdanevich/ffprobe-wrapper-lister-for-mp3

Tags:
Total votes 1: ↑1 and ↓0+3
Comments0
Article

GSN vs Account Abstraction: Blockchain Superheroes in Search of Savings

Level of difficultyMedium
Reading time6 min
Views945

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
Article

GSN and dApps: A Novel without gas obstacles

Level of difficultyMedium
Reading time8 min
Views893

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
Article

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
Article

Effective Monitoring with Firebase Performance for Flutter Apps

Level of difficultyMedium
Reading time7 min
Views2.2K

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
Post

Вышел Python 3.13. Что в этом для не знакомых с Python?

Куй железо не отходя от кассы

Иными словами, Вы тут же захотите его попробовать - самое время, это стало (много) приятнее чем когда-либо.

Что делать и кто виноват

Виноват, очевидно, Гугол - запоздал с увольнениями в команде Python. А делать придётся компиляцию из сорцов - даже в AUR сейчас RC1. Как - на примере Arch в форме EndeavourOS.

Python часть системы, но он 12, поэтому 13 нужно держать отдельно. Скачав с python.org и распаковав

./configure --enable-optimizations --with-lto --enable-experimental-jit=yes --prefix=/home/andy/.python
make

Конечно, чего-то да не хватит, но об этом будет чётко сказано, поэтому и например

yay clang
yay llvm
make

Будет чётко сказано чего не получилось, за 12 такого не помню, у меня - без tkinter. Ну и ладненько. Поскольку make test придумали трусы,

make install
~/.python/bin/python3 -m venv Python13Env
cd Python13Env
python

И наслаждаемся новыми фишками - редактируем процедуры и выходим легко, как по мне - самое очевидное. И да, на первом же (дурацком) тесте - на 10% быстрее.

Tags:
Total votes 3: ↑2 and ↓1+3
Comments0
Article

ChatGPT Canvas: Your New Partner in Writing and Coding

Level of difficultyEasy
Reading time2 min
Views2.6K

OpenAI has recently launched a new feature called Canvas for ChatGPT, designed to enhance users' interactions with AI for writing and coding projects. This new interface aims to provide a more collaborative and interactive experience, moving beyond the traditional chat format. In this article, I'll cover the top features of ChatGPT Canvas and show how to use it.

Read more
Article

XML parsing into plain Map in Golang

Level of difficultyEasy
Reading time4 min
Views4K

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
Article

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

Level of difficultyEasy
Reading time7 min
Views4.4K

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
Article

Modern X-ray detectors

Level of difficultyMedium
Reading time11 min
Views3.4K

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
Article

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

Level of difficultyEasy
Reading time4 min
Views4.9K

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