Как стать автором
Обновить
12
0
Алексей Жуков @xx3l

Разработчик всего помногу

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

Язык программирования J. За что любить?

Время на прочтение13 мин
Количество просмотров93K
image
J – самый ненормальный и самый эффективный язык из известных мне языков. Он позволяет быстро разрабатывать, а также вызывать ненормативную лексику у людей, незнакомых с ним и смотрящих на код.

J слишком необычный. И сложный для изучения. У людей, сталкивающихся с J не хватает мотивации, чтобы его изучить. Синтаксис непривычный.
В этом посте я хотел помочь вам заглянуть дальше, что будет, если вы его изучите и чем он интересен. По своему опыту знаю, что преимущества этого языка сразу не очевидны. В посте я не собираюсь останавливаться на разборе конструкций. Только в обзоре. Предлагаю просто окунуться в примеры, попробовать ощутить мощь языка. Узнать, чем прекрасен язык, без изучения. Писать статьи, обучающие программированию на нем – дело сложное и думаю, не нужное. Он не так прост, чтобы это сделать кратко, а с обучающими материалами на официальном сайте нет никаких проблем. Главное – желание. Им и займемся.
Читать дальше →
Всего голосов 98: ↑86 и ↓12+74
Комментарии130

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

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

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

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

Читать дальше →
Всего голосов 154: ↑133 и ↓21+112
Комментарии172

ГОСТ по юзабилити

Время на прочтение4 мин
Количество просмотров58K
Через неделю на всей территории России вступит в действие национальный стандарт по юзабитили ГОСТ Р ИСО 9241-210-2012 «Эргономика взаимодействия человек-система. Часть 210. Человеко-ориентированное проектирование интерактивных систем».
Эргономика? Фи, это не то! Юзабилити шире эргономики, скажете вы.
Да, понятие «юзабилити» включает в себя эргономику. Но подождите: как они определяют «человеко-ориентированное проектирование», о котором стандарт?

Человеко-ориентированное проектирование (human-centred design) — способ разработки интерактивных систем, направленный на создание пригодных в использовании и полезных систем…

А вот и юзабилити! «Пригодность использования» — не совсем ясная фраза, но именно так они переводят слово «usability». Наверно, когда придёт всеобщий к… минимализм, тогда ГОСТ по юзабилити будет называться «ГОСТ по юзабилити». Но пока так.

Хочу вкратце рассказать, почему этот документ — не пустой звук. Пойдём по порядку.

1. Задачи документа


Кому он нужен?
  • Руководителям — показать место человеческого фактора и эргономики в процессе проектирования.
  • UX-специалистам — рассказать, как происходит проектирование, и каково их участие в этом процессе.
Читать дальше →
Всего голосов 68: ↑60 и ↓8+52
Комментарии23

Разбираем интерфейсные детали-ошибки на примере одного банковского клиента

Время на прочтение8 мин
Количество просмотров74K
Время изменилось. Теперь в одиночку можно написать приложение для миллионов человек. Не нужно думать ни о хостинге, ни о дистрибуции, ни о масштабируемости — облака сделают всё за вас.

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

Стоит сейчас какому-нибудь «Энгри бёрдз» написать «2-е птицы», и все молодое поколение будет неправильно наращивать окончания у числительных (на самом деле, наращиваются только порядковые числительные: «2-й дом», «1-му победителю», но «2 птицы»).

Поэтому любой уважающий себя клиентский программист давно должен прочитать Тафти, Чихольда, Раскина и Мильчина. Даже если у вас есть дизайнер и редактор в компании. Потому что и он иногда может нести чушь (всё зависит от квалификации). Или, наоборот, чтобы правильно следовать гайдлайнам и продолжать развивать приложение в едином стиле.

Поговорим сегодня о внимании к деталям на одном практическом примере (будет много картинок).

Читать дальше →
Всего голосов 210: ↑157 и ↓53+104
Комментарии183

Пишем первое приложение для Android

Время на прочтение8 мин
Количество просмотров551K
В любом деле самое сложное — это начало. Часто бывает тяжело войти в контекст, с чем столкнулся и я, решив разработать свое первое Android-приложение. Настоящая статья для тех, кто хочет начать, но не знает с чего.

Статья затронет весь цикл разработки приложения. Вместе мы напишем простенькую игру “Крестики-Нолики” с одним экраном (в ОС Android это называется Activity).

Отсутствие опыта разработки на языке Java не должно стать препятствием в освоении Android. Так, в примерах не будут использоваться специфичные для Java конструкции (или они будет минимизированы на столько, на сколько это возможно). Если Вы пишете, например, на PHP и знакомы с основополагающими принципами в разработке ПО, эта статья будет вам наиболее полезна. В свою очередь так как, я не являюсь экспертом по разработке на Java, можно предположить, что исходный код не претендует на лейбл “лучшие практики разработки на Java”.

Читать дальше →
Всего голосов 197: ↑170 и ↓27+143
Комментарии68

Android vs iOS на примере одной игры

Время на прочтение4 мин
Количество просмотров128K
Всем привет! Меня зовут Павел и я разработчик инди.
Я часто читаю разного рода аналитику, там куча графиков про то, сколько сейчас активируется андроид устройств, сколько iOS, как растут рынки и падают доли. К сожалению, проценты и абстрактные цифры редко позволяют точно понять что же на самом деле происходит внутри.
Скорее всего, я не один сталкиваюсь с такой проблемой, поэтому решил поделиться «живой» статистикой одной моей игры, ставшей довольно популярной на iOS и Android. Сразу оговорюсь, что речь о игре исключительно на русском языке, соответственно играют в неё только русскоязычные пользователи. Для тех, у кого таргет на Европу, США и т.п. пост может быть малоинформативен.
Читать дальше →
Всего голосов 190: ↑173 и ↓17+156
Комментарии90

Пишем своё первое приложение на Android

Время на прочтение10 мин
Количество просмотров1.8M

Предисловие


Цель данного поста — с одной стороны поделиться своим успешным опытом старта разработки приложений на платформе Android и с другой стороны поспособствовать развитию рынка софта для этой замечательной и бурно растущей платформы за счёт (без ложной скромности скажу) возможно Вас, прочитавших данный пост. В сети, конечно, можно найти материалы на тему разработки приложения «чуть сложнее, чем helloworld», но как правило они разрозненные и в них не описываются различные мелкие подводные камешки. В данном посте мы рассмотрим полный цикл разработки приложения, начиная с чистого компьютера до готового apk-файла. Под катом скрины.
Читать дальше →
Всего голосов 138: ↑123 и ↓15+108
Комментарии96

Делаем приставку — счётчик Гейгера к iPhone за 2 часа

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

UPD: Кто уже читал пост — пожалуйста зайдите и поучаствуйте в опросе. Спасибо большое!

Примерно полтора года назад на нескольких сетевых ресурсах, в том числе и на хабре, начали пиарить проект «До-ра» — приставку к iPhone, позволяющую измерять радиационный фон и делать много всего вкусного на основании получаемой со счётчика Гейгера информации. Статьи в новостях проекта упоминают несколько многомиллионных грантов, выделенных на разработку приборчика фондом «Сколково». Шли месяцы, «До-ра» всё никак не получалась, покупатели ждали, конкуренты не дремали. Так ли сложна «До-ра» как её малюют и как собрать за пару часов из подручных деталей в десять раз более чувствительный аналог я расскажу тем кто нажмёт на
кнопку
Всего голосов 186: ↑185 и ↓1+184
Комментарии133

Система цифрового видеонаблюдения. Дорого, но приятно

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


Статья по мотивам Построение системы аналогового видеонаблюдения непрофессионалами.
Продолжение этой статьи: Система цифрового видеонаблюдения 2. Видеорегистратор, ПО и нагрузочное тестирование

Задача: оборудовать СТО системой видеонаблюдения. Доступ к live-изображению из нескольких рабочих мест. Желательно иметь доступ к камерам через смартфон (для контроля в случаи командировки).

Примечание: вся система внедрялась в процессе строительства СТО. Помимо видеонаблюдения устанавливали рабочие станции пользователей, сервера, оборудование для автоматизации и т.д. Но остановимся только на части про видео.

Уже и не знаю, что мотивировало остановиться на цифре. Возможно, позволял бюджет, возможно хотелось попробовать новое. В любом случаи это был достаточно полезный опыт и теперь видны достоинства и недостатки аналоговой/цифровой системы.
Читать дальше →
Всего голосов 55: ↑51 и ↓4+47
Комментарии84

Игры с физикой благодаря HTML5 и JS. Программист симулирует движение ткани

Время на прочтение1 мин
Количество просмотров74K
Программист, именующий себя Stuffit, опубликовал исходный код на портале Codepen. Код симулирует физику ткани. Использует HTML5, Canvas, CSS и JavaScript, приблизительно 300 строчек кода. Ткань без текстуры, простая сетка, но демонстрационным целям служит отлично.



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

Перевод с чешского источника
Всего голосов 136: ↑127 и ↓9+118
Комментарии43

OSPF LSA в картинках

Время на прочтение4 мин
Количество просмотров96K
Тема протокола динамической маршрутизации OSPF уже не раз поднималась на хабре. Однако вопрос о том что такое LSA и какие они бывают, как мне кажется, недостаточно прозрачен. И я хотел бы рассказать об этом без привязки к конкретному производителю и консольным командам.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии17

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

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

image
Читать дальше →
Всего голосов 238: ↑232 и ↓6+226
Комментарии98

Как быстро и точно оценить проект без ТЗ

Время на прочтение6 мин
Количество просмотров39K
При таком сочетании – быстро, точно, без ТЗ – кажется, что задача не имеет решения. Однако в работе фрилансера такие задачи возникают постоянно, поэтому в борьбе за выживание заказы приходится учиться их решать. Для начала поясню, что означают вынесенные в заголовок слова.

Быстро – значит, раньше, чем заказчик примет решение о выборе исполнителя (другого исполнителя, раз вы еще не готовы ответить ему на самый главный вопрос).
Точно – значит, достаточно близко к реальной стоимости проекта, которую можно было бы озвучить после согласования ТЗ (а еще лучше после выполнения проекта, когда уже известно точное количество потраченного на разработку времени).
Ну и, наконец, что значит Без ТЗ? Понятно, что проектов совсем без ТЗ (в стиле «пойди туда, не знаю куда, принеси то, не знаю что») практически не бывает. Другое дело, в каком виде заказчик предоставляет вам это самое ТЗ.
Читать дальше →
Всего голосов 41: ↑29 и ↓12+17
Комментарии11

Как воплотить в жизнь мечту детства и запрограммировать что-нибудь для Dendy

Время на прочтение4 мин
Количество просмотров104K
Для меня Dendy всегда была чем-то большим, чем просто приставкой. Я не только играл в неё, но и значительное время провёл внутри неё с паяльником в руках для некоторых простых модификаций. По дороге куда-нибудь я часто размышлял о том, как же создаются эти игры и как это работает внутри. Наверняка, многие из вас когда-то задавались подобными вопросами, такова уж натура будущих IT-шников.

Прошли годы. С некоторой периодичностью погружался в эму-тему, изучая всё новое на тематических сайтах, но я не решался окунуться в изучение ассемблера 6502 и архитектуры NES. Внутренний конфликт рационального и иррационального. Я долго убеждал себя, что мне не нужно тратить на это время, но… сорвался. Глядя на то, какие интересные вещи делают энтузиасты эму-сцены, я взялся за свою давнюю идею со светлой мыслью: «Я тоже смогу!». Две недели пролетели незаметно, я еле смог остановить себя. И да, теперь я знаком с ассемблером без команд умножения, о чём раньше только слышал в песне о программистской молодости.



Очень вероятно, что сейчас вы вспомнили свой первый картридж для Dendy и меню с романтическим сюжетом и приятной музыкой. На таких картриджах никогда не было «серьёзных» игр, и не глядя на громкие надписи типа 9999-in-1, их обычно было что-то около пяти. Но это меню… Разве это не шедевр китайской мысли? :) Мне с детства нравилась эта мелодия (Unchained Melody), а фоновые изображения сейчас навевают кучу ностальгических воспоминаний. Поэтому я взял IDA и дизассемблировал меню 300-in-1, вырезал всё лишнее, исправил ошибки, добавил фейдинг да немного приятных мелочей — и получилась демка Unchained Nostalgia (для запуска нужен эмулятор, например, Nestopia), есть запись на YouTube.

Хотите также окунуться в олдскульное программирование? Делюсь самым полезным и интересным, что я нашёл по теме.
Читать дальше →
Всего голосов 102: ↑100 и ↓2+98
Комментарии61

Информация

В рейтинге
Не участвует
Откуда
Иркутск, Иркутская обл., Россия
Дата рождения
Зарегистрирован
Активность