Pull to refresh

All streams

Show first
Rating limit
Level of difficulty

Your own Duolingo without overengineering

Reading time 14 min
Views 79
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 76
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 124
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

LeetCode 956 (Hard). Solution of the day. Tallest Billboard. Swift. DP

Reading time 2 min
Views 738
Algorithms *Swift *
Case

Solution of the day.
LeetCode 956 (Hard). Tallest Billboard.
Swift. DP. O(n).

The code uses dynamic programming to solve the problem. It maintains a dictionary dp, where the keys represent the possible height differences between the two billboards, and the values represent the maximum sum of heights achieved for each height difference.

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

BCM & Operational resilience: yesterday, today, and tomorrow. Where has it come from and what comes next?

Level of difficulty Easy
Reading time 11 min
Views 132
Information Security *Project management *Studying in IT History of IT IT-companies
Opinion
Translation

Recently, The BCI, one of the leading institutes working in the field of organizational resilience and business continuity, issued its regular report BCI Operational Resilience Report 2023 in collaboration with Riskonnect, who work with risk management solutions.

One of the questions they asked the respondents was if there was a difference between organizational resilience and operational resilience. As the answers demonstrated, for most respondents (and in most companies) these terms were used as synonyms. Having studied the report, the colleagues brought up another matter – The BCI introduced the new term of "organizational resilience" in addition to "business continuity" and "operational resilience".

If we search Habr for "Business Continuity", "DRP", "BCP", or "BIA", we’ll find quite enough posts by my colleagues (I’ve met some of them face to face and worked with the others) about data system recovery, data system testing, fault-tolerant infrastructure, and some other things. Yet, hardly any of them explain where all of it has come from, how it is changing, where it is heading – and why.

I thought the time has come to change the situation for the better and answer some of the questions like where business continuity provisions and operational resilience has come from, how they are changing, and where this trend is heading and why. To share my thoughts about development of the industry and its current de-facto state in case of a mature (or not too mature) introduction level – some things I’ve stated for my own use.

Intersections BCM & corporate functions
Rating 0
Comments 0

Openjob: distributed task scheduling framework

Reading time 3 min
Views 15K
PHP *Java *Go *

Openjob is a distributed and high-performance task scheduling framework that supports multiple cronjob, delay task, workflow, lightweight distributed computing, unlimited horizontal scaling, with high scalability and fault tolerance. Also has perfect permission management, powerful alarm monitoring, and support multiple languages

Read more
Rating 0
Comments 0

Hashing and its C++ applications

Level of difficulty Medium
Reading time 6 min
Views 660
Cryptography *C++ *Algorithms *
Sandbox

Hash, salt, SHA-1, SHA-2, std::hash.. To a non-programming person that may come up as some kind of a recipe that just does not seem to add up. In a sense, this is indeed supposed to be a gibberish to any third party and a strong, helpful mechanism for us, programmers. 

At the start of writing this article, I had one clear idea to get across the table: to finally unveil this mystery of hashing in C++ for beginners. I, a beginner myself, also wanted to solidify my knowledge in this area; so let’s get started.

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

Uniform gravity, can it exist?

Level of difficulty Medium
Reading time 3 min
Views 471
Popular science Physics
Analytics

3.What's an ugly smiling face?

It's the cat from curved space.

V. Komen, I. Tikhonenkov

Here we are discussing in general the majority of metrics for a stationary gravitation fields in one dimension. The only accepted approach so far to apply the equations of field (A. Einstein):

10
Total votes 4: ↑3 and ↓1 +2
Comments 0

Alpha Go && Alpha Go Zero

Reading time 3 min
Views 708
Development for IOT *Artificial Intelligence Logic games
Sandbox

Today I would like to discuss the games Chess and Go, the world's champions, algorithms and Al.

In 1997, a computer program developed by IBM Deep Blue defeated the world Chess champion Garry Kasparov. Go remained the last board game in which humans were still better than machines.

Why is that?

Chess is primarily distinguished from Go by the number of variations for each move. Chess, the game is more predictable with more structured rules: we have value for each figure (e.g bishop = 3 pawns, rook = 5 pawns -> rook > bishop), some kind of openings and strategies. Go, in turn, has incredibly simple rules, which creates the complexity of the game for the machine. Go is one of the oldest board games. Until recently, it was assumed that a machine was not capable of playing on an equal footing with a professional player due to the high level of abstraction and the inability to sort through all possible scenarios - exactly as many valid combinations in a game on a standard 19×19 go-ban are 10180 (greater than the number of atoms in the visible universe).

However, almost 20 years later, in 2015, there was a breakthrough. Google's Deep Mind company enhanced AlphaGo, which was the last step for the computer to defeat the world champions in board games. The AlphaGo program defeated the European champion and then, in March 2016 demonstrated a high level of play by defeating Lee Sedol, one of the strongest go players in the world, with a score of 4:1 in favour of the machine. A year later, Google introduced to the world a new version of AlphaGo - AlphaGoZero.

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

lsFusion: Open-Source Rapid Application Development Platform

Reading time 7 min
Views 268
lsFusion corporate blog Open source *Programming *ERP-systems *

lsFusion platform is designed for rapid development of business applications. It is distributed under the terms of a Lesser General Public License (LGPLv3). The source code of the platform is available on Github.

lsFusion is best suited for creating complex systems with large numbers of entities and forms, where users need to input and process large amounts of data. However, the platform can also be used to quickly create simple applications instead of spreadsheets when Excel’s functionality is not enough.

At the same time the use of the platform will not give a great advantage when developing applications aimed at interaction with a large number of “external” users or without the need for any complex calculations. You should also take into account that the web interface is a single page application using JavaScript. Therefore, the lsFusion platform is not well-suited for creating websites, for example.

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

How to Set Up a Custom Domain and Get a Free SSL Certificate on Firebase

Level of difficulty Easy
Reading time 2 min
Views 674
Hosting Information Security *Website development *
Tutorial

In my previous article, I showed you how to deploy your project to Firebase and use it for free. Now, let’s explore additional benefits of Firebase. In the upcoming article, I will show you how to set up a custom domain name for your project and utilize a free SSL certificate from Firebase.

Read more
Rating 0
Comments 1

Uniform gravity, can it exist?

Level of difficulty Medium
Reading time 2 min
Views 553
Popular science Physics
Analytics

V. Komen, I. Tikhonenkov

In the previous post we've considered a model example of a motion of a free particle within a uniform gravitation field where a coupling to the field is defined by an observed inertion mass (see eq. (2) in https://habr.com/en/articles/739714/). The equation of motion was:

10
Total votes 2: ↑2 and ↓0 +2
Comments 0

What is it about IT. And when will it all end

Reading time 21 min
Views 987
IT career History of IT
Sandbox
Translation

Yes, we need IT

The foundation of our civilization is tools. We didn't just evolve to a state that allowed us to use them, we began to improve them ourselves. The tools are becoming more intricate, more efficient and more perfect. It can be a hammer, an industrial robot, or a monetary relationship. 

Some of our tools are difficult to grasp or comprehend, they are more like an element or a subject of study: the Internet, the media, the transport system. It is even difficult to call them tools, rather it is a reflection of our activities. For simplicity, we will call everything that people do with their own hands a tool, meaning that they speed us up, make our life easier and more comfortable.

Why do we need tools? On the one hand, they help to solve emerging problems, on the other hand, they raise the standard of living. We enjoy creating tools. I would say it's one of our instincts. 

For the functioning of our body, we need some amount of mathematics. The processes in our head reflect this math into our language. We can write the language in the form of symbols. With the help of symbols, we can convey the discovery of one person to another or a thousand others. This allows us to build more and more complex tools. And most importantly, we really like it: the brain encourages us every time we invent or achieve something. Therefore, our tools are developing with us. The mechanisms of their development and improvement are sewn into us.

Migratory birds fly south in autumn, north in spring. It's their instinct. Ants build an anthill — it's their instinct. If people are left in satiety and peace, they begin to encode secret messages in the Bible, create complex etiquette, form mathematics, experiment with materials.

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

Affordable as a Bus, Comfortable as a Taxi: A Promising Type of Public Transport for Large and Medium-Sized Cities.Part3

Level of difficulty Medium
Reading time 32 min
Views 1K
Algorithms *Mathematics *Transport The future is here Urbanism
Opinion
Translation


Translation provided by ChatGPT, link to the original article in Russian

Link to Part 1: «Preliminary Analysis» (ру / eng )
Link to Part 2: «Experiments on a Torus» (ру / eng )
Link to Part 3: «Practically Significant Solutions» (ру / eng )
Link to «Summary» (ру / eng )

1 Playing Diplomacy


1.1 What this work is about


You're reading the third and final article in a series dedicated to minibus route schemes that would allow you to travel reasonably quickly, inexpensively, and most importantly, without any transfers, from any intersection to any other within a large city. You'll see many graphs, formulas, and figures below, but before we get to the technical part, I'd like to discuss the challenge of implementing this idea and invite you to participate in solving it.

1.2 A puzzle for the talented and brave (Eccentrics are welcome: 🎶)


I propose an adventure,
I propose a game,
I propose that you become part of a positive change in the lifestyle of almost a billion people around the planet,
I can't do this alone.
To start, I need your help with the following:
Read more →
Total votes 4: ↑3 and ↓1 +2
Comments 4

How to set up Gitlab CI/CD with Fastlane for iOS-project on a Mac mini

Reading time 8 min
Views 582
Doubletapp corporate blog Habr Development for iOS *
Tutorial

Hello, everyone! I’m Yaroslav Fomenko, Doubletapp iOS-developer. Since the end of May, my department colleague and I have been working on implementation, improvement, and scaling of CI/CD for our projects. In this article, we want to share a guide on preparing the Xcode project and setting up runners, scripts, and configs, as well as explain how CI/CD helps us.

To learn how and why we decided to use a Mac mini for CI/CD, click here.

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

CI/CD for iOS-projects: device or cloud? What’s better, Doubletapp’s take

Level of difficulty Medium
Reading time 6 min
Views 377
Doubletapp corporate blog Habr Development for iOS *
Review

Hey, Habr! I’m Yaroslav Fomenko, Doubletapp iOS-developer. After our IOS department deployed our CI/CD on a Mac Mini, we got an idea of scaling and encapsulating it. So we started researching ways to do it. First we thought of Docker, but there was neither enough info about it nor any other possible ways. In this article, we’ll look at all possible solutions we found for the deployment of Gitlab CI/CD on a device and in the cloud.

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

The Growing Field of Fraud Prevention: Insights and Career Opportunities

Reading time 4 min
Views 462
Payment systems *IT career Finance in IT
Opinion

Hi Everyone,

I would like to draw your attention to some key insights from two comprehensive reports, shedding light on the importance of fraud prevention as a burgeoning field with substantial job prospects. The original reports can be accessed through the link provided at the end of this message.

Firstly, let's consider a couple of significant events from the previous year that remain highly relevant. Retail e-commerce sales surged to a staggering $5 trillion, with projections indicating a further increase to $8 trillion by 2026. Furthermore, the percentage of shoppers making cross-border purchases rose from 69% in 2019 to an impressive 76%.

These statistics affirm that online shopping is not a passing trend, as consumers are willing to make purchases from international vendors, even if it means enduring longer delivery times in exchange for lower prices. From a fraud prevention perspective, this highlights the escalating number of non-domestic payments and the rise in the use of lost or stolen cards for purchasing goods that can be resold in the future. Notably, refund fraud is becoming increasingly prevalent. However, many businesses have adapted their protocols to accommodate these emerging challenges. One such positive development is the gradual disappearance of restrictions on using payment methods that do not match the account country.

As cross-border purchases continue to proliferate, alternative payment methods are also on the rise. Current global statistics indicate that an average of four payment options are now available on merchant platforms. Additionally, open banking payment transactions are projected to surpass $330 billion globally by 2027, leading to a greater diversity of alternative payment methods. As companies embrace these methods, they are also becoming more aware of the associated risks. For instance, direct banking payment methods present unique challenges as they lack refund capabilities, while Buy Now Pay Later (BNPL) options introduce their own set of risks.

Read more
Rating 0
Comments 0