Как стать автором
Обновить
11
0
Артём @FanAs

Веб-разработчик

Отправить сообщение

Full stack web developer

Время на прочтение3 мин
Количество просмотров74K
Довольно давно в различных источниках всплывала очень интересная тема Full Stack developer'a. А именно, что должен из себя представлять такой разработчик, каким опытом, знаниями и умениями должен обладать, с какими технологиями работать? И если с вопросом что должен из себя представлять все более менее понятно – должен уметь самостоятельно написать с нуля не тривиальное приложение, т.е. frontend, backend, работа с сетью, с БД и другие плюшки, архитектурные решения и т.д. То с последующими вопросами все не так ясно. Заинтересовавшихся прошу подкат…
Читать дальше →
Всего голосов 63: ↑34 и ↓29+5
Комментарии14

Как попасть на дачу президента в пять часов утра

Время на прочтение6 мин
Количество просмотров323K
Этот пост о том, как обычный взлом обернулся муками совести и душевными терзаниями. Исходников будет не много, больше фоток и анализа. Итак, некто Вася работает «плохим парнем». Степень падения Васи такова, что средства на жизнь ему приносит поиск и разбор информации, доступ к которой был скомпрометирован вследствие неграмотного обслуживания, безалаберности или экономии на обслуживающем персонале.


Читать дальше →
Всего голосов 392: ↑385 и ↓7+378
Комментарии445

Архитектура open source-приложений: Как работает nginx

Время на прочтение18 мин
Количество просмотров70K


Мы в «Латере» занимаемся созданием биллинга для операторов связи и рассказываем на Хабре о разработке своего продукта, а также публикуем интересные технические переводные материалы. И сегодня мы представляем вашему вниманию адаптированный перевод одной из глав книги «Архитектура open-source-приложений», в которой описываются предпосылки появления, архитектура и организация работы популярного веб-сервера nginx.
Читать дальше →
Всего голосов 36: ↑31 и ↓5+26
Комментарии10

Проверка теории шести рукопожатий

Время на прочтение9 мин
Количество просмотров55K


Хочу рассказать о своем эксперименте по проверке «Теории шести рукопожатий». На написание этого материала меня вдохновила статья «Анализ дружеских связей VK с помощью Python» (чтобы избежать повторений, в дальнейшем я буду ссылаться на нее). Так как в целом задача мной была поставлена по-другому, да и использованные методы тоже отличаются, то я решил что это может быть интересно.
Читать дальше →
Всего голосов 40: ↑30 и ↓10+20
Комментарии20

Американские программисты научились создавать контролируемые трёхмерные модели лиц на основе фотографий

Время на прочтение2 мин
Количество просмотров11K
image

Команда программистов из Вашингтонского университета научилась создавать трёхмерную модель лица человека на основе достаточно большого количества его фотографий. Эти модели затем можно полностью контролировать – например, они способны автоматически воспроизводить мимические движения по фотографиям и видео других людей.

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

Модель, например, способна автоматически повторять выражение лица человека по одной его фотографии. Более того, она способна повторять мельчайшие движения лица человека по видеозаписи. И что самое удивительное – видеозапись одного человека может быть повторена с моделью совершенно другого человека.


Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии17

Книга «Программируем Arduino: Основы работы со скетчами»

Время на прочтение3 мин
Количество просмотров16K
Всем привет!

Совсем недавно мы выпустили новую книгу и ее сразу пришлось допечатывать. Так что можем порадовать тех, кому не досталось первого тиража — вышла допечатка. Мы планируем развивать эту тему, поэтому обратите внимание на опрос в конце поста.

imageВпервые на русском языке выходит легендарный бестселлер Саймона Монка, который много лет занимает первые строчки в рейтингах Amazon. Хотите создать умный дом или запрограммировать робота? Нет ничего проще. Саймон Монк не только поможет разобраться с проволочками, контактами и датчиками, но и покажет, как заставить все это хитросплетение проводов и плат делать то, что вам нужно. Arduino — это не так сложно, как кажется с первого взгляда. Вы сразу будете покорены открывающимися возможностями.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии5

Полезные НЕ советы программисту

Время на прочтение5 мин
Количество просмотров59K
Я программист с небольшим стажем, но уже делаю свои первые робкие шаги по карьерной лестнице. Я много читаю и самообучаюсь, иногда что-то пробую в своей практике. И теперь я готов поделиться с вами несколькими советами по программированию которые очень помогают мне в моей каждодневной работе. Ко всем советам я пришел сам и они многократно опробованы в моих проектах.
Читать дальше →
Всего голосов 132: ↑87 и ↓45+42
Комментарии65

Типичные грабли на пути программиста от Junior'а к Senior'у

Время на прочтение6 мин
Количество просмотров98K
Молодой программист, едва закончивший или ещё даже не закончивший ВУЗ, готов свернуть горы, учиться, учиться и ещё раз учиться и ему близлежащее будущее кажется таким:



Но более опытные товарищи знают, что на самом деле на его пути давно уже заботливо разложены грабли и путь от Junior'а к Senior'у выглядит как-то так:



Давайте вспомним некоторые типичные грабли, на которые мы все (ну или большинство) наступали сами того не замечая. Конечно, для опытных разработчиков многое покажется очевидным капитанством, однако молодых специалистов такие ловушки могут легко увести на темную сторону силы.
Читать дальше →
Всего голосов 68: ↑55 и ↓13+42
Комментарии73

Регулярные выражения и математический парсер

Время на прочтение2 мин
Количество просмотров19K
Когда-то давно мне понадобился парсер математических выражений на C#. Конечно, скачать готовую реализацию — не проблема. Но вот только Интернета у меня в те годы не было. В итоге абсолютно без раздумий и без теоретических основ парсеров, конечных автоматов и прочего он был написан через регулярные выражения. Минут за 10. Стоит отметить, что нужны были только арифметический действия и скобки. Поддержка тригонометрических функций и прочего не требовалась.
Читать дальше →
Всего голосов 16: ↑10 и ↓6+4
Комментарии16

Пишем PHP extension

Время на прочтение8 мин
Количество просмотров34K
А давайте сегодня взглянем на PHP немного с другой точки зрения, и напишем к нему расширение. Так как на эту тему уже были публикации на Хабре (здесь и здесь), то не будем углубляться в причины того, для чего это может оказаться полезным и для чего может быть использовано на практике. Эта статья расскажет, как собирать простые расширения под Windows с использованием Visual C++ и под Debian с использованием GCC. Также я постараюсь немного осветить работу с PHP-массивами внутри расширений и провести сравнение производительности алгоритма, написанного на native PHP и использующего код, написанный на C.

Писать будем расширение под PHP версии 5.3.
Всего голосов 121: ↑117 и ↓4+113
Комментарии16

Французский аэропорт встал из-за сбоя Windows 3.1, операционной системы 1992 года

Время на прочтение3 мин
Количество просмотров57K
Аэропорт «Париж-Орли», который находится в четырнадцати километрах от Парижа, остановил свою работу из-за ошибки в Windows 3.1, на которой работает система оповещения о погодных условиях DECOR. Эта версия Windows была выпущена компанией Microsoft в 1992 году и среди нововведений имела игру «Сапёр» для тренировки точности попадания курсором по экрану.

«В Париже есть только три специалиста, которые могут разобраться с проблемами в DECOR. В следующем году один из них уходит на пенсию, и мы не представляем, кто мог бы его заменить», — рассказывает Александр Фиакр, генеральный секретарь объединения авиапрофсоюзов UNSA-IESSA.

image
Читать дальше →
Всего голосов 59: ↑50 и ↓9+41
Комментарии238

Роботы-пальцы делают глупые устройства умными

Время на прочтение1 мин
Количество просмотров7.5K
Стартап из Южной Кореи предлагает Microbot Push – девайсы с низким потреблением энергии, позволяющие нажимать на выключатели в вашем доме. Роботы-пальцы можно запрограммировать на включение света, музыки, кофеварки, вентилятора и других предметов бытовой техники, у которых есть кнопки.

image
Читать дальше →
Всего голосов 10: ↑9 и ↓1+8
Комментарии7

Как я победил в конкурсе BigData от Beeline

Время на прочтение7 мин
Количество просмотров88K
image

Все уже много раз слышали про конкурс по машинному обучению от Билайн и даже читали статьи (раз, два). Теперь конкурс закончился, и так вышло, что первое место досталось мне. И хотя от предыдущих участников меня и отделяли всего сотые доли процента, я все же хотел бы рассказать, что же такого особенного сделал. На самом деле — ничего невероятного.
Читать дальше →
Всего голосов 100: ↑92 и ↓8+84
Комментарии32

«Хранимые процедуры» в Redis

Время на прочтение5 мин
Количество просмотров29K
image

Многие знают про возможность хранить процедуры в sql базах данных, про это написано немало пухлых руководств и статей. Однако мало кто знает, что схожие возможности имеются и в Redis, начиная с версии 2.6.0. Но так как Redis не является реляционной БД, то и принципы описания хранимых процедур достаточно сильно отличаются. Хранимые процедуры в Redis — практически полноценные Lua скрипты (на момент написания статьи в качестве интерпретатора используется Lua 5.1).
Подробности тут
Всего голосов 20: ↑18 и ↓2+16
Комментарии44

Обзор ES6 в 350 пунктах. Часть первая

Время на прочтение6 мин
Количество просмотров57K
Моя серия заметок ES6 in Depth, состоящая из 24 записей, описывает большинство синтаксических изменений и нововведений в ES6. В этой публикации я подведу итог всего изложенного в предыдущих статьях, чтобы дать возможность посмотреть еще раз на всё вместе. Также я добавил ссылки на мой блог, чтобы в случае необходимости сразу же можно было посмотреть подробнее.



Я слышал, вы любите маркированные списки, так что вот вам статья со списком, который состоит из нескольких сотен элементов.
Читать дальше →
Всего голосов 37: ↑34 и ↓3+31
Комментарии58

Дюк, вынеси мусор! — 3. CMS и G1

Время на прочтение10 мин
Количество просмотров156K
Часть 3 - CMS GC и G1 GC

Сегодня мы продолжаем цикл статей о сборщиках мусора, поставляемых с виртуальной машиной Oracle Java HotSpot VM. Мы уже изучили немного теории и рассмотрели, каким образом с кучей расправляются два базовых сборщика — Serial GC и Parallel GC. А в этой статье речь пойдет о сборщиках CMS GC и G1 GC, первостепенной задачей которых является минимизация пауз при наведении порядка в памяти приложений, оперирующих средними и большими объемами данных, то есть по большей части в памяти серверных приложений.

Два этих сборщика объединяют общим названием «mostly concurrent collectors», то есть «по большей части конкурентные сборщики». Это связано с тем, что часть своей работы они выполняют параллельно с основными потоками приложения, то есть в какие-то моменты конкурируют с ними за ресурсы процессора. Конечно, это не проходит бесследно, и в итоге они разменивают улучшение в части пауз на ухудшение в части пропускной способности. Хотя делают это по-разному. Давайте посмотрим, как.
Посмотреть, как
Всего голосов 33: ↑31 и ↓2+29
Комментарии42

Ассемблер Intel-4004 — для развлечения

Время на прочтение4 мин
Количество просмотров33K
intel-4004 cpu

Недавно мне показали эмуляторы ассемблера для Intel-4004 и я на некоторое время «зависла». Это «дедушка» нынешних процессоров — если верить статье википедии — первый коммерчески распространённый микропроцессор.

Вряд ли его сейчас можно использовать для каких-то серьёзных целей. А вот просто поломать голову (вместо brainf**k) — ну, это то чем я занялась. Главное он 4-разрядный и набор команд довольно небольшой (до того я знала только немножко x86-й, по мучительному институтскому курсу).

Ниже идет вольный перевод-пересказ вот этой инструкции по ассемблеру для Intel-4004 — и краткие замечания о моих попытках написать что-нибудь на нём.

Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Комментарии36

Сравни меня полностью. Рефлексия на службе .NET разработчика

Время на прочтение23 мин
Количество просмотров32K


Недавно передо мной встала следующая задача: необходимо сравнить множество пар объектов. Но есть один нюанс: объекты — самые что ни на есть object'ы, а сравнивать нужно по всему набору публичных свойств. Причём совершенно необязательно, что типы сравниваемых объектов реализуют интерфейс IEquatable<T>.

Было очевидно, что следует использовать рефлексию. Однако при реализации я столкнулся со множеством тонкостей и в конечном счёте прибегнул к чёрной магии динамической генерации IL. В этой статье я хотел бы поделиться опытом и рассказать о том, как я решал эту задачу. Если Вас заинтересовала тема, то прошу под кат!
Читать дальше →
Всего голосов 34: ↑31 и ↓3+28
Комментарии20

Криптоанализ «Энигмы»

Время на прочтение7 мин
Количество просмотров83K
image

All specialists unanimously agreed that a reading [of the Enigma] is impossible.
Admiral Kurt Fricke, Chief of Naval War Command

Энигма — роторная шифровальная машина, использовавшаяся нацистской Германией в годы Второй мировой войны. Благодаря влиянию, оказанному на ход войны, взлом Энигмы стал, возможно, самым ярким моментом в многовековой истории криптоанализа. В этом топике я бы хотел рассказать о методе взлома, использовавшимся в Блетчли-парк, а так же описать устройство самой машины.
Читать дальше →
Всего голосов 56: ↑53 и ↓3+50
Комментарии20

Админка как юнит тест для HTTP API

Время на прочтение6 мин
Количество просмотров10K
Приветствую, коллеги. Множество сервисов в интернет предоставляют HTTP API для разработчиков. Есть много статей как это сделать правильно, не меньшее количество рассказов как получилось неправильно, и могучая кучка критики что получилось у других. Хорошее API сделать трудно — оно постоянно пытается выпасть из кошелька миллера, обзавестись циклическими зависимостями среди сущностей и засунуть бедного разработчика в прокрустово ложе сценариев использования “как их видят разработчики”. Свои пять копеек добавлю и я — под катом забавный, но рабочий способ, который мы используем для укрощения нашего немаленького HTTP API
Заглянуть под кат
Всего голосов 17: ↑15 и ↓2+13
Комментарии2

Информация

В рейтинге
Не участвует
Откуда
Praha, Hlavni Mesto Praha, Чехия
Дата рождения
Зарегистрирован
Активность