Pull to refresh
0
0
Влад Куркин @B_Vladi

Fullstack web developer

Send message

Node.JS Загрузка модулей по требованию

Reading time4 min
Views15K
Иногда, например, при обработке больших массивов данных, для использования максимума ресурсов окружения и сокращения общего затраченного времени работы, нам приходится использовать конкурирующие процессы, которые одновременно выполняют однотипные задачи над разными объектами.

Предположим, мы разрабатываем простой пакет для npm. Назовём его, например, storage (хранилище). Заранее предусмотрим возможность использования одного из нескольких типов хранилищ, например, FsStorage (файловое хранилище), MysqlStorage (MySQL-хранилище), MongoStorage (Mongo-хранилище).
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments20

Пишем быстрый и экономный код на JavaScript

Reading time16 min
Views68K
Такой движок JS, как V8 (Chrome, Node) от Google, заточен для быстрого исполнения больших приложений. Если вы во время разработки заботитесь об эффективном использовании памяти и быстродействии, вам необходимо знать кое-что о процессах, проходящих в движке JS браузера.

Что бы там ни было — V8, SpiderMonkey (Firefox), Carakan (Opera), Chakra (IE) или что-то ещё, знание внутренних процессов поможет вам оптимизировать работу ваших приложений. Но не призываю вас оптимизировать движок для одного браузера или движка – не делайте так.

Задайте себе вопрос:
— можно ли что-то в моём коде сделать более эффективным?
— какую оптимизацию проводят популярные движки JS?
— что движок не может компенсировать, и может ли сборка мусора подчистить всё так, как я от неё ожидаю?



Есть много ловушек, связанных с эффективным использованием памяти и быстродействием, и в статье мы изучим некоторые подходы, которые хорошо показали себя в тестах.
Читать дальше →
Total votes 78: ↑72 and ↓6+66
Comments29

Интеграция Fail2ban с CSF для противодействия DDoS на nginx

Reading time12 min
Views34K
Набор скриптов ConfigServer Security & Firewall (CSF) изначально обладает достаточно богатыми возможностями по организации защиты сервера хостинга Web с помощью фильтра пакетов iptables. В частности с его помощью можно противостоять затоплению атакуемого хоста пакетами TCP SYN, UDP и ICMP слабой и средней силы. Дополняет CSF встроенный Login Failure Daemon (lfd), который осуществляет мониторинг журналов на предмет наличия многочисленных неудачных попыток авторизации в различных сетевых сервисах с целью подбора пароля. Такие попытки блокируются путем внесения адреса IP злоумышленника в черный список CSF.
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments14

Философия программирования 2 — Миф и язык

Reading time10 min
Views58K
def Миф и язык extends «трёхнаправленное программирование»;

Миф о том, что русские программисты лучшие в мире, запущен вовсе не партийными пропагандистами, он возник на перестроечной волне, вместе с мифами о хозяине-предпринимателе, невидимой руке рынка и ста сортах колбасы. Миф, это то, что человек не читавший взрослых книг называет «мем», а человек вообще не читающий, называет правдой. Передача «Разрушители мифов» берёт поверхностные мифы, которые можно легко опровергнуть, например, бросив бутерброд с маслом на пол тысячу раз. А вот Гордон, в одном из своих первых телепроектов «Собрание заблуждений», брался за раскрытие мифов посложнее, такие мифы нельзя раскрыть затопив машину и проверив, можно ли всё-таки открыть двери до того, как машина полностью наполнится водой, они как плавающий баг у которого нету «steps to reproduce». Вспомните Холмса или Хауса, интеллектуал в первую очередь отличается тем, что видит невидимое — пока паникующие пассажиры всматриваются в туман за бортом, он закрывает глаза и всматривается в свои «чертоги разума», вспоминает карту местности и ТТХ парохода.


«Всё содержится в моих чертогах разума, вы же понимаете о чём я мистер Холмс? Я обладаю знаниями, и поэтому могу щёлкать доктора Ватсона по носу хоть целый день.»
Читать дальше →
Total votes 99: ↑61 and ↓38+23
Comments103

em-dosbox и 50 подарков на новый год

Reading time3 min
Views27K
Некоторые вещи с годами становятся только лучше. Например, классические игры, разработанные в эпоху DOS завораживают. Каждая из них — штучный продукт сделанный с большой любовью. К сожалению DOS платформа ушла в прошлое и вместе с ней уходят замечательные продукты. Вернуть их в современный мир — это ли не настоящий подарок?
Читать дальше →
Total votes 44: ↑41 and ↓3+38
Comments52

Node.js в огне

Reading time6 min
Views51K
Мы создаем новое поколение веб-приложения Netflix.com, использующего node.js. Вы можете узнать больше о нашем походе из презентации, которую мы представили на NodeConf.eu несколько месяцев назад. Сегодня я хочу поделиться накопленным опытом в настройке производительности нового стека нашего приложения.

Мы впервые столкнулись с проблемами, когда заметили, что задержка запроса в нашем node.js приложении со временем увеличивается. К тому же оно использовало больше ресурсов процессора, чем мы ожидали, и это коррелировало с временем задержки. Нам приходилось использовать перезагрузку как временное решение, пока мы искали причину с помощью новых инструментов и техник аналитики производительности в нашей Linux EC2 среде.

Читать дальше →
Total votes 69: ↑64 and ↓5+59
Comments64

ECMAScript 6 Promises

Reading time5 min
Views52K
На Хабре уже встречались статьи о замечательной технологии Promises, которая в будущем станет частью стандарта ECMAScript 6, однако, в этих статьях не было подробного описания, почему же они так полезны и в чем таки их преимущества. Дабы заполнить этот пробел, я решил написать эту статью.
Читать дальше →
Total votes 37: ↑28 and ↓9+19
Comments47

Как отметить День космонавтики?

Reading time4 min
Views70K


Обычно на День космонавтики показывают фильмы про Гагарина, «Укрощение огня», или что-нибудь ещё на космическую тему. А мы с вами, благодаря информационным технологиям, можем устроить себе необычный праздник — посмотреть с нескольких сторон на реконструкцию того полёта. С помощью Orbiter мы посмотрим на корабль «Восток-1» в полёте снаружи и изнутри, а фильм «First Orbit» покажет нам вид на Землю, максимально приближенный к тому, что видел Гагарин в реальном полёте.
Читать дальше →
Total votes 88: ↑85 and ↓3+82
Comments29

Ультразвуковой лечебный 3D-корсет

Reading time1 min
Views61K


Этот корсет для сломанной руки — прекрасная комбинация технологии трёхмерной печати и лечебного воздействия ультразвука на повреждённую костную ткань. Автором является Джейк Эвилл. Он разработал лёгкую, прочную и стильную конструкцию, позволяющую коже свободно дышать. Такой корсет печатается по трёхмерной модели конкретной руки. Кроме того, корсет не боится воды, поэтому с ним можно спокойно мыться.

Помимо перечисленных преимуществ перед традиционным гипсом, эта конструкция имеет ещё одну важную функцию. К корсету можно подключать LIPUS-генератор (Low Intensity Pulsed Ultrasound), источник импульсного слабого ультразвука. Дело в том, что ультразвук ускоряет заживление повреждённых костных тканей. И прибор можно подключить к корсету напротив перелома.
Читать дальше →
Total votes 64: ↑59 and ↓5+54
Comments40

Почему стоит брать кредиты

Reading time3 min
Views202K
Привет, Хабр!

Вчерашняя моя статья (Наглядно о том, почему я не беру кредиты) вызвала очень сильную реакцию, возможно даже кого-то задела за живое, тогда извиняюсь. Главным образом мне указывали на ошибку, что не учитывается стоимость аренды квартиры, пока Вася копит нужную сумму на вкладе. Что же, дельное замечание, спешу исправить свои ошибки (ведь не ошибается тот, кто ничего не делает, не так ли?).
В конце бонус — онлайн калькулятор с графиками, (преферансом… ну вы поняли).
Читать дальше →
Total votes 105: ↑77 and ↓28+49
Comments183

Обзор Parrot Asteroid Tablet – самый «автомобильный» Android

Reading time14 min
Views110K


Мне всегда не хватало компьютера в автомобиле. То есть, конечно, планшет, телефон и навигатор решают большинство задач, но хотелось иметь единое интегрированное устройство без лишних проводов и без необходимости постоянно что-то подключать, отключать и путаться в проводах.

Имеющиеся на рынке 2-DIN устройства, заменяющие штатную магнитолу, зачастую обладают настолько неудобным интерфейсом и бедным функционалом, что рассматривать их всерьез на данном этапе я бы не стал. К тому же проприетарные операционки почти не позволяют расширять функционал.

Поэтому, когда мне предложили потестировать автомобильный андроид-планшет Parrot Asteroid Tablet, я, естественно, вдохновился, предвкушая скорое окончание мучений с зоопарком гаджетов в машине.

Сразу должен сказать главное: то, что выглядит как планшет и работает как планшет, не всегда является планшетом в классическом представлении. Поэтому не спешите делать выводы по внешнему виду, а лучше посмотрите вместе со мной, что на самом деле скрывается за планшетным позиционированием Parrot Asteroid Tablet.

Для начала послушаем, как описывает свое устройство сам производитель. Parrot Asteroid Tablet – автомобильный планшет с multi-touch дисплеем высокого разрешения, который легко и незаметно интегрируется в любой автомобиль с подключением к штатной аудиосистеме и, опционально, к рулевым клавишам. Устройство позволяет взять на себя функции вашего смартфона или планшета в автомобиле, реализуя в полной мере возможности вспомогательных приложений – навигационных, музыкальных, информационных и других. Водитель получает доступ к медиатеке любых внешних устройств, а также может пользоваться продвинутыми функциями hands-free при помощи голоса или дистанционного пульта с сенсорным управлением.
Интересно? Внутри длинный рассказ и 8 Мб фотографий
Total votes 56: ↑42 and ↓14+28
Comments61

Youtube

Reading time1 min
Views222K
Приходится ждать загрузки видео >360p по несколько секунд, обрывы на середине просмотра стало уже обыденным делом и это с достаточно широким каналом.

image

Причина в занижении провайдерами скорости к серверам кеширующим видео, всё что нужно сделать это заблокировать доступ к ним.

Для того чтобы запрос шел мимо cdn серверов ютуба надо заблокировать диапазон ip адресов (в роутере или на компьютере).

173.194.55.0/24 и 206.111.0.0/16
Читать дальше →
Total votes 205: ↑147 and ↓58+89
Comments179

Космонавты, которые намного круче чем любой герой боевика

Reading time6 min
Views100K
От переводчика: В последнее время на первый план выходит техническая часть космических программ. В сети можно найти большое количество статей, рассказывающих о тех или иных научных достижениях, помогающих нам в освоении космоса. Но не стоит забывать и про космонавтов, отважно бросающих вызов звездам. В этой статье автор рассказывает о пяти случаях, которые заставляют как никогда проникнуться уважением к этим покорителям космоса.

Читать дальше →
Total votes 229: ↑227 and ↓2+225
Comments46

Алгоритм генерации QR-кода

Reading time18 min
Views182K


QR код — это монохромная картинка, на которой некоторые устройства (например смартфон со специальным приложением) распознают текст. Этим текстом может быть не только простая фраза, но и, хоть это и не входит в официальную спецификацию, ссылка, номер телефона или визитная карточка. Такие коды чаще всего используют, чтобы закодировать ссылку и распечатать её на плакате или визитке.

Эта статья — подробная инструкция по созданию QR кода с примерами на каждом шаге, которая требует от вас только базового умения работать с бинарными данными и владения любым языком программирования (если вы хотите создать автоматический генератор QR кода).

За основу этой статьи взят цикл статей «QR Code Demystified» Джейсона Брауна (Jason Brown). В этих статьях опущено много нюансов, что вызвало у меня некоторые проблемы. Все эти нюансы учтены и упомянуты здесь.

Читать дальше →
Total votes 106: ↑99 and ↓7+92
Comments23

Вышло обновление, повышающее общую безопасность Windows 7

Reading time1 min
Views246K
Доброго дня,

спешу сообщить, что Microsoft выпустило новое обновление, KB2872339.
Особенность его в том, что оно негативно повлияет на пользователей нелицензионной Windows 7
Читать дальше →
Total votes 88: ↑55 and ↓33+22
Comments63

Поиск работы за рубежом

Reading time6 min
Views104K
Судя по отзывам на мою предыдущую статью о процессе прохождения интервью, многие хаброколлеги интересуются, как лучше подготовиться к поиску работы на западе. Хочу поделиться моим опытом и дать ссылки, которые будут полезны тем, кто думает о переезде или просто хочет узнать, как это работает в другом мире. Статья ориентирована на среднестатистического разработчика ПО, так что если у вас блестящие навыки разговорного языка и превосходные знания нужных технологий и языков программирования, то многие советы можно пропустить.

Итак, вы задумались о поиске новой работы.
Читать дальше →
Total votes 86: ↑78 and ↓8+70
Comments21

Жизнь разработчика (в картинках)

Reading time1 min
Views65K
Взято отсюда специально для хабра. Возможно, в некоторых из ситуаций вы узнаете себя.

Когда я показываю босу, что окончательно пофиксил баг



Когда проджект-менеджер входит в офис



Читать дальше →
Total votes 884: ↑700 and ↓184+516
Comments132

Почти настоящий трансформер в масштабе 1:12

Reading time1 min
Views103K
Японская компания Brave Robotics, которая говорит о себе, что она не компания, а «hobby robot researcher» выпустила почти настоящий трансформер. Только маленький.



Робот умеет трансформироваться из машины в антропоморфного робота и обратно, стрелять из рук и передавать то, что он видит, на планшет.
Видео работы
Total votes 83: ↑77 and ↓6+71
Comments52

В Windows 8 также доступен «Режим Бога»

Reading time1 min
Views215K
Ранее, в Windows 7 был обнаружен так называемый «Режим Бога» (специальная возможность, которая предоставляет удобный доступ ко множеству настроек системы из единой точки), который можно было активировать с помощью нескольких бесхитростных действий. В Windows 8 эта возможность была сохранена. Напомню, как ее активировать.

  1. Создаем на рабочем столе новую папку.
Читать дальше →
Total votes 179: ↑105 and ↓74+31
Comments87

Эквалайзер на JavaScript

Reading time5 min
Views57K
На хабре уже было несколько статей по Web Audio API: создание визуализатора, вокодера и пианино в 30 24 строки. Поиск же по всея интернетам по запросу эквалайзер упорно выдавал туториалы по созданию спектрограмм. (Если заголовок этой статьи сбил вас с толку или вы таки купились на картинку:) и ожидали именно визуализации аудио — вам сюда или вот сюда). Но именно просто эквалайзера я так и не встретил (хотя уверен, что где-то он таки есть). Возможно, это настолько простая задача, что об этом и писать не стоит. Но, в таком случае, почему бы не сделать её ещё проще?


Читать дальше →
Total votes 44: ↑39 and ↓5+34
Comments21

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Fullstack Developer
Lead
From 300,000 ₽
JavaScript
TypeScript
Node.js
Webpack
Vue.js
React
HTML
CSS
Python
DevOps