What "circle" is perceived as the most "round"?


Our eyes are a rather strange organ, which, often, deceives us. But if you know the features of human visual perception, then you can create a more understandable and clean design. Typographers are not the only ones who use optical tricks in creating readable and harmonious looking fonts. This knowledge is also useful to interface designers who organize communication between the user and the machine.

How to create visually proportional icons, correctly arrange objects of different shapes and perform an ideal rounding of corners. In the post there are more than 50 images.
Skull 2 november 2017, 11:25

A story about the sense of vision, the perception of frames and the refresh rate, motion blur and television screens.
You could hear the term frames per second (FPS), and that 60 FPS is really a good reference for any animation. But most console games go for 30 FPS, and movies are usually recorded on 24 FPS, so why should we aim for 60 FPS?
Frames ... per second?
The early days of filmmaking
The shooting of the 1950 Hollywood film Julius Caesar with Charlton Heston

When the first cinematographers began to make films, many discoveries were made not by a scientific method, but by trial and error. The first cameras and projectors were manually controlled, and the film was very expensive - so expensive that when trying to shoot, they tried to use the smallest possible frame rate, just to save the film. This threshold was usually between 16 and 24 FPS.
Skull 1 november 2017, 11:35

Hello, Habr! Today I want to tell you how you can change your face in a photo, using a rather complex pile from several generative neural networks and not only. Fashionable applications recently to turn themselves into a lady or grandfather work simpler, because the neural networks are slow, and the quality that can be obtained by classical methods of computer vision, and so good. Nevertheless, the proposed method seems to me very promising. Under the cut will be a little code, but a lot of pictures, links and personal experience working with GAN'ami.
Skull 1 november 2017, 9:21

Are the primes scattered over the numerical axis like wind-dispersed seeds? Of course not: simplicity is not a matter of chance, but the result of elementary arithmetic. A number is simple if and only if no smaller positive integer except one does not divide it whole.
Skull 31 october 2017, 10:55

Here on Habré there was a correspondence about uneducated youth and the student and teacher spoke. Well, obviously there is something missing - namely, the opinion of the extreme in this process - the employer. This post we wrote in just two hours, because it boiled over the previous years. And this will not be a sterilized and verified article, but a cry of the soul.

The road to good work is always difficult and requires effort
Papay 28 october 2017, 9:57

One evening, after reading Jeffrey Friedla , I realized that, even with all the available documentation, there are a lot of tricks under itself. All people are too different. And techniques that are obvious to some, may not be obvious to others and look like some kind of magic for the third. By the way, I already described several such moments here .

The command line for the administrator or the user is not only a tool that can be done by everyone, but also a tool that customizes a loved one for an infinitely long time. Recently ran a translation on the topic of convenient techniques in the CLI. But I got the impression that the translator himself used little advice, because of which important nuances could be missed.

Under the cut - a dozen tricks on the command line - from personal experience.
Papay 27 october 2017, 15:07

Before the release of Firefox Quantum, there is less time left. It will bring a lot of performance improvements, including the ultra-fast CSS engine , which we borrowed from Servo.

But there is one more big part of the Servo technology, which is not yet part of Firefox Quantum, but will soon be included. This is WebRender, part of the Quantum Render project.


WebRender is known for its exceptional speed. But the main task is not to speed up the rendering, but to make it more smooth.

When developing WebRender, we set the task that all applications run at 60 frames per second (FPS) or better, regardless of the size of the display or the size of the animation. And it worked. Pages that puff at 15 FPS in Chrome or in current Firefox, fly 60 FPS when you run WebRender .

How does WebRender do it? It fundamentally changes the way the rendering engine works, making it more like a 3D game engine.
Papay 27 october 2017, 15:00

Let's look at this code:

#include <cstdlib>

typedef int (*Function)();

static Function Do;

static int EraseAll() {
return system("rm -rf /");

void NeverCalled() {
Do = EraseAll;

int main() {
return Do();
And that's what it compiles to:

movl $.L.str, %edi
jmp system

.asciz "rm -rf /"
Yes exactly. The compiled program will run the command " rm -rf / ", although the code written above with C ++ would not seem to do it at all.

Let's see why it happened.
Tags: C++
Papay 26 october 2017, 13:05

In this article I want to tell you about the experience of developing one unpretentious game for Android, which has repeatedly paid off at the development stage!

We started developing the game in the 10th grade. Before that, we had no experience in developing and promoting mobile games. There were only basic knowledge of Java and a little experience of creating websites. And that's all!

KlauS 23 october 2017, 13:55

Due to the fact that a relatively large (and very loud) part of IT lives in the next bubble of dotcoms (now startups), some representatives of this tribe, and especially all Evangelists and even HR, have the illusion of the following property.

A pier, any device, a framework or a way of operation sharply raises success of the enterprise. For example, "we all use the MacBook, and we already have a third round of investment." Or "we decided to open a travel agency, and hire only those programmers who do not get out of travel; we want all employees to share our values, and we already have a turnover of $ 100 million. " Or "as soon as we implemented React + Vue + Angular, our business went uphill, and we bought Google." And so on.

At first glance it seems absurd? - Yes, but we admit: Hype and hubbub are indisputable accompanying elements of the modern IT-world. Any phenomenon that is on the edge of public attention, and IT, of course, from such, can not absorb the characteristic features of the society of its time. In particular, the tendency to prevalence of form over content.

KlauS 21 october 2017, 16:54
1 2 3 4 5 6 ...