Search
Write a publication
Pull to refresh
2
0

Программист

Send message

Борьба с DDoS глазами Highload Lab

Reading time15 min
Views73K
O трендах и тенденциях в DDoS-атаках рассказывает создатель Highload Lab и сети фильтрации трафика QRATOR Александр Лямин. Интервью мы брали еще в начале года, но изменилось пока немногое



DDoS-атаки появились на заре интернета. Знакомство с ними для меня лично началось во время проекта IT Territory в 2003 году, когда игра только стартовала. Она имела достаточно агрессивную рекламную кампанию, в ответ на которую тут же прилетел DDoS от конкурентов. Скажу честно, я растерялся. Больше всего из-за того, что компания, которая оказывала хостинг-услуги, не просто не смогла, а не пожелала бороться с атакой. Ее представители сказали, что это не их проблема.
Читать дальше →

Чип для распознавания 3D-жестов через электрическое поле

Reading time2 min
Views23K


Крупный американский производитель полупроводниковых устройств Microchip Technology объявил о выпуске первого в мире чипа MGC3130, способного определять положение объекта в пространстве по изменению в электрическом поле. Звучит мудрёно, но на самом деле подобная технология сулит настоящий прорыв в создании интерфейсов. Это означает, что можно создавать дешёвые устройства без камеры, которые способны точно отслеживать положение объектов в пространстве и распознавать 3D-жесты с разрешением 150 dpi.
Читать дальше →

Прогресс в разработке нейросетей для машинного обучения

Reading time3 min
Views44K
В пятничном номере NY Times опубликована статья о значительных успехах, который демонстрируют в последние годы разработчики алгоритмов для самообучаемых нейросетей. В глубоких структурах есть несколько скрытых слоёв, которые традиционно тяжело было обучать. Но всё изменилось с использованием стека из машин Больцмана (RBM) для предварительной тренировки. После этого можно удобно перенастраивать веса, применяя метод обратного распространения ошибки (backpropagation). Плюс появление быстрых GPU — всё это привело к существенному прогрессу, который мы наблюдаем в последние годы.

Сами разработчики не делают громких заявлений, чтобы не поднимать ажиотаж вокруг нейросетей — такой, как в 1960-е годы поднялся вокруг кибернетики. Тем не менее, можно говорить о возрождении интереса к исследованиям в этой области.
Читать дальше →

Грязный, чистый, устремлённый

Reading time8 min
Views46K

Грязный


Давайте вместе поразмыслим — что же такое чистый код, и что такое код грязный? Или, как говорят американцы – «hairy code», т.е. волосатый?

Чем чистый код отличается от грязного – или, как говорят в этих наших интернетах, от «говнокода»? Да и нужен ли он вообще, этот чистый код?


Давайте сначала разберёмся с определениями.

Мне кажется, что дать чёткого определения «чистому» коду просто невозможно. Отчасти это – как с красотой: смотришь на картину, или там скульптуру – и видишь: да, красива. Или, наоборот, уродлива.
А что же с чистым и устремлённым?

Онлайн-инструменты для кодеров

Reading time2 min
Views286K
Онлайн-сервисы становятся все популярнее, постепенно усложняя функционал и улучшая интерфейсы. В этой подборке представлены онлайн-инструменты для кодеров.

Cloud9


«Это Google Docs, только для кода» — так говорят о проекте. Облачный сервис вырос из Mozilla Bespin. Основные фишки: SSH, drag-and-drop и возможность разработки оффлайн.

Читать дальше →

Школьницу в Техасе отстранили от занятий за отказ носить RFID

Reading time2 min
Views77K


В Техасе разгорается скандал, связанный с пилотным проектом министерства образования под названием Student Locator, который сейчас тестируют в двух школах Сан-Антонио. Проект предусматривает отслеживание учащихся через радиометки (RFID), которые автоматически регистрируются на входе в учебное заведение.

Большинство родителей и администрация довольны техническим нововведением: теперь они всегда знают, во сколько ребёнок пришёл и ушёл. Можно настроить уведомление по SMS о каждом входе/выходе ребёнка из школы. Говорят, что существенно повысилась посещаемость занятий, тем более что по всей школе разместили 200 видеокамер наблюдения.
Читать дальше →

Работая в интересах Будущих Разработчиков

Reading time11 min
Views16K
Успешный программный продукт обычно проходит за свою жизнь через руки множества разработчиков. Вы — лишь одно из звеньев в цепочке опекунов вашего проекта, и каждая строчка кода, которую Вы написали — это оставленный Вами артефакт, который когда-нибудь будет изучаться Будущим Разработчиком. Также, как Вы унаследовали решения разработчиков, которые были до Вас, другие разработчики унаследуют решения, которые Вы приняли сегодня. Они получают от нас в наследство все наши недоразумения, срезанные нами углы, примененные нами недопонятые паттерны и техники, наше невнимание к деталям, нашу лень, наши изменения, сделанные на скорую руку, наших скелетов в шкафах, наше грязное белье. И гораздо реже — выгоду от нашей дисциплинированности, наших обсуждений и подготовок.


Хочу очистить свою совесть!

Как сделать приложение для iPhone лучше?

Reading time4 min
Views31K
Давно собирался сделать разбор интерфейсов и логики взаимодействия некоторых iOS приложений. С одной стороны это хорошее упражнение для меня как дизайнера, с другой стороны, вдруг, я окажусь прав в своих мыслях, и разработчики прислушаются и улучшат свои творения, даже если их нет в данной заметке.

1. Альфа-Банк

image
Читать дальше →

Сайт для программиста [на Node.js]. Просто. Стильно. Бесплатно

Reading time5 min
Views93K

Большинству программистов нужен сайт или хотя бы своя страничка в сети. Да что там программистам, почти у всех обычных людей уже есть свой сайт, пусть даже в виде аккаунта Вконтакте.

Меня аккаунт Вконтакте, и даже в Фейсбуке в качестве своего сайта не устраивает. Слишком много лишнего, навязанный формат и прочие неудобства.

Если бы я не был веб-разработчиком, мне пришлось бы плакать и грызть кактус. К счастью, я им являюсь, поэтому решил сделать себе сайт сам. Чтобы выкладывать на нём статьи вроде этой, небольшие хобби-проекты, и чтобы было что указать в поле «сайт» профиля на Хабре.

Если вы тоже хотели бы иметь сайт, который полностью контролируете, на котором всё именно так, как вам хочется, но всё никак руки не доходили разобраться и сделать, то эта статья для вас.

Некоторые знания HTML и JS вам пригодятся. Опыт работы с Node.js не обязателен.

Читать дальше →

IBM провела симуляцию нейрокомпьютера, сопоставимого с мозгом человека

Reading time2 min
Views76K
На конференции Supercomputing 2012 компания IBM представила результаты работы нейросимулятора Compass на суперкомпьютере Sequoia (второе место в мировом рейтинге суперкомпьютеров). Впервые был достигнут масштаб, соответствующий человеческому мозгу — 530 миллиардов нейронов и 137 триллионов синапсов. Симуляция происходила в 1542 раза медленнее реального времени. В ней были задействованы все 1 572 864 ядер и полтора петабайта памяти.

Compass — система симуляции новой компьютерной архитектуры TrueNorth, которую в IBM называют «старшим братом Watson». В отличие от привычных нам компьютеров, основанных на архитектуре фон Неймана, TrueNorth построен по образу и подобию мозга, на базе разработанных IBM "нейросемантических ядер" — чипов, содержащих кремниевые нейроны и синапсы. Каждый чип содержит 256 нейронов, 1024 аксона и 256х1024 синапса. Площадь чипа, произведённого по 45-нанометровой технологии — 4.5 мм2. В рекордной симуляции была смоделирована работа 2084 миллиардов таких ядер.
Читать дальше →

Письмо дизайнера — верстальщикам

Reading time3 min
Views44K
После прочтения очередной статьи и комментариев к ней, я в который раз убедился, что слово «дизайнер» для программистов является синонимом доброй половине словоформ «Большого словаря русского забористого мата».

На просторах сего сайта, в виду специфической аудитории ресурса, часто любят выражать своё негодование по отношению к методам работы начинающих «дизайнеров». Но нужно понимать, что частая встреча с непрофессиональным уровнем работы обусловлена низкой стоимостью выбираемых для сотрудничества дизайнеров и чуть более чем полным отсутствием общения между дизайнером и технарём (желанием «и рыбку съесть и на люстре покататься»).

Тот дизайнер, который ценит своё время, любит порядок в работе, разукрашивает папки и обзывает слои вменяемыми именами, а иногда даже оставляет «сноски в фотошопе в трудных для понимания местах» мгновенно переходит на следующий уровень с соответствующим ценником. И даже если финансы позволяют вам воспользоваться их услугами – их очень не просто найти, так-как соотношение между «дизайнерами-новичками» и «дизайнерами-со-скиллом-именования-слоёв» стремится к 80% — 20% или даже 90% — 10%.

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

Читать дальше →

Зверюшки на CSS3 transitions & transforms

Reading time4 min
Views30K

Пора


Одним прекрасным вечером увидел одну забавную картинку с подобными зверюшками и решил вдохнуть в них жизнь. Решил я это сделать ради научного эксперимента: выявить, действительно ли эти нововведения можно претворять в жизни.
Более 65% пользователей уже могут увидеть transitions в действии.

CSS


Демо Код на jsfiddle
Так как я люблю CSS, решил сделать интерактивных зверюшек на чистом CSS, без каких-либо скриптов.
Благодаря псевдоклассу :checked, можно реализовать действие по клику, что обычно приписывается на js. А также используя уже привычные псевдоклассы :hover и :active, я оживил зверюшек:
.pavepy .body .hand.left,
.pavepy:hover .body .hand.right,
input:checked + .pavepy .body .hand.right,
input:checked + .pavepy:hover .body .hand.left,
input:checked + .pavepy.fox .head .ear.right {
	-webkit-transform: rotate(-30deg);
	-moz-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	-o-transform: rotate(-30deg); 
	transform: rotate(-30deg);
}

Читать дальше →

Гитарные табулатуры 2.0

Reading time1 min
Views22K
Табулатуры — популярная альтернатива нотной записи. Многие музыканты предпочитают табы, потому что они лучше приспособлены к особенностям конкретного инструмента, чем более универсальная нотная запись. В интернете можно отыскать табы практически к любой музыке. Многие сайты с библиотеками табулатур позволяют воспроизводить песню в формате MIDI синхронно с прокруткой табов. К сожалению, гитара в MIDI-варианте звучит просто кошмарно.

Адриан Головатый, веб-программист (один из авторов фреймворка Django) и гитарист-любитель создал веб-приложение Soundslice, которое позволяет работать с табулатурами более удобным и современным образом. Для озвучивания табов используется не MIDI, а видео с Youtube, синхронизированное с дорожкой табов. Видео можно зацикливать на выбранном фрагменте, а в браузерах на движке Webkit — замедлять вдвое без изменения высоты тона. Создавать табулатуры можно коллективно — любой зарегистрированный пользователь может добавить свою дорожку к уже существующему проекту.
Читать дальше →

Настройка Nginx + LAMP сервера в домашних условиях. Часть 1: Настройка frontend — backend

Reading time8 min
Views85K

Здравствуйте. Недавно я задавал вопрос по поводу создания цикла статей. Вот первая статья.

В этом цикле статей вы узнаете как грамотно настроить LAMP сервер, аля «хостинг только мощней».
Мы будем использовать следующий стек: nginx — apache-mpm-itk — mod_php — mysql — linux/debian.

Буду освещать следующие темы:
  • Настройка frontend — backend
  • Расчет возможностей сервера, настройка mysql и backend
  • Рассказ об опыте на базе intel s3420gp

Совершенно уверенно могу сказать, что настройка LAMP сервера не ограничивается 6-10 командами установки и раскомментирования определенных строчек в файлах настройки.
Пример: по умолчанию nginx не дает возможности закачать на сервер тело запроса больше чем 1M. Если не настроить данный параметр, будет возникать ошибка 414 (Request-URI Too Large), при попытке добавления небольшой серии фотографий.
У apache совершенно противоположное: у него тело запроса по умолчанию не ограничено. Это делает возможным совершать пакости.

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

Мы узнаем о том какие бывают простые атаки и как от них защищаться. Сразу скажу, что при базовой конфигурации frontend в лице nginx — backend apache все равно остается уязвим.

Я практически уверен, что я не смогу уместить все в одну статью. Добро пожаловать под кат.
Читать дальше →

Простой личный анонимайзер

Reading time2 min
Views90K
В свете последних событий и вероятного будущего, нам всем может понадобиться удобная утилита, которая позволяет смотреть на Web глазами цивилизованного европейца, а лучше голландца. Это может быть нужно для проверки доступности сайта, обхода слишком навязанного геотрекинга, неуместного черного списка или для осуществления любой другой легитимной законной деятельности в интернетах, которую нам не позволяют в данной сети неправильно сконфигурированный шлюз или прокси-сервер.

Конечно, можно воспользоваться публичным анонимайзером, ТОРом или VPN'ом, но это не всегда удобно и не всегда возможно: например, публичный терминал в интернет-кафе или любой компьютер, на котором у нас нет прав, не позволит нам воспользоваться TOR'ом или VPN, а «анонимные прокси» вообще вещь в себе: никогда не знаешь как монетизирован именно этот хост. Личный анонимайзер же будет работать на любом устройстве и с большой вероятностью не будет заблокирован на бордере. Предлагаемый метод не отменяет TOR или VPN (или SSH), а дополняет их возможностью доступа с чужих хостов.

Нулевое необязательное требование: домен. Это около 10 долларов в год, в принципе не обязательно, но удобно и желательно.

Во-первых, нам понадобится личный экзит-поинт в нужной стране. К нашим услугам www.leaseweb.com, где всего за 9 евро в месяц можно пользоваться VPS'кой. Очень полезный в хозяйстве инструмент для многих нужд! На этом хосте должен быть настроен Apache и PHP, я опущу этот вопрос, так как он достаточно подробно освещен другими.

Во-вторых, нам понадобится скрипт, который будет показывать собственную адресную строку, искомый сайт во фрейме ниже и будет обладать другими полезными опциями вроде скрэмблера URL'ов, выкидывания всего embedded-хлама и кукисов, хранение кукисов на стороне сервера и т.п. Решений несколько, простое и работающее — Glype Proxy, который можно взять на glype.com.

Установка скрипта проста.
Читать дальше →

Арсенал веб-дизайнера

Reading time2 min
Views162K
В интернете существует множество сайтов, помогающих веб-дизайнеру в работе: ресурсы с иконками, плюшками для фотошопа, UI-китами, шрифтами, вдохновляющими работами других дизайнеров и многим другим. В этой статье я постарался собрать самые полезные сайты для веб-дизайнеров.

Большие и популярные сайты


Behance - работы лучших дизайнеров со всего мира

Читать дальше →

Проксируем и спасаем

Reading time7 min
Views168K
1 ноября мир изменился и больше никогда не будет таким же как прежде. В российском интернете появилась цензура — общеизвестный уже список запрещенных сайтов. Для одних это важнейшая политическая тема, для других повод изучить технологии шифрования и защиты анонимности, для третьих просто очередной странный закон, который приходится исполнять на бегу. Мы же поговорим о технологическом аспекте.

В данном пособии мы узнаем как быстро и просто сделать рабочее зеркало любого сайта, что позволяет сменить IP и назначить любое доменное имя. Мы даже попробуем спрятать домен в url, после чего можно сохранить локально полную копию сайта. Все упражнения можно сделать на любом виртуальном сервере — лично я использую хостинг Хетцнер и OS Debian. И конечно мы будем использовать лучший веб-сервер всех времен и народов — NGINX!

К этому абзацу пытливый читатель уже приобрел и настроил какой нибудь выделенный сервер или просто запустил Linux на старом компьютере под столом, а так же запустил Nginx последней версии со страничкой «Save me now».
Cкорее кого-нибудь спасем

Уязвимость в skype, позволяющая угнать любой аккаунт

Reading time2 min
Views444K


Месяца три назад я писал об этой критической уязвимости в skype support, но она до сих пор не исправлена (уже исправлена).

Сразу скажу, что саму уязвимость я целиком не знаю(уже известна), но в последнее время начались массовые угоны аккаунтов.

Для реализации атаки необходимо лишь знать логин скайпа и e-mail жертвы.
Читать дальше →

Lo-Dash

Reading time2 min
Views33K
Прим. переводчика: underscore.js — одна из самых известных и любимых javascript-библиотек. Но мало кто знает, что есть её более удачный клон. В одном из своих проектов мы без каких-либо проблем перешли на него и теперь решили познакомить с ним других читателей Хабрахабра.

Lo-Dash — это полноценная замена* для Underscore.js. Lo-dash имеет более высокую производительность, избавлен от некоторых багов underscore и даёт некоторые новые возможности.


Читать дальше →

Vreen — простая и удобная библиотека для работы с vk.api

Reading time7 min
Views40K

Представляю вам новую Qt библиотеку для работы с vk api, которая может пригодиться вам при создании любых настольных и мобильных приложений, взаимодействующих с vk. Проект родился из vkontakte плагина для qutIM'а и перерос в отдельную независимую библиотеку, которой теперь может пользоваться каждый.
Читать дальше →

Information

Rating
9,495-th
Location
Кишинев, Молдова, Молдова
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
Senior
From 5,000 €
PHP
PostgreSQL
SQL
JavaScript
Laravel
Symfony
OOP
Git
English
Database