Как стать автором
Обновить
46
0
Юрий Карабатов @karabatov

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

Мир глазами WiFi роутера

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

Рассказ о попытках увидеть окружающий мир в совершенно ином свете и как это в итоге привело к созданию устройства, позволяющего «видеть» WiFi. В процессе будет использован популярный модуль ESP8266. Без Arduino, к сожалению, тоже не обойдется.
Что поделать...
Всего голосов 59: ↑58 и ↓1 +57
Комментарии 46

«Титаник» в реалиях 21 века

Время на прочтение 7 мин
Количество просмотров 28K
Часто при просмотре художественных фильмов о катастрофах на море в голову приходят мысли о том, насколько реально и возможно в жизни все происходящее на экране: могла ли в действительности случиться та или иная ситуация, сработало или не сработало бы то или иное средство спасения, правильно ли повели себя герои фильма и т.д. В этой статье хотелось бы попробовать разобраться, как обстоит дело с безопасностью на море сегодня, и как должны действовать люди в современных реалиях чтобы спастись, на примере ситуаций из достаточно известного художественного фильма, основанного на реальных событиях – «Титаник». Сразу оговорюсь, рассматривать все аспекты я не буду, ввиду их огромного количества. Рассмотрю только самые яркие, глобальные и интересные (разумеется, на мой скромный взгляд).
Читать дальше →
Всего голосов 51: ↑50 и ↓1 +49
Комментарии 113

Ангстрем. Кучка сложностей в простой обёртке

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

Когда требуется ещё один велосипед?


Ангстрем, безусловно, если смотреть на выполняемую функцию, велосипед. Сколько способов преобразовать единицы? Много. Можно пользоваться гуглом, можно одним из сотен приложений для iOS или Android.

Но, вместе с тем, ни один способ не решал одну проблему. Как мне получить результат конвертирования, когда я смотрю сериал? Конкретно, Mythbusters. Они там всегда общаются между собой про футы и фунты. Сколько это? Большая ли квартира, 500 ft²? (не очень, как оказалось) Много ли это, 27 psi (угу, дофига)? И, наконец, скажите им, что Фаренгейты — вообще никому не понятны!

С обычными конверторами приходится останавливать видео, выяснять, какая это категория, «psi», потом искать там этот самый «pounds per square inch», вспоминать, какое число нужно ввести, понять, во что её перевести (чтобы осознать масштаб проблемы). Делать это хочется с тем устройством, которое под рукой, желательно без интернета.

И вот эту проблему не решить ни одним конвертером. Я перепробовал, наверное, сотню. Она решается гуглом, но это тоже медленно (запустил браузер, ввел что-то в строке, гугл не понял, или понял не так...).

Так что велосипед ли Ангстрем? Вроде бы нет.

Поглядим теперь на сложности, которые пришлось решить при его разработке. Технические сложности, программерские.
Читать дальше →
Всего голосов 24: ↑21 и ↓3 +18
Комментарии 16

iTrace. Как пишутся буквы?

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

Что это за приложение?


iTrace — это мобильное приложение для того, чтобы научить детей писать буквы. Электронные прописи на iPad. Сейчас она используется в нескольких странах мира (в основном в США) для обучения детей письму. Придумал и организовал всю работу по проекту Миша Богорад, а мне довелось участвовать в проекте разработчиком всяких внутренностей, главным образом, отрисовкой букв и анализом качества их рисования.

Идея, сложности


Идея iTrace ничем не отличается от обычных прописей. Берём букву, просим ребёнка её нарисовать, подсказывая, если ему трудно. Сначала буква большая и ошибиться можно сильно, потом она уменьшается, и допуск тоже всё меньше и меньше. В конце-концов ребёнок, благодаря привычке, запоминает, как пишется буква.
image

В статье я расскажу про сложности, с которыми пришлось столкнуться и то, как их удалось решить. Если тема окажется интересной, спрашивайте в комментариях, про техническую часть я могу рассказать подробнее.
Читать дальше →
Всего голосов 31: ↑27 и ↓4 +23
Комментарии 30

Про Swift, и почему мои большие проекты будут на Objective-C еще какое-то (возможно долгое) время

Время на прочтение 4 мин
Количество просмотров 41K
От переводчика: C пятницей, дорогие хабровчане! Хочу поделиться сегодня с вами переводом статьи из небольшого блога об опыте работы с языком Swift. Вряд ли она претендует на лавры серьезного и скрупулезного анализа, но, думаю, будет интересна всем, кто задумывался: «а не пора ли отправить на свалку истории этот Objective-C?».

Когда Apple представила нам Swift — это было круто! Наконец-то мы получили next-gen (т. е. модный-скриптоподобный) язык для разработки под яблочные девайсы (но без поддержки приватных членов класса, хм....). Теперь этот [языкДинозавр квадратноскобочный] может отправиться в музей, а мы начнем тыкать эти новые блестящие фичи языка. Безусловно, наивно предполагать, что язык, которому менее года, будет без тараканов. Очевидно, некоторое время нужно дать ему на избавление от детских болячек. Именно поэтому я не бросился переписывать все мои проекты на Swift сразу после анонса.


Заметили, что птица падает вниз?
Но ты-таки взялся за Swift, ведь так?
Всего голосов 50: ↑42 и ↓8 +34
Комментарии 70

Что такое HEPA-фильтр: принципы работы и неочевидные факты

Время на прочтение 6 мин
Количество просмотров 265K
Приветствуем вас в блоге компании Тион Умный микроклимат. Тема статьи — HEPA-фильтры.

Это высокоэффективные фильтры, главная цель которых – удалять из воздуха мелкодисперсные частицы, в том числе PM2.5 и PM10 (с диаметром менее 2,5 и 10 мкм соответственно). HEPA – это не бренд и не марка, а класс фильтров, который определяется международным и национальным стандартами ЕН 1822-1:2009 и ГОСТ Р ЕН 1822-1-2010.



Давайте посмотрим на HEPA-фильтр «с расстояния вытянутой руки», расскажем про принцип его работы и основные эффекты, благодаря которым происходит осаждение частиц на фильтре.
Читать дальше →
Всего голосов 62: ↑60 и ↓2 +58
Комментарии 70

Гидропоника на подоконнике или C++11 в микроконтроллерах AVR

Время на прочтение 18 мин
Количество просмотров 54K
Проект не содержит Ардуино


Этот проект изначально должен был выглядеть иначе — монументальное сооружение, состоящее из тумбы с канистрами и насосами, водружённого на неё аквариума и помидорного оазиса поверх него. В райских кущах помидорного оазиса планировался водопад, а в аквариуме — рыбные формы жизни, главное требование к которым — умение поедать незапланированных жителей аквариума и держать в чистоте стёкла; основные кандидаты — сомики и гурами. Как вы уже могли догадаться, мой девиз — «лень — двигатель прогресса» (и чего только не сделаешь, чтобы аквариум не чистить и помидоры не поливать).
Читать дальше →
Всего голосов 52: ↑50 и ↓2 +48
Комментарии 104

Фоны старых квестов — методы разработки, секреты, советы

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


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

Давайте, впрочем, вернемся к теме сегодняшней публикации. Считаю это маленьким открытием, и мне непременно нужно поделиться им с теми, кто собирается соединить некоторый отрезок своей жизни с тем, что может называться классической адвенчурой. Быть может это поможет вернуть на рынок игры, которые немного оттеснят «хипстерский пиксель» заменив его на то, что может напомнить времена лучших игр от «Westwood Studios», «Sierra» и «Lucas Arts». Предположу вскользь, что множество художников и так знают это. И, тем не менее — я не заметил публикаций на эту тему. Наша братия не спешит делиться своими секретами, сохраняя некую монополию на собственные открытия.

Я хотел приурочить эту статью к началу разработки собственной адвенчуры. Но кто знает, когда это произойдет? А вам эта информация может помочь уже сейчас. Стоит ли откладывать? Думаю, что нет. Лопаты в руки.


Продолжить копать
Всего голосов 107: ↑103 и ↓4 +99
Комментарии 59

Что такое красивый код, и как его писать?

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

1. Вступление


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

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

Но когда дело доходит собственно до кода, все становится гораздо менее однозначно. Да, можно указать на слабые места, можно даже объяснить, что с ними не так. И в следующий раз получить ревью с абсолютно новым набором проблем.

Профессии программиста, как и большинству других профессий, приходится учиться каждый день в течение нескольких лет, а, по большому счету, и всю жизнь. Вначале ты осваиваешь набор базовых знаний в объеме N семестровых курсов, потом долго топчешься по различным граблям, перенимаешь опыт старших товарищей, изучаешь хорошие и плохие примеры (плохие почему-то чаще).

Говоря о базовых знаниях, надо отметить, что умение писать красивый профессиональный код — это то, что по тем или иным причинам, в эти базовые знания категорически не входит. Вместо этого, в соответствующих заведениях, а также в книжках, нам рассказывают про алгоритмы, языки, принципы ООП, паттерны дизайна…

Да, все это необходимо знать. Но при этом, понимание того, как должен выглядеть достойный код, обычно появляется уже при наличии практического (чаще в той или иной степени негативного) опыта за плечами. И при условии, что жизнь “потыкала” тебя не только в сочные образцы плохого кода, но и в примеры всерьез достойные подражания.

В этом-то и заключается вся сложность: твое представление о “достойном” и “красивом” коде полностью основано на личном многолетнем опыте. Попробуй теперь передать это представление в сжатые сроки человеку с совсем другим опытом или даже вовсе без него.

Но если для нас действительно важно качество кода, который пишут люди, работающие вместе с нами, то попробовать все же стоит!
Читать дальше →
Всего голосов 97: ↑79 и ↓18 +61
Комментарии 145

Код 15-летней давности и газета объявлений

Время на прочтение 4 мин
Количество просмотров 48K
Увидев переводную публикацию о поддержке древнего как кости мамонта legacy-кода, не могу не поделиться историей из своего опыта, а заодно, и призвать написать тех, кто также как и я сталкивался с подобными задачами. Да и за державу обидно — почему подобные публикации – в основном, переводные? У нас есть и было немало программистов-самородков, ваяющих свое, ни с чем не совместимое программное обеспечение – свои собственные СУБД, графические интерфейсы, драйвера для промышленного оборудования собственной разработки. По работе я немало сталкивался с творениями местных кулибиных, и еще расскажу про них, если будет интерес.

Случилась эта история в 2001 году и началась с того, что в FIDO-шной конференции $CRACK$.TALKS
Читать дальше →
Всего голосов 163: ↑159 и ↓4 +155
Комментарии 20

King's Bounty III: расширенный римейк оригинальной игры под DOS на Javascript/HTML5

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

Предпосылки и философские размышления


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

image
Читать дальше →
Всего голосов 60: ↑59 и ↓1 +58
Комментарии 116

Интерполяция данных: соединяем точки так, чтобы было красиво

Время на прочтение 7 мин
Количество просмотров 157K
Как построить график по n точкам? Самое простое — отметить их маркерами на координатной сетке. Однако для наглядности их хочется соединить, чтобы получить легко читаемую линию. Соединять точки проще всего отрезками прямых. Но график-ломаная читается довольно тяжело: взгляд цепляется за углы, а не скользит вдоль линии. Да и выглядят изломы не очень красиво. Получается, что кроме ломаных нужно уметь строить и кривые. Однако тут нужно быть осторожным, чтобы не получилось вот такого:

Читать дальше →
Всего голосов 65: ↑65 и ↓0 +65
Комментарии 44

Дональд Кнут

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

Дональд Эрвин Кнут — американский учёный, почётный профессор Стэнфордского университета и нескольких других университетов в разных странах, преподаватель и идеолог программирования, автор 19 монографий (в том числе ряда классических книг по программированию) и более 160 статей, разработчик нескольких известных программных технологий. Автор всемирно известной серии книг, посвящённой основным алгоритмам и методам вычислительной математики, а также создатель настольных издательских систем TEX и METAFONT, предназначенных для набора и вёрстки книг, посвящённых технической тематике (в первую очередь — физико-математических).
Читать дальше →
Всего голосов 156: ↑152 и ↓4 +148
Комментарии 49

Идеальный NAS? Другая точка зрения, eBox-2300SX

Время на прочтение 5 мин
Количество просмотров 19K
Около месяца назад я пришел к выводу, что мне нужен NAS. Для чего? Это просто — мне хотелось качать торренты независимо от основного компьютера. Т.е забил закачки в очередь и делай с основным компом что хочешь — трудится пусть NAS. Сразу же возник вопрос — а что, собственно, брать?
Я определил для себя относительные критерии:
— цена до 5000 рублей
— бесшумность
— функциональность
— небольшие размеры
Пройдясь по ассортименту доступных моделей, я понял одну очень важную штуку — при цене до 5000 рублей, ни один NAS не может вменяемо заниматься закачкой торрентов. В первую очередь потому, что аппаратная платформа данных моделей очень слаба, а торренты известны своей прожорливостью (относительно прямой передачи данных).
А если к этому еще и добавить стоимость жесткого диска, то становится прям совсем нехорошо.

И тогда я заинтересовался тонкими клиентами.
Читать дальше →
Всего голосов 98: ↑92 и ↓6 +86
Комментарии 116

iPhone. Год практического использования

Время на прочтение 6 мин
Количество просмотров 8.8K
Откровенно говоря, год назад, когда я покупал Iphone — я так и не нашел какого-то внятного описания best practiсe для iPhone.
До этого я уже использовал платформу Symbian(nokia n80) и WinMobile(acer n311) — и обе меня по разным причинам в конце концов разочаровали.

После годового использования iPhone, я не разочаровался в этой платформе и решил написать материал о вещах, что действительно использую. Программы которые перечислены, позволяют делать многие действия всего несколькими движениями пальцев. Все скриншоты авторские. Как же жить и работать в iPhone?
Рассмотрим управление делами и встречами, RSS, чтение книжек в любом формате, изучение иностранных языков и конвертация видео.
Читать дальше →
Всего голосов 249: ↑208 и ↓41 +167
Комментарии 250

Блокировка экрана в Mac Os X

Время на прочтение 2 мин
Количество просмотров 37K
В один прекрасный день я стал использовать mac os x как основную операционную систему. И с тех пор я иногда обнаруживаю, что некоторые функции, к которым я привык, отсутствуют в том или ином виде. Работая с компьютерами больше 10 лет, у меня выработалась стойкая привычка блокировать рабочий стол, если я отхожу даже на 2 минуты.
Читать дальше →
Всего голосов 65: ↑59 и ↓6 +53
Комментарии 54

Macintosh Classic — Ретро классика

Время на прочтение 1 мин
Количество просмотров 3.7K
Этот пост навеян недавним обзором юзера theproof.
Я тоже решил поделиться кусочком своего ретро. К сожалению, остался только мак (нету у меня больше моего любимого Atari 130XE и прочих вкусностей).
Трафик!
upd: спасибо добрым людям за плюсик, переношу в блог Apple
upd2: переношу в блог Старое железо, так правильней будет
Читать дальше →
Всего голосов 72: ↑64 и ↓8 +56
Комментарии 80

3D-картины

Время на прочтение 1 мин
Количество просмотров 860
Китайский художник Xia Xiaowan создает уникальные картины, рисуя их на слоях стекла. Получается ощущение застывшего объема:

image
Читать дальше →
Всего голосов 102: ↑93.5 и ↓8.5 +85
Комментарии 66

Пиратская локализация. Как это было

Время на прочтение 4 мин
Количество просмотров 9K
Так уж вышло, что мне довелось стоять, можно сказать, у истоков так называемой “пиратской локализации” игр на территории бывшего СССР. Многие ее ругают, многие привыкли и воспринимают это явление как должное. Я попробую рассказать, как все это начиналось и вкратце поделиться своим немалым опытом.

Итак, за окном шел дождь, и календарь отсчитывал 1991 год…
Читать дальше →
Всего голосов 418: ↑411 и ↓7 +404
Комментарии 210

Информация

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