Pull to refresh
112
0
nzeemin @nzeemin

Программист

Send message

Учим английский дешево и эффективно

Reading time9 min
Views160K
Английский можно выучить дешево, иногда даже бесплатно. В этой статье я расскажу про личный опыт: какой софт и ресурсы в Интернет оказались максимально эффективными для меня, и как ими правильно пользоваться.

Если вы не готовы тратить на английский хотя бы 2 часа в день, то дальше можно не читать.
Читать дальше →
Total votes 45: ↑40 and ↓5+35
Comments135

learnopengl. Урок 1.1 — OpenGL

Reading time7 min
Views332K
Здравствуйте. Несколько недель назад я начинал серию переводов статей по изучению OpenGL. Но на 4 статье один хабровчанин заметил, что мои переводы могут нарушать лицензию, по которой распространяются учебные материалы, предоставленные в исходной статье. И действительно, мои переводы нарушали лицензию. Для разрешения этой проблемы я обратился к авторам того набора уроков, но так и не смог добиться нормального ответа. По этой причине я связался с автором другого, не менее (а возможно даже и более) крутого, набора уроков по OpenGL: Joey de Vries. И он дал полное разрешение на перевод его набора уроков. Его уроки гораздо более обширные, чем прошлый набор, поэтому эти переводы растянутся на долго. И я обещаю, будет интересно. Заинтересовавшихся прошу под кат.

Также я встал на распутье: либо я опишу все основы вроде создания окна и контекста в одной статье, чтобы не плодить статьи, но в таком случае такую огромную статью не всякий осилит; либо я также как и раньше буду переводить, опираясь на иерархию оригинала. Я решил выбрать второй вариант.

На счет уроков по Vulkan: к сожалению мне тяжело сейчас написать уроки по данному API по причине скудной видеокарты на данный момент, которая просто не поддерживает Vulkan API, поэтому уроки по данному API будут только после обновления видеокарты.
Читать дальше →
Total votes 45: ↑42 and ↓3+39
Comments9

Пол Грэм. Все статьи на русском. Год спустя

Reading time8 min
Views39K
«То, о чем мы думаем в душе по утрам, — гораздо важнее, чем вам может показаться. Это именно то время, когда в голову приходят хорошие идеи. Скажу больше, вы вряд ли преуспеете в деле, о котором не думаете в душе.»
— Пол Грэм


Добрый день, хабрачитатели.

1 сентября 2015, благодаря пинкам ребят из #tceh, я упорядочил все статьи Пола Грэма на русском языке на тот момент (около 60). В этой публикации хочу поделиться тем, что произошло за 13 месяцев.

На начало сентября 2015 я прочитал около 10 статей Пола Грэма, теперь мое количество статей — 125.

Мы так же успели дожать до победного перевод книги Грэма «Хакеры и Художники» и сейчас идет переписка с издательством O'Reilly на тему издания на русском.

Обновление подборки переводов Грэма и история поиска/создания этих переводов — под катом.
Total votes 43: ↑42 and ↓1+41
Comments1

Чек-лист вёрстки. Что можно отдавать клиенту, а что надо переделывать

Reading time20 min
Views315K
Идеальная вёрсткаВы PM. Как узнать – готова ли вёрстка к реальному использованию?
Вы заказчик. Как убедиться, что работа выполнена качественно?
Как оценить качество вёрстки?

Когда я стал тим-лидом, а позже PM, передо мной стала задача проверять вёрстку наших проектов. Нужно было выработать формальные, легкопроверяемые критерии, соответствие кода которым, должно было давать некую гарантию, что не будет факапов и ни клиент, ни программеры не сказажут потом “WTF?”.

Клиенту неважно насколько красив ваш код, но ему важен результат. Качественный код нужен фирме, т.к. он надёжней и в будущем его будет легче поддерживать.

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

Итак что же это за список?

Краткая версия теперь доступна на html5checklist.com (github), где можно вносить pull-request'ы.

История обновлений:
  • 2015/08/11: Актуализировал рекомендации по оптимизации скорости загрузки. Добавил требование поддержки Retina. Дополнил «19. Мелочи» требованием что изображения должны масштабироваться в зависимости от размера окна.
  • 2015/08/10: актуализирован список исключений для CSSLint
  • 2015/07/29: актуализирован пункт №13 «плохо»/«хорошо»
  • 2015/04/08: добавлено требование использования препроцессоров и рекомендация использования систем сборки
  • 2013/04/25: добавлены анализаторами качества кода: CSSLint и JSHint, указан сайт подбора css font stack (спасибо @fliptheweb), мелкие уточнения (работу интерактивных элементов страницы, что не пропадает фон на высоких разрешениях, не должно быть пустых презентационных блоков, при проверках контента — пробовать удалять заголовки, менять местами блоки)
  • 2013/04/24: добавил пункт об минимизации каскада (БЭМ-техники, MCSS, SMACSS), необходимости вписывания в экран моб. устройства, заменил ссылку на проверочный текст отображения стандартного html на код с normalize.css, поправил пример где в рекомендации встречался длинный каскад, упомянул про Opera на Presto и новый уровень семантики — в именах классов BEM.
  • 2012/04/12: отсортировал пункты проверки в порядке важности, выделил главные, дополнил статью подробностями
  • 2011/12/07: дополнил согласно доклада на WSD Минск'2011.
  • 2011/07/19: добавлено про повышение надёжности вёрстки благодаря html5-тэгам, про необходимость favicon/apple-touch-icon, отсутствие багов при ресайзе textarea
  • 2011/06/15: добавил пояснения какие ошибки валидации допустимы, рассказал про отсутствие официальной кнопки «HTML5 Valid» и про официальное лого HTML5 на сайте.


Далее с примерами - как проверить html, даже если вы ничего не понимаете в вёрстке.
Total votes 335: ↑318 and ↓17+301
Comments244

Релиз ReactOS 0.4.2 и запуск в VirtualBox

Reading time3 min
Views35K
Проект ReactOS объявил о выпуске нового релиза ReactOS 0.4.2. Как и ожидалось это произошло через три месяца после предыдущего релиза.

Лично я за проектом ReactOS наблюдаю уже много лет и каждый раз верю, надеюсь и жду. Именно этому новому релизу я наконец-то могу посвятить пост, т.к. по моим объективным ощущениям ReactOS стал обладать тем минимально допустимым функционалом, который позволяет серьёзнее взглянуть на этот продукт. Сегодня мы посмотрим, что нового появилось в новом релизе ReactOS, а также разберём, как установить ReactOS в VirtualBox.
Читать дальше →
Total votes 64: ↑48 and ↓16+32
Comments52

Node.js и JavaScript вместо ветхого веба

Reading time17 min
Views28K

Вступление


Эта статья про экспериментальный технологический стек общего назначения. Она не просто дублирует мой доклад на конференции ОдессаJS 2016, но содержит все то, что в доклад не поместилось из-за недостатка времени и исключительного масштаба темы. Я даже перезаписал доклад голосом по тексту статьи и это можно послушать, а не читать. С этой темой я уже выступил в Уханьском Университете (Китай), а в Киевском Политехническом Институте провел целую серию семинаров в 2015-2016 годах. Основная идея состоит в том, что проблемы фрагментации технологий могут быть решены, если спроектировать весь технологический стек, сконцентрировавшись на структурах данных, синтаксисе и протоколе взаимодействия компонентов. Большинство вопросов несовместимости, отпадет само собой. Пусть даже этот подход будет альтернативным и экспериментальным, но его задача будет выполнена, если он наметит путь и продемонстрирует принципиальную возможность создания простого и элегантного решения общего назначения. Эта идея является естественным продолжением подхода Node.js, когда мы сокращаем количество языков и технологий в системе, разрабатывая и клиент и сервер на JavaScript. Несмотря на экспериментальность, протокол JSTP уже используется в коммерческих продуктах, например, для интерактивного телевидения компанией SinceTV, где позволяет подключить одновременно десятки миллионов пользователей. Это решение получило приз за инновации в области телевидения на международном конкурсе Golden Panda Awards 2015 в Ченду (Китай). Есть внедрения в сфере управления серверными кластерами, готовятся решения для медицины, интерактивных игр, электронной торговли и услуг.



Слайды / Аудио версия


Читать дальше →
Total votes 40: ↑25 and ↓15+10
Comments95

Свободная наука. НАСА выложило научные работы в открытый доступ

Reading time4 min
Views21K


НАСА запустило веб-портал PubSpace, на котором опубликовало в открытом доступе результаты почти всех своих научных исследований, финансируемых правительством (то есть за счёт налогоплательщиков). Если общество заплатило за проведение исследований, то результаты должны быть свободно доступны для всех, рассудили в администрации.

«Мы в НАСА радуемся возможности расширить доступ к нашему обширному портфолио научных и технических публикаций, — сказал заместитель руководителя НАСА Дава Ньюман (Dava Newman). — Приглашаем мировое сообщество присоединиться к нам в исследовании Земли, воздушного пространства и космоса».
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments57

Вопросы Хейлмейера, Пирса и ответы наших разработчиков

Reading time14 min
Views9.1K
При заявке на гранты, при презентации проектов инвесторам и начальникам часто рекомендуют подготовить ответы на наборы типичных вопросов.

C использованием комбинации опросников Пирса и Хейлмейера проведено анкетирование разработчиков KolibriOS по активно развивающимся направлениям: поддержке файловых систем, файловому менеджеру Eolite, драйверам для видеокарт, языку программирования Forth, интегрированной среде разработки для ЯВУ, портированию браузера Netsurf. Подробности под катом.
Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments12

Реверс-инжениринг КР580ВМ80А / i8080 завершен

Reading time2 min
Views166K
Рад сообщить, что реверс-инжениринг КР580ВМ80А полностью завершен. Получена полная принципиальная схема и Verilog-модель. В невероятно короткие сроки схему восстановил Vslav 1801BM1 (1801ВМ1@gmail.com).

Оказалось, в КР580ВМ80А ровно 4758 транзисторов (а не 6000 или 4500, как иногда ошибочно упоминают).

Топология КР580ВМ80А похожа, но не идентична i8080. Тем не менее, отличий в реализации опкодов КР580ВМ80А не было обнаружено.

Verilog-модель успешно прошла зубодробительный тест качества симуляции и как Verilog-модель, и как FPGA заменяя реальный КР580ВМ80А в "Специалисте".

Файлы: Главная модель Verilog, схема, Полный пакет файлов.
Читать дальше →
Total votes 159: ↑157 and ↓2+155
Comments95

Идеальный Мини-Хакинтош

Reading time6 min
Views132K
image

Когда в 2005 году Apple перешла на платформу Intel, энтузиасты со всего мира задались целью установить MAC OS X на обычные PC (Хакинтош). На пути реализации этой затеи стояли четыре причины. 2 физические и 2 юридические. Дело в том, что для запуска компьютера MAC используется не привычный BIOS, а собственный EFI загрузчик. Вторая причина, это чип SMC который установлен в каждом компьютере Mac. Он генерирует ключи для запуска всех системных приложений MAC OS X. Благодаря нашему соотечественнику под ником Netkas, удалось обойти эти два ограничения созданием эмулятора загрузчика EFI (Chameleon, Chemera, Clover) и эмулятора чипа SMC (FakeSMC.kext). Этих двух программных решений достаточно, что бы установить MAC OS на PC.
Читать дальше →
Total votes 63: ↑48 and ↓15+33
Comments125

Короткая шпаргалка по блокировкам при чтении и изменении данных в зависимости от уровня изоляции транзакции в MSSQL

Reading time3 min
Views38K
Read Uncommitted

  • если в одной транзакции поменять данные — селект этих данных (в другой транзакции или без транзакции) не будут ждать окончания первой транзакции и вернут записанные данные незакомиченных транзакций
  • если в одной транзакции считать данные — апдейты этих данных в другой транзакции не будут ждать окончания первой транзакции
  • шаред локи не используются. Что аналогично установке NOLOCK хинта во все селекты в Read Commited
  • эксклюзивные локировки устанавливаются в процессе выполнения стейтмента и снимаются по окончанию транзакции


Read Committed + read_committed_snapshot off

(alter database xxx set read_committed_snapshot off)

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


Дальше
Total votes 19: ↑19 and ↓0+19
Comments26

Проецируя Google Material Design на десктопную систему… (часть вторая)

Reading time5 min
Views25K


Краткое содержание первой части: контрактный клиент, редизайн их собственной CRM-ки, стиль Google Material, привычная среда обитания, аудитория — опытные айтишники. Кто не вдохновился первой частью и остальных тоже — приглашаю под кат.
Читать дальше →
Total votes 25: ↑18 and ↓7+11
Comments40

Как работает 3D эмулятор 8-битных NES игр?

Reading time3 min
Views23K


Еще в марте один из обозревателей ресурса Kotaku обнаружил браузерную бета-версию эмулятора NES. Этот эмулятор умеет превращать «плоские» 8-битные игры в трехмерные. Как сообщалось, написан этот эмулятор на JavaScript. Работает он в браузере Firefox. Программа умеет добавлять тени и горизонтальные поверхности к вертикальным. «Трехмерный» эмулятор работает с образами игр (ROM) — так же, как и обычные эмуляторы.

Сейчас вышла финальная версия программы в виде приложения под Windows. Разработчики выложили бесплатную и платную ($4.99) версию приложения. Вероятно, создатели софта рассчитывают на любителей классических NES игр, готовых расстаться с 30 долларами в обмен на новые ощущения при игре в хорошо знакомые Duck Tales, Super Mario Bros. или Mega Man. На днях создатели эмулятора прояснили принцип его работы и показали, как можно провести настройку ряда игровых элементов, если алгоритм эмулятора не справляется с какой-либо игрой самостоятельно.
Читать дальше →
Total votes 28: ↑21 and ↓7+14
Comments33

Взломать Wi-Fi за 10 часов

Reading time12 min
Views1.5M
Еще не так давно казалось, что беспроводная сеть, защищенная с помощью технологии WPA2, вполне безопасна. Подобрать простой ключ для подключения действительно возможно. Но если установить по-настоящему длинный ключ, то сбрутить его не помогут ни радужные таблицы, ни даже ускорения за счет GPU. Но, как оказалось, подключиться к беспроводной сети можно и без этого — воспользовавшись недавно найденной уязвимостью в протоколе WPS.


Читать дальше →
Total votes 304: ↑294 and ↓10+284
Comments164

«Наири»: выдающаяся машина выдающегося разработчика

Reading time10 min
Views20K
Машины семейства «Наири» сыграли значительную роль в развитии компьютеростроения СССР и стали достойным ответом западным ЭВМ. Наряду с развитием машины формировалась и карьера главного конструктора — Грачьи Есаевича Овсепяна. Жизненный путь этого талантливого человека был тернистым и нелегким, заполненным разработками и противостоянием с системой.



Начало истории


Будущий конструктор Грачья Овсепян родился в 1933 году в Ливане. В 1946 году вместе с семьей репатриировался в Армению, где закончил физический факультет Ереванского государственного университета. В 1956 году он попал на работу лаборантом в только что организованное режимное предприятие по созданию вычислительных машин — Ереванский научно-исследовательский институт математических машин (ЕрНИИММ). Руководил институтом математик, член-корреспондент Академии наук СССР и действительный член Академии наук Армянской ССР Сергей Никитович Мергелян.

Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments13

Русский перевод выступления Алекса Ионеску «Сумасшедшая попытка переписать Windows с нуля»

Reading time2 min
Views53K
image 12 ноября 2013 года мы опубликовали видео выступления Алекса Ионеску (который известен российской аудитории, в первую очередь, как соавтор книг серии Windows Internals), посвященное операционной системе ReactOS. К сожалению, тогда в нашем распоряжении не было качественных субтитров на английском, а тем более перевода на русский язык. Но теперь, благодаря помощи волонтеров, эти упущения были исправлены. Юзер Black_Fox на сервисе translatedby.com создал правильные английские субтитры на основе автоматических субтитров youtube, а сообщество переводчиков ресурса Notabenoid перевело их на русский язык.



Переводчики: gste, leha_bot, Goudron, elnardu, x4fab, music_maniak, rumorukato, AHgpyxA, steven_quartz, jeditobe, Ctulhu31, RooGLM, peterder72, mariocca

Скачать через торрент magnet:?xt=urn:btih:15E110B8DA04E6907FC4AE07C90C180FCE3E590C&dn=ReactOS%20Alex%20Ionescu&tr=udp%3a%2f%2ftracker.openbittorrent.com%3a80%2fannounce&tr=udp%3a%2f%2ftracker.opentrackr.org%3a1337%2fannounce


Читать дальше →
Total votes 39: ↑28 and ↓11+17
Comments54

Каково это — быть разработчиком, когда тебе сорок

Reading time18 min
Views229K
Примечание от переводчика:

Этот пост был написан и опубликован на Medium разработчиком приложений Адрианом Космачевским из Швейцарии. Кроме подготовки перевода его публикации, я также пригласил и самого автора, Адриана ( akosma ), на Хабр, для того, чтобы он смог лично ответить на любые вопросы участников сообщества, если таковые возникнут. Думаю, для общего удобства при общении в комментариях с ним стоит использовать английский (и, при желании, дублировать на русском).



Привет всем, я — сорокадвухлетний программист-самоучка, а это моя история.

Пару недель назад я наткнулся на твит, в котором была картинка, прикрепленная ниже, и он заставил меня задуматься о моей карьере.

image

Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 10 часов утра 6 октября 1997 года, в городе Оливос, к северу от Буэнос-Айреса, в Аргентине. Был понедельник. Не так давно я праздновал свой 24-й день рождения.

Мир в 1997 году


Тогда он был немного другим. На веб-сайтах не было предупреждений об использовании cookie. Новаторскими в сети были сайты вида Excite.com, а моим любимым поисковиком был AltaVista.

Мой электронный ящик имел вид kosmacze@sc2a.unige.ch и был расположен на личном веб-сайте, который размещался по адресу http://sc2a.unige.ch/~kosmacze. Тогда мы еще оплакивали принцессу Диану, а Стив Джобс только-только вернулся на роль CEO и убедил Microsoft «вбросить» в Apple Computer 150 миллионов долларов. Digital Equipment Corporation подала в суд на Dell, останки Че Гевары вернули на Кубу, только начался четвертый (!) сезон «Друзей». Был убит Джанни Версаче, скончались Мать Тереза, Рой Лихтенштейн и Жанна Кальман. Люди зависали за Final Fantasy 7 на PlayStation, будто бы были наркоманами, Би-Би-2 начал вещание телепузиков, а Кэмерон только собирался показать миру свой «Титаник».
Читать дальше →
Total votes 200: ↑194 and ↓6+188
Comments321

Intel Skull Canyon NUC — игровой, хардкорный

Reading time1 min
Views20K

Первые Intel NUC, полноценные и достаточно мощные компьютеры размером 10х10 см, появились в продаже в начале 2014 года. С тех пор они широко распространились как платформа для торговых терминалов, систем видео демонстрации, рабочих мест и иногда даже домашних ПК, что не удивительно, очень уж удобными и производительными они получились. Кстати говоря, последнее поколение NUC на базе процессоров Intel Core 6-го поколения появились совсем недавно — рекомендую ознакомиться. Но сегодня речь не о них. Среди типовых представителей семейства Intel NUC появился монстро-NUC, монстр как по внешнему виду, так и по характеристикам. Какое железо удалось запихать в это микрочудище, читайте под катом.
Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments117

1 000 000 жилых домов России

Reading time2 min
Views68K
Есть прекрасный сайт www.reformagkh.ru. На нём можно найти, управляющую компанию, закреплённую за домом, сколько денег, на что тратится и всё такое. Но кроме этого можно узнать разные интересные вещи о нашей стране в целом, например, для каждого дома на сайте указана дата его постройки, поэтому можно посмотреть, как строилась Москва с 1900 года:



Ещё более эпичная картинка получается, если посмотреть на Россию целиком:


Читать дальше →
Total votes 86: ↑78 and ↓8+70
Comments118

Information

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