Search
Write a publication
Pull to refresh
4
0
Александр @Weageoo

Пользователь

Send message

Страсть к программированию. Глава 10. Полюби это или брось

Reading time5 min
Views35K
image
Вернул из черновиков

О переводе


Это перевод 10 главы книги The Passionate Programmer: Creating a Remarkable Career in Software Development. Её автор — Chad Fowler — талантливый Ruby-разработчик, известный докладчик на конференция, посвящённых Ruby и IT в целом. Бывший саксофонист, а сейчас — CTO 6Wunderkinder.

В книге говорится о разных аспектах карьеры программиста, даются интересные советы как начинающим разработчикам, как так устоявшимся профессионалам. Книга состоит из 53 глав (кроме того, после некоторых глав есть интересные рассказы, один из которых уже дважды переводили на Хабре). Главы достаточно независимы и можно знакомиться с ними в любом порядке. Книга понравится многим программистам, которым интересен взгляд заслуженного профессионала на современную карьеру в IT. И конечно, я рекомендую купить данную книгу в электронном или печатном виде в знак благодарности автору.
Читать дальше →

Видео-курс по JavaScript на русском языке

Reading time1 min
Views218K
Здравствуй, Хабр!

Представляю вам свой курс по JavaScript, недавно прошедний на Хекслете. Курс состоит из семи лекций общей продолжительностью около четырех часов.



Первая лекция: Введение в JavaScript, немного истории, числа (тут есть ошибка: функция toFixed округляет значения).



Остальное – под катом.
Читать дальше →

Майнинг и как он работает: матчасть

Reading time6 min
Views563K

Привет, %username%!
Я расскажу и покажу как работает основа генерации денег в криптовалютах — майнинг. Как создается первый блок, новые блоки и как появляются деньги из ниоткуда.
Чтобы было проще понять, мы напишем свой импровизированный майнер для импровизированной криптовалюты HabraCoin.
Читать дальше →

Центробанком России утверждён официальный знак рубля

Reading time6 min
Views100K
Сегодня вдвойне знаменательная дата. Во-первых, сегодня 11.12.13 года. Во-вторых, сегодня Центробанк России наконец-то утвердил официальный знак рубля. Эта история началась ещё в 2006-ом году, когда в статье 4 закона «О Центральном банке России» появился пункт 2.1, разрешающий Центробанку утверждать официальный знак рубля:

закон

Год спустя, летом 2007-го года, была образована инициативная группа специалистов, в которую вошли «Дизайн-депо», «Дизайнет», «Директ-дизайн», «Имадизайн», «Леттерхед», «Паратайп» и студия Артемия Лебедева. 1 августа 2007-го года данная группа представила публике выбранный ими в ходе обсуждения и обмена мнениями знак рубля:
Читать дальше →

Основы разработки клиента сети I2P

Reading time8 min
Views22K
Данная статья предназначена для тех, кто хотел бы разработать собственного I2P клиента «с нуля». Предполагается знакомство с основными концепциям и понятиями I2P. На настоящий момент на это счет имеется достаточно документации и статей, в том числе и переведённых на русский язык. С другой стороны имеется официальная документация, достаточно хорошо описывающая протоколы и форматы сообщений. К сожалению она носит разрозненный характер, при этом многие неочевидные вещи там отсуствуют. Данная статья написана в первую очередь на основе изучения и отладки официального I2P джава-клиента. Конечной целью является реализация полностью на C++. Исходный код проекта в текущем состоянии располагается на github.
Читать дальше →

Общество телефонных зомби

Reading time3 min
Views137K
Многие знают, что я хакер. При этом многих удивляет, когда я говорю, что терпеть не могу технологии. Да, когда я произношу это, я слегка преувеличиваю. На самом деле, меня просто стало раздражать, каким образом технологии вторгаются в нашу жизнь.

Если вы гуляли по любым людным улицам, уверен, вы поймете, о чем я. За последние 3-4 года значительно возросло число людей, уткнувшихся в свои смартфоны во время прогулок и совершенно отстраненных от окружающего мира. Если человеку нужно убить время (или он страдает прокрастинацией), он погружается в пролистывание бесконечных фидов фейсбука, твиттера или тумблера. Черт, я видел, как люди делали это во время просмотра ТВ-шоу, которого они ждали целую неделю.

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

250 строк кода, распознающих дату на русском языке

Reading time2 min
Views47K
Около года назад мне понадобилось распознавать даты в тексте, который вводят пользователи. Пришлось немного разобраться в регулярных выражениях и написать функцию, на вход которой поступает текстовая строка, а в результате получается распознанная дата.



Пример и код в jsFiddle.
Читать дальше →

60 FPS? Легко! pointer-events:none!

Reading time2 min
Views99K


Вы, наверное, уже читали интересную статью о том, как можно отключать эффекты :hover при скроле – это позволяет здорово сохранить отзывчивость сайта, но имеет один недостаток – вам приходится опираться на один общий класс, и это плохо.

.hover .element:hover {
  box-shadow: 1px 1px 1px #000;
}
Читать дальше →

Поддержка USB в KolibriOS: что внутри? Часть 6: драйвер хабов

Reading time8 min
Views9.5K
Последняя часть инфраструктуры USB — хабы. Хотя хабы — отдельные USB-устройства, они достаточно тесно связаны с другими частями инфраструктуры, чтобы спецификация хабов была частью основной спецификации USB, а код поддержки — частью ядра, расположенной в файле bus/usb/hub.inc.

Задачи хабов таковы.
  • Хабы предоставляют питание всем подключённым устройствам.
  • Хабы оповещают хост о подключении и отключении устройств.
  • Хабы делают сброс подключённого устройства, попутно определяя его скорость, по команде с хоста.
  • Хабы транслируют весь трафик, приходящий от хоста, подключённым устройствам в период после сброса и до отключения, а также трафик от устройств в обратную сторону.
  • HighSpeed-хабы содержат Transaction Translator, связывающий HighSpeed-шину с низкоскоростной USB1-шиной.

Трансляция трафика без переключения скорости происходит полностью прозрачно для хоста. Расщеплёнными транзакциями занимается хост-контроллер EHCI, здесь от софта важно только заполнить те поля в аппаратной части структуры канала, которые содержат адрес TT-хаба и порт в TT-хабе — и, разумеется, учитывать время транзакций при планировании. Драйвер хабов управляет остальными пунктами списка задач.


Хабы имеют код класса устройства 9, код подкласса устройства 0 и три варианта 0, 1, 2 для кода протокола. Согласно спецификации USB, HighSpeed-хаб обязан поддерживать режим работы с единым TT для всех своих портов, и дополнительно может, но не обязан, поддерживать режим работы с отдельным TT для каждого порта. Типичный случай — режим с различными TT отсутствует, тогда код протокола равен 0. В случае поддержки такого режима в данных конфигурации должны быть два варианта дескриптора интерфейса с одинаковым номером интерфейса. Тогда код протокола 1 идентифицирует режим с единым TT, который должен быть принят по умолчанию, а код протокола 2 — режим с различными TT, включаемый командой SET_INTERFACE. Существование в живой природе хабов, поддерживающих режим с различными TT, не подтверждено, как и польза от этого режима, поэтому драйвер хабов даже не пытается его обнаружить и включить и просто использует режим единого TT, включённый по умолчанию.

Обнаружив интерфейс класса 9, уровень логического устройства читает структуру usb_hub_callbacks, содержащую указатели на функции драйвера usb_hub_init и usb_hub_disconnect. Работа драйвера начинается, когда уровень логического устройства вызывает usb_hub_init, и заканчивается, когда уровень поддержки каналов вызывает usb_hub_disconnect в ответ на отключение устройства.
Читать дальше →

UEFI — Ааа, слышал… но все же, что это?

Reading time3 min
Views204K

UEFI – взгляд вперед (часть 1/3)


Не так давно приходилось разбираться с тем, что такое UEFI и с чем же его едят. Тема весьма актуальна, а статей на русском языке не очень много. Что же, постараюсь исправить ситуацию и поделиться информацией, кою удалось «нарыть». Для начала, вводная глава для ознакомления с тем, что же такое UEFI и зачем оно нужно.

UEFI (Unified Extensible Firmware Interface) является связующей оболочкой между операционной системой и аппаратной частью (железом). В будущем планируется, что UEFI полностью вытеснит BIOS (Basic Input Output System) и займет его место. UEFI является относительно старой технологией, разработанной в 2005 (Unified EFI Forum) году. Однако, сие высказывание некорректно относительно данной ситуации, так как несмотря на то, что 8 лет довольно большой срок для IT-технологии и в иных сферах за эти годы успевали сменить сразу по нескольку технологий, UEFI изначально развивался довольно медленно и лишь в последние годы стал получать все большую известность. Ниже вы можете ознакомиться с графиком релизов UEFI.



Первоочередной целью при создании UEFI была разработка удобной и многогранной оболочки для 64-х битных систем с более развитым пользовательским интерфейсом и сетевым контролем.
И так, какими же преимуществами обладает UEFI?
Читать дальше →

Microsoft выпустила программу для бесшовной циклической анимации

Reading time2 min
Views67K
При просмотре GIF-анимации или других зацикленных роликов всегда заметен переход от конца видеоролика к началу, как бы скачок на исходную позицию. Специалисты из Microsoft Research выпустили программу автоматической обработки видео, которая элегантно решает эту проблему.



Алгоритмы работы описаны в научной работе. Если вкратце, то программа изолирует все движущиеся объекты в кадре, определяет скорость их движения. После этого осуществляется оптимизация движения элементов таким образом, чтобы первый и последний кадр видеоролика совпадали. Грубо говоря, некоторые объекты нужно чуть замедлить, а другие — чуть ускорить. Оптимизация практически незаметна на глаз и выглядит очень естественно (см видео под катом).
Читать дальше →

Верстка для самых маленьких. Верстаем страницу по БЭМу

Reading time14 min
Views394K
Недавно хабраюзер Mirantus написал статью «Как сверстать веб-страницу», в которой рассказывал о том, как же сверстать веб-страничку. В его статье было подробно рассмотрено, как выделить отдельные элементы из заданного шаблона, подобрать шрифты и т.п. Однако его подход к написанию, собственно, веб-страницы мне показался не очень хорошим, о чем я написал в комментариях.

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

  • BEM
  • Собственно пример — как сверстать страницу

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

Создаем первое приложение на NancyFX. Часть шестая. Nancy.Selfhosting

Reading time2 min
Views6.2K
В завершении цикла статей хотелось бы описать такую важное преимущество NancyFX как Nancy.SelfHosting. Данный модуль Nancy позволяет нам хостить наше приложение без использования IIS, на тех операционных системах где есть .NET или же MONO.
Читать дальше →

Список бесплатных DNS-сервисов

Reading time2 min
Views297K
Обновляю 4-летний список бесплатных сервисов для управления доменами

Primary + Secondary
Сервис Кол-во NS Кол-во доменов Типы записей TTL Доп. фичи
pdd.yandex.ru 2 50 AAAA и SRV + Есть API
cloudflare.com 2 неограниченное AAAA, SRV, SPF, LOC +
2ns.info 4 неограниченное AAAA и SRV + Есть экспорт. Показывает регистратора, дату регистрации домена, дату окончания регистрации, тИЦ. By leonid239
dns.he.net 5 50 все + NS доступны по IPv6. Свой DDNS-сервис
www.netbreeze.net/dns 3 1 AAAA и SRV + Есть API
entrydns.net 3 неограниченное AAAA и SRV + Есть свой DDNS-сервис, REST-api
Читать дальше →

3 режима команды git reset: --soft, --mixed(по умолчанию), --hard

Reading time2 min
Views295K
К моему удивлению на целом хабрахабре нет ни одного поста где бы было понятно написано про 3 вида git reset. Например, во второй по релевантности статье по запросу «git reset» автор пишет что «данное действие может быть двух видов: мягкого(soft reset) и жесткого(hard reset)». Режим --mixed, используемый по умолчанию, почему-то не удостоился упоминания.

Ничего удивительного, что часто видишь непонимание работы этой команды. Под катом коротко и ясно расскажу о всех трёх режимах git reset, после прочтения топика неясностей остаться не должно.
Читать дальше →

Встречайте: Node.js Tools for Visual Studio

Reading time1 min
Views14K
Вы думали, что после Python Tools for Visual Studio, Microsoft нечем больше вас удивить на ниве open source? Что ж, попробуем исправить положение: команда PTVS рада представить вам первую альфа-версию своего нового проекта: Node.js Tools for Visual Studio (далее по тексту – NTVS).

Node.js Tools for Visual Studio
Читать дальше →

Выявление виртуалов в Википедии

Reading time4 min
Views16K
Википедия — свободная общедоступная мультиязычная универсальная интернет-энциклопедия, которая создаётся усилиями многих пользователей. На сегодня Википедия содержит 25 миллионов записей на 285 языках, почти полмиллиарда людей обращаются к ней каждый месяц. По полноте и глубине охвата материала Википедия сравнима со знаменитой Британской энциклопедией. Тысячи добровольных редакторов со всего мира постоянно пополняют её свежими статьями. Благодаря их бескорыстному труду создаётся и развивается это гигантское хранилище знаний.

Википедия стала самым популярным в мире источником общеобразовательных, исторических и научных знаний и входит в топ-10 самых посещаемых сайтов в Интернете. Она привлекает к себе не только тех, кто ищет знания, или хочет ими бескорыстно поделиться, но и маркетологов и PR-менеджеров, пытающихся использовать сайт в качестве рекламной площадки, размещать там заказные проплаченные статьи. Была создана компания Wiki-PR, специализирующаяся на написании и размещении в Википедии статей и правок рекламного характера. Цена размещения одной такой статьи варьировала от 500 до 1000 долларов. Отдельно выплачивался ежемесячный взнос порядка 50-70 долларов за то, чтобы статья или правка не была удалена, или же наоборот, чтобы был удалён и больше не появлялся на страницах Википедии нежелательный для заказчика материал. Этот момент заслуживает особого внимания.
Читать дальше →

Крошечная змейка на JavaScript (30 строк кода)

Reading time2 min
Views112K
Прочитав статью про excel в 30 строк, я загорелся глупой идеей — написать что-нибудь на 30 строк. Не долго думая остановился на змейке.

Особенности:
  • 30 строк необычного JavaScript (задача была уместить в 30 строк, так что код похлеще чем на ночных хакатонах)
  • Использованные библиотеки: отсутствуют



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

Крошечный Excel на чистом JavaScript (30 строк кода)

Reading time2 min
Views137K
Особенности:
  • Около 30 строк обычного JavaScript
  • Использованные библиотеки: отсутствуют
  • Синтаксис как в Excel (формулы начинаются с "=")
  • Поддерживаются произвольные выражения(=A1+B2*C3)
  • Обнаруживаются циклические ссылки
  • Автоматическое сохранение в localStorage

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

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity