Search
Write a publication
Pull to refresh

PopSci

Show first
Period
Level of difficulty

Teaching kids to program

Reading time6 min
Views2.4K

Hi. My name is Michael Kapelko. I've been developing software professionally for more than 10 years. Recent years were dedicated to iOS. I develop games and game development tools in my spare time.


Overview


Today I want to share my experience of teaching kids to program. I'm going to discuss the following topics:


  • organization of the learning process
  • learning plan
  • memory game
  • development tools
  • lessons
  • results and plans

Full disclosure: 0day vulnerability (backdoor) in firmware for Xiaongmai-based DVRs, NVRs and IP cameras

Reading time6 min
Views98K

This is a full disclosure of recent backdoor integrated into DVR/NVR devices built on top of HiSilicon SoC with Xiaongmai firmware. Described vulnerability allows attacker to gain root shell access and full control of device. Full disclosure format for this report has been chosen due to lack of trust to vendor. Proof of concept code is presented below.
Read more →

Dobroshrift

Reading time2 min
Views2.6K
What one gets easily and for free can be a real struggle for others — these are the thoughts every letter of the «Dobroshrift» [Kindness Font] evolves. It was developed for the World Cerebral Palsy Day with the participation of children with this diagnosis. So we decided to take part in this charity action and changed the website logo till the end of the day.


Read more →

How to save $58 in 5 minutes: let’s use different prices in each country against marketers

Reading time5 min
Views5.6K
image

Hello Habr! Now that is summer vacation season. Many of you will take a flight to a place far from your everyday routine at home. Before this hot vacation season starts, we should discuss an interesting and useful method on how to save money using a VPN.

One of the easiest ways to see the value in this is looking at car rentals while on vacation.
Read more →

We're in UltraHD Morty! How to watch any movie in 4K

Reading time3 min
Views14K
You’ve probably heard about Yandex’s DeepHD technology they once used to improve the quality of old Soviet cartoons. Unfortunately, it’s not public yet, and we, regular programmers, don’t have the dedication to write our own solution. But I personally really wanted to watch Rick and Morty on my 2880x1880 Retina display. And I was deeply disappointed, as even 1080p video (the highest available for this series) looks really blurry on a Retina display! Don’t get me wrong, 1080p is often good enough, but Retina is designed in such a way that an animation with its pronounced outlines in 1080p looks awfully blurry, like 480p on a FullHD monitor.

I decided I want to see Rick and Morty in 4K, even though I can’t write neural networks. And, amazingly, I found a solution. You don’t even need to write any code: all you need is around 100GB of free space and a bit of patience. The result is a sharp 4K image that looks better than any interpolation.


Read more →

Microsoft Q# Coding Contest – Winter 2019

Reading time3 min
Views1.8K

Microsoft’s Quantum team is excited to announce the Q# Coding Contest – Winter 2019! In this contest you can put your quantum programming skills to the test, solving quantum computing tasks in Q#. Winners will receive a Microsoft Quantum T-shirt!


Quantum computing is a radically different computing paradigm compared to classical computing. Indeed, it is so different that some tasks that are believed to be classically intractable (such as factoring integers or simulating physical systems) can be performed efficiently on a quantum computer. In 2017 Microsoft introduced the Quantum Development Kit which includes the Q# programming language. Q# can be used with Visual Studio, Visual Studio Code or the command line, on Windows, macOS, and Linux.


Read more →

Time management in real life

Reading time3 min
Views4.9K

no problems


Have you ever noticed that you were busy all day, however, you've done nothing or at X-mas evening you experience an epiphany that nothing was done during the year? If your answer is "yes", you should improve your time management skills. According to Wikipedia, time management is the process of planning and exercising conscious control of time spent on specific activities, especially to increase effectiveness, efficiency and productivity. Nevertheless, how can we deal with it?

Read more →

Multiple violations of policies in RMS open letter

Reading time7 min
Views3.9K

Author: Chris Punches (@cmpunches, Silo group). License: "Please feel free to share unmodified".

The following text is an unmodified copy of now removed issue #2250 on rms-open-letter.github.io repository. The text claims multiple violations of different policies, codes of conduct and other documents in creation, content and support of the "Open letter to remove Richard M. Stallman from all leadership positions". The issue has not been addressed.

Read more

Toxic Comments Detection in Russian

Reading time17 min
Views8.2K

Currently, social network sites tend to be one of the major communication platforms in both offline and online space. Freedom of expression of various points of view, including toxic, aggressive, and abusive comments, might have a long-term negative impact on people’s opinions and social cohesion. As a consequence, the ability to automatically identify and moderate toxic content on the Internet to eliminate the negative consequences is one of the necessary tasks for modern society. This paper aims at the automatic detection of toxic comments in the Russian language. As a source of data, we utilized anonymously published Kaggle dataset and additionally validated its annotation quality. To build a classification model, we performed fine-tuning of two versions of Multilingual Universal Sentence Encoder, Bidirectional Encoder Representations from Transformers, and ruBERT. Finetuned ruBERT achieved F1 = 92.20%, demonstrating the best classification score. We made trained models and code samples publicly available to the research community.
Read more →

How to Write a Smart Contract with Python on Ontology? Part 1: the Blockchain & Block API

Reading time5 min
Views3.1K
image

This is an official tutorial published earlier on Ontology Medium blog
Excited to publish it for Habr readers. Feel free to ask any related questions and suggest a better format for tutorial materials

Foreword


In this article, we will begin to introduce the smart contract API of Ontology. The Ontology’s smart contract API is divided into 7 modules:


In this article, we will introduce the Blockchain & Block API, which is the most basic part of the Ontology smart contract system. The Blockchain API supports basic blockchain query operations, such as obtaining the current block height, whereas the Block API supports basic block query operations, such as querying the number of transactions for a given block.

Let’s get started!

First, create a new contract in SmartX and then follow the instructions below.

1. How to Use Blockchain API


References to smart contract functions are identical to Python’s references. Developers can introduce the appropriate functions as needed. For example, the following statement introduces GetHeight, the function to get the current block height, and GetHeader, the function to get the block header.
Read more →

An Easy Way to Make Money on Bug Bounty

Reading time5 min
Views5.2K

Рисунок 2


Surely you've heard the expression «bug hunting» many times. I dare to assume, you won't mind earning one or two hundred (or even thousand) dollars by finding a potential vulnerability in someone's program. In this article, I'll tell you about a trick that will help analyzing open source projects in order to find such vulnerabilities.
Read more →

NodeMCU simple driver model (SDM) showcase: dynamic user interface

Reading time8 min
Views2.5K

image


NodeMCU is an interactive firmware, which allows running Lua interpreter on the ESP8266 microcontroller (ESP32 support is in development). Alongside with all the regular hardware interfaces, it has WiFi module and SPIFFS file system.


This article describes the new module for the NodeMCU — sdm. SDM stands for simple driver model and it provides device-driver model abstraction for the system. In the first part of this article we will discuss the model itself and in the second part will be a showcase of dynamically created web user interface using sdm with some commentaries.

Read more →

Most common misconceptions in popular physics

Reading time5 min
Views3.4K
Somewhere in an alternative Universe, based on MWI, I became a genius in physics. But in our Universe, I just read professional publications in physics, trying to keep myself up to date, meanwhile working as pizza delivery guy as DBA. Because of a slightly deeper knowledge of the subject it is almost impossible for me to watch the Discovery channel and other popular TV shows and the YouTube videos. I see nothing but oversimplifications, lies, and half-truths and can’t enjoy the shows.

I decided to compile a list of the most popular misconceptions. And the winner is...., or course, this one:

The Big Bang


Usually it is pictured like this:

image
Read more →

Android Robotics up to 2019: The real story; in 5 parts; part 1

Reading time23 min
Views4.8K
image

Quite a long time ago, seven years ago to be precise, i wrote a series of posts describing the state of android robotics in the world. At the time i was a high school student, with a keen interest in android robotics, who absorbed a bit of knowledge from English, Japanese, Chinese, Korean and Russian internetz and wanted to spill it somewhere.

While the posts were not too professional, and not to my standards of today, they were worthy enough to get stolen and even get translated by unapproved English Habrahabr mirrors, and to this day, appear in searches.

After those posts were written, Habrahabr got split. Removal of everyone outside of pure coding who were considered «not cake enough» to Geektimes felt like an insult and so i left the platform. Yet, the website was reunited last year, and much to a personal surprise, fairly recently an English version of Habrahabr was released.

During all these years i managed to be kicked from one university, finished another with a thick thesis on «Usage of Robotics in Disaster Conditions», lived in the Republic of Korea for half a year, and most importantly, not only expanded my knowledge of android robotics in such ways that the Robotics folder on the main hard drive is now more than 300GB in size, but also expanded the knowledge via journeying and personally meeting projects of the past and present, creating quite a decent archive on Youtube and met not only with the robots, but the engineers and scientists as well.

While i am still nowhere to be a robotics engineer, (and in the daily life i attempt to be a traditional slice-of-life artist), i feel that my tiny gigabytes of knowledge might be worthy of sharing, and today on Habr i'm publishing the real story of Android Robotics from the beginning up to 2019.

How to Painlessly Unite Art with Java, JavaScript, and Graphs or The Story Behind Creating an Interactive Theatre Produc

Reading time9 min
Views1.4K
Last year 2018, a theatre production series called Tale of the Century was launched in Estonia. Throughout the year, 22 local theatres presented their interpretations of the past hundred years of Estonian history to the audiences. In the draw, the Russian Theatre was assigned the topic of the future of Estonia.

Russian AI Cup 2020 — a new strategy game for developers

Reading time5 min
Views2.6K


This year, many processes transformed, with traditions and habits being modified. The rhythm of life has changed, and there's more uncertainty and strain. But IT person's soul wants diversity, and many developers have asked us if annual Russian AI Cup will be held this year. Is there going to be an announcement? What is the main theme of the upcoming championship? Should I take a vacation?

Though some changes are expected, it will be held in keeping with the best traditions. In the run-up, we will announce one of today's largest online AI programming championships — Russian AI Cup. We invite you to make history!

Common misconceptions about space-grade integrated circuits

Reading time27 min
Views22K

Space exploration was always fascinating, and recent developments have reignited the interest to the heights never seen since the last man stood on the Moon. People argue about Mars exploration and features of spaceships as their grandparents would’ve done if the internet existed fifty years ago. I’m an electronics engineer working in the aerospace industry, so I know a thing or two about the technical background of this stuff — and I see that these things aren’t common knowledge, and people often have significantly skewed ideas about the reasons behind many things and decisions. Namely, I’d love to speak of some misconceptions about radiation hardened integrated circuits and the means of protection from radiation-induced damage.

So, let's start our journey

How Moovit improved its app to help people with disabilities ride transit with confidence

Reading time4 min
Views889

Alexandr Epaneshnikov, a 19-year-old Russian student who is legally blind, recently decided he wanted to be more independent by commuting on his own and relying less on his mom for rides to school. It meant taking a streetcar to a subway to his high school in Moscow, a 30-minute trip that Epaneshnikov assuredly navigates with a cane and Moovit, an urban mobility app optimized for screen readers.


Read more →

Interview with Rob Vugteveen — an old-school FORTRAN programmer

Reading time5 min
Views2.1K
I decided to make an interview with one of my American friends — Rob Vugteveen. He was working as a FORTRAN programmer back in 1980s, so it's quite a unique experience.


Rob Vugteveen, Carson City, Nevada, USA

K: Hi Rob. I've heard you were working as a Fortran programmer many years ago. Is that right? How the industry was looking back then?

R: Good morning, Kirill.

In the 1980s I made my living as a FORTRAN programmer in the mining industry, primarily in the processing of exploration data and presenting it graphically. We were using VAX minicomputers from Digital Equipment Corporation. This was a time when desktop PCs were growing in popularity, and procedural languages like FORTRAN were being challenged by object-oriented languages. Also, graphics display systems were shifting away from character-cell terminals to X-window-based displays.

FORTRAN (“FORmula TRANslation”) was built for computationally intensive programs, and it did not have its own graphic libraries to display information. There were companies that sold large FORTRAN subroutine libraries to provide that capability. These were not yet designed for the growing popularity of X-window technology.

When we were forced to move from expensive VAX computers to cheaper PCs, we had to write hybrid programs using FORTRAN for computations and C++ for display. It was a bit messy at first. I left that job for something completely different (building a mining museum) and haven’t really done any programming since.

FORTRAN is still used today in scientific research for computationally intensive work, but I’m sure it’s been adapted to work with graphical display systems through external subroutines written in object-oriented code.
Read more →