Developers Club geek daily blog

Webpack ProvidePlugin: how not to write the import/require sheet at the beginning of module javascript

1 year ago
If you develop on modern javascript, then almost any your module contains a sheet of such lines:

import React from 'react'
import $ from 'jquery'

As it appeared, the majority of these lines can be not written, having entrusted their generation to automatic equipment. Also modern webpack in which as it appears, it is complete of pleasant surprises helps with it. Except all the known require and import for any files and "hot module replacement" which is already described on Habré, webpack can analyze your source code and automatically turn on the necessary modules on the basis of the used literals. Under a cat — the short description as works this magic.

Read more »

Work is alone very difficult

1 year ago
From the translator: you do not hurry, having read heading, to mutter something like "Thanks, the captain", and to skrollit further. The name of article not absolutely reflects its contents, it a little about another: about creative process and an opportunity to express itself in creation of new. Well and it is a little about loneliness, of course.

On some mad coincidence which I will never understand my game Pinstripe (I work on it nearly 4 years) was shown at a ceremony of Game Awards 2015. It was extremely strange to observe how Mark Hamill and Kiefer Sutherland discuss games while my person is shown close up on all projectors. I am very happy, do not misunderstand, but I also want to be frank: it became real confirmation of the fact that yes, work on the project alone was worth it, the first for four years. Except feeling of happiness and an opportunity to tell the story of "a lonely wolf" to thousands of people in Los Angeles, there are some more benefits of work alone.

Read more »

How to create convincing mechanics of death and not to mess up

1 year ago
Games in which it is impossible to die (or, perhaps, to lose) have not enough depth. If it is impossible to lose why to try to win? In other words, if you are not afraid of defeat, the aspiration to a victory loses any meaning. However after death of the character it is optional to player to be whipping the cat and to change everything on new. The mechanics of death can be integrated into a plot or a gameplay, but the main thing – is correct to make it.

Read more »

Why calculation of pertsentily works not as you expect?

1 year ago
Often clients ask us about a p99-metrics (the 99th pertsentil).

It is definitely reasonable request and we are going to add similar functionality to VividCortex (I will tell about it later). But at the same time, when clients ask about it, they mean something absolutely certain — something that can be a problem. They ask not the 99th pertsentil on some metrics, they ask a metrics on the 99th pertsentilyu. This commonplace for such systems as Graphite, but all this yields not that result which from such systems is expected. It is a post will tell you that, perhaps, you have incorrect representations about pertsentil, about exact degree of your delusions and about what all of you can make correctly in this case.

(It is transfer of article which was written by Baron Schwartz.)

Read more »

The third New Year's kolltsentr: superrapid development on ReactJS and Typescript

1 year ago
With coming, colleagues! We in voximplant have a tradition — before each new year we do New Year'skolltsentr on which we roll new features of our platform. This year by a feature it happened especially much. Except video calls and record of video, we began to use actively typescript and react. The modern "hipstersky" stack of technologies extremely accelerates a razrabota: from the moment as the maxim log suggested us to make kolltsentr with models as Snow Maidens and to the first accepted video call there passed less than two days. This year we did not begin to do the announcement most promo on Habré, after all a format not that, we want to communicate about a code and development, huh? Therefore under a cat I will share our experience of creation of a solution in a short time and I will tell what difficulties we faced.

Read more »

Segmentation of audience when developing games

1 year ago
Competent segmentation of users — one of cornerstones on which the success of game is based. In this post we will talk about how it is possible to select correctly target audience of games on any platforms: client, browser, mobile.

This article does attempt to make the overview of different criteria of segmentation and is aimed more at the beginning audience of developers of games and the interested geymdizayny.

Read more »

As I got the first experience of development of game on Android

1 year ago

I want to share the experience creations of the first game for the Android platform in this article, to tell all way from origin of idea before the publication.

Read more »

We increase search performance by means of an index partitsionirovaniye in Apache Solr

1 year ago

Full-text search is used in Wrike almost everywhere. Search in the heading of the page gives the chance of quick access to the last tasks with sorting according to date of updating, with coincidence according to the name. Such option of search is presented in the sections "My Work" and "Task bar".
Search in the task list works on all fields: name, description, names of files of attachments, authors, comments, date of change. The maximum priority at tasks on which activity is connected with the current user, with phrase coincidence in the name, the description or in comments.
The simplified option of search in names is used:
  • at arrangement of dependences for Gant's chart (the previous and subsequent tasks),
  • when adding links to tasks of names (menshening),
  • when adding subtasks.

In these sections instant search with implicit wildcard is used: the user consistently enters u, up, upd, update, and search queries take a form: u *, up *, upd *, update*.
Besides, wildcards can be used in all options of search.
Thus, the "heavy" search queries causing repeated reading an index, the raised loading on CPU/IO on servers and, as a result, the general delays in request processing in "rush hours" often come.
In this article we will share the method of a solution of the problem of performance.
It will be a question of acceleration of search during the work with a search server of Apache Solr through a partitsionirovaniye of collections. The described method was tested by us on versions 4.9.0 and 4.10.2.

Read more »

Safety scanners: automatic classification of vulnerabilities

1 year ago

The growing number of threats forces developers of means of the analysis of security to improve the solutions constantly. Now a wide choice of scanners of safety from different vendors who differ by the efficiency is presented at the market of IB. It makes impossible release of new versions of scanners without competitive analysis of similar products.

The Positive Technologies company developed own methodology of the competitive analysis for testing and comparison of scanners by objective criteria, it as types and amount of the found vulnerabilities, completeness of scanning of the different purposes. Besides, the database of the competitive analysis (DBCA — Database of Competitive Analysis) was created in which the unique vulnerabilities found in process of manual checks and automatic scanning of the synthetic purposes, real websites, CMS, web applications and other information systems safety scanners are collected (WebEngine – built in PT AF and PT AI, Acunetix, AppScan, etc.). DBCA is used for comparison of results of scanning by new versions of the Positive Technologies scanners with results of third-party scanners and eliminations of false drops (false positive).

However filling of DBCA demands months of manual skills of highly skilled test engineers. Processes of setup of environments and scanning take a lot of time, time of week. There is a process of validation of the found vulnerabilities even longer. So, three engineers of department of QA within a year worked on filling of the current base. In this regard there was a need of acceleration and automation of works.

Use safety Scanners became a solution: automatic validation of vulnerabilities by means of indistinct sets and neural networks". Theoretical researches were included into a basis of the practical experiment put by engineers of Positive Technologies: Timur Gilmullin, Vladimir Sofin, Artem Yushkovsky.

The formal task of the DBCA conversion to the knowledge base, by use of NANOSECOND (as the decisive rule) and indistinct measuring scales was solved (for a linguistic assessment of results of classification in a form clear to the person). Practically DBCA was added with rules and mechanisms of elimination of the false drops which are in advance sorted by degree of confidence in their existence, estimated on an indistinct measuring scale. It allowed to accelerate work of test engineers on the analysis of results of scanning and elimination of false drops.

Read more »

A simple opportunity to gain experience in IT

1 year ago
imageThe anesthesiologist Con Kolivas developed own version of a task scheduler for kernel Linux because the existing implementation was adapted under server tasks, but unsatisfactorily coped with the user tasks.

Alexey Kuznetsov who happy-go-lucky "turned" into the hacker's Linux replaced the profession from the physicist-theorist with the system programmer.

The IT journalist Pyotr Semiletov in addition to the main work develops ten years the text editor of Tea open source.

Lesya Novaselskaya who received profession of the pathologist participates in testing of the project with an open source code.

Similar examples set. All these people are integrated by one — they implemented the interests in projects open source and participated in them both for pleasure, and for receipt of experience. There was a certain myth that the open project is only for programmers, and that who already have a wide experience in development. But it not so. The open project is not only development of the source code, but also testing, technical support, writing of documentation, marketing, etc. And still — excellent chance to gain experience and to derive pleasure from communication with the same adherents as you. According to results of vote the main obstacle for participation in the open project is absence of understanding of how to join the project. Therefore we will understand article as well as as whom it is possible to join such project.

Read more »