Nodejs. Побеждая ад

Черновик. В будущем планирую найти таки красивое решение и не катить бочку на nodejs =)

Применительно к ноде есть такое понятие, как "callback hell" (глубоко вложенные колбэки). На хабре есть об этом. В попытках избежать этой засады я стал разбирать код на части и попал в другой кошмарик, с ассинхронной работой. Конечно есть решения и в мануалах все просто. Но стоит написать в ноде что-то чуть сложнее "Hello, world!", как начинаются проблемы. Код с катастрофической скоростью обрастает парными скобками "})", анонимными функциями и вложенными callback-вызовами. На данном этапе работы с ним я искрене не понимаю, как можно тащиться от nodejs и компании.

Переборка вилки. Kawasaki Vulcan

Байк 2004 года (US версия), спереди стоит прямая телескопическая Showa, без подкачки. Потекли сальники (манжеты), нужно поменять. По ходу дела проверил разные советы, выловленные в инете. В очередной раз оказался крайне полезным мануал, созданный в издательстве Clymer. Полагаю, суть переборки такая же, как на любом японском байке, но дьявол кроется в деталях..

Не буду расписывать то, что и так очевидно. Коротко: вывесить переднее колесо, подложить упор под картер, чтоб байк вперед не опрокинулся. Снять и подвесить тормозные суппорта, снять колесо, крыло. Перебирать нужно по одной ноге, по очереди. Дальше интересно..

Видеорегистратор MiVue M300

Четвертый мотосезон и четвертая камера.. Это становится нездоровой традицией. На этот раз выбрал камеру, которая действительно может стать мото-регистратором.

MiVue™ M300 позиционируется на оф.сайте, как видеорегистратор на любое двух- или четырехколесное транспортное средство. Про шлем речи нет, и тут меня похоже опять ожидают проблемы. Об этом чуть ниже. Кроме описания на оф.сайте нашел в инете еще одну неплохую статью. Постараюсь не копипастить, а добавить то, о чем там не сказано.

Метки: гаджет, мото

PHP: засада с strlen()

Вот и я наступил на эти грабли.. :( Во-первых, я невнимательно читал мануал. Разница между strlen() и ее мультибайтным аналогом, mb_strlen(), в том, что первая считает байты в строке, а вторая - символы. В однобайтных кодировках разницы нет, но для мультибайтных (например utf-8), значения функций будут разные, если в строке есть буквы национального алфавита. Это меня не парило, пока не столкнулся с багом. На локалке код работает, на сервере падает с кракозяброй в сообщении об ошибке.

Метки: PHP

Смена кодировки сайта

Переходим с windows-1251 на utf-8. Перекодирование затронет все: php-скрипты, статику (css, js, html), мета-теги, БД, настройки веб-сервера и PHP. Во-первых, подумайте дважды, прежде чем затевать смену кодировки. Так ли это вам нужно? У меня сайт маленький, самописный, опыта уже достаточно, и то я потратил несколько часов на эту процедуру. Во-вторых, создайте копию вашего сайта перед тем, как что-то менять. Получите дамп базы. Не удаляйте копию, даже если есть 100% уверенность, что все сделано правильно.

Акриловая ванна. Экстрим в домашних условиях

Думаю, не стоит рассказывать, что такое наливная акриловая ванна. Это не для кого уже не новость. А расскажу я лучше о своем первом опыте заливки, о тех вещах, которых нет в обучающих видео и инструкциях. Все очень хорошо совпало: ванна, требующая обновления, возможность купить акрил и залить его самостоятельно. Почему не обратился к мастерам? Просто потому, что я хотел попробовать сам :)

Перенос сайтов, созданных на разных CMS

За полгода работы на web-студию накопилось разного, полезного и не очень. Большим спецом в конкретной CMS я не стал, но видел многое. Работая с очередным сайтом, я разворачиваю его копию на локалке. Мне так удобно. В некоторых случаях все просто, достаточно переписать ключи доступа к БД, иногда заморочки затягиваются. В то время я работал еще на Windows, что добавляло ньюансов. Вообщем, статья является попыткой организовать мои заметки по вопросу переноса сайтов с CMS. Описываю все, от очевидного до сложного. Выгода этих записей в экономии времени при разворачивании очередного сайта на своей площадке.

Силиконовый колпачок на кнопку. История в картинках

В наличии мультиметр на байк с переключателем. Без кнопки никак, у него автономное питание. Нужна герметизация. Идеи в порядке возникновения в голове: кусок резиновой перчатки > силикон для форм > герметик! Под катом - реализация.

Метки: hand-made

Flash, Firefox и Linux: "Ваш плагин устарел!"



С переходом на Линуху мне пришлось отказаться от Оперы. Теперь на очереди Огнелис.. Причиной тому флеш-плагин, безнадежно устаревший в данном браузере. Adobe Flash доживает свои дни. Однако, как и в случае с IE, этот плеер остается весьма популярным среди web-разработчиков и следовательно, он по-прежнему востребован пользователями. Получаются "вилы": плеер нужен, но Adobe и разработчики браузеров не хотят его поддерживать. Далее перевод статьи, дающей некоторые разъяснения по ситуации.

Всплывающее окно. Чужой плагин для jQuery

 пример popup

По работе потребовалось прикрутить к сайту несколько popup-окошек. Чтоб красиво всплывали и корректно работали. Сначала накатал свой код, без эффектов. Однако ж не по "феншую" было. Нашел подходящий jQ-плагин, разобрался, как использовать и теперь пишу, чтоб в следующий раз время не терять впустую. Имя плагина - custombox. Страница на оф.сайте jQuery, форк на Гитхабе.

Мелкий ремонт пластика дома

Сразу скажу, не каждую поломку можно исправить таким способом. Не любая пластмасса позволит над собой такие действия. Но попытка - не пытка :) Для ремонта потребуется паяльник с плоским жалом и прямые руки. Уверен, если вам хоть раз приходилось ремонтировать сломанный пластик, то вы знаете об этом способе. И посему новичкам посвящается..

Метки: hand-made, ликбез

Sven MS-1090: колонки 2.1 с плюшками

Sven MS-1090

Это не профессиональный обзор, только мое мнение и изыскания, связанные с багом этих колонок. Не буду рассписывать ТТХ, поскольку мне, как простому юзеру, на них чуть менее, чем совсем пофиг. Внешний вид и цена - вот что было первым требованием в выборе. От акустики 5.1 решил отказаться, т.к. уже имеется опыт использования такой системы. Имхо, не так это круто, как проблематично в настройках и расстановке колонок.

Главная плюшка Sven MS-1090 - это воспроизведение с внешних носителей. В комплекте с колонками идет пультик. Кнопок немного, но и тех половина - лишняя :D Но давайте по-порядку..

Контроль питания борт.сети мотоцикла

В начале прошедшего сезона купил новый байк. Практически без пробега, за 10 лет всего 5000 км. Вот только намотать на нем свои 4-5 тысяч не получилось, т.к. он постоянно чем-нибудь ломался. В итоге сейчас у меня главная проблема - питание. Не смог точно диагностировать, в чем причина. Зато на данный момент разобрался, как мне кажется, с работой борт.сети мотоцикла.

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

Под катом - понимание организации питания байка и идея контроля борт.сети.

Метки: ликбез, мото

Простые жизненные хитрости

В очередной раз придумал простую вещь, упрощающую жизнь и возник некий порыв поделиться. Идея такая: буду писать сюда о вещах, применимых в обычной жизни и делающих ее лучше без особых усилий. Помню, в детстве читал разные журналы, даже книги, в которых собиралась народная мудрость по различным аспектам существования. Вот это - моя сборка :) Для кого-то эти вещи покажутся очевидными. Не обессудьте, далеко не все такие же сообразительные, как вы ;)

vQmod - зло! Применять в минимальных дозах

Есть такая веб-разработка - vQmod. Помню, как радовался такой полезной и удобной системе, когда только с ней познакомился и разобрался в деталях, как она работает. А потом стал находить "деготь в этой бочке меда", но было терпимо.. до текущего момента. Теперь же я считаю, что vQmod - зло, причем немалое. Погодите потрясать кулаками, давайте обсудим :)

Сервер Redis. "Connection refused" на локалке

Во истину загадочен и сложен мир Linux! :) Некоторое время назад запустил на локалке (localhost) сервер Redis. К нему подключается python-скрипт с определенными задачами. Это нужно для отладки одного сайта и потому требуется редко.

И вот сегодня обнаружил, что теперь на локалке Redis отказывает скрипту в подключении, а на хостинге - работает! Получаю ошибку "redis.exceptions.ConnectionError: Error 111 connecting localhost:6379. Connection refused". Приехали ((

Skype в отключке. Внезапно!

Только я расслабился и стал думать, что подружился с Линухой, как "на те!" Skype просто перестал работать. Я знаю, что это звонилка отошла к MS и в сочетании с Linux вполне может глючить по непонятным причинам. Но ругань типа "skype can't connect" и "check your skype login and password" уводит несколько в сторону от реальной проблемы..

Как это случилось со мной: в очередной раз промахнулся мимо "Выход" и разлогинился из скайпа. Пробую зайти - "skype can't connect". Проверил сеть - порядок. Под учеткой на оф.сайте вхожу. Недолгие поиски привели на форум. Оказывается, версия 4.2 просто больше не работает и все тут. Хочешь юзать скайп дальше, ставь новую версию.

Метки: hard'n'soft, Linux

Еще три полезных программы

Пока настрой не пропал :) Нашел у себя еще несколько программ, которыми пользовался под Виндой когда-то. Совсем простые, но были нужны в свое время. Одна создает иерархический список каталогов и файлов с их весом, вторая - копирует в один каталог mp3-файлы по заданному плейлисту.

А так же хочу поделиться своей реализацией дистанционного управления Winamp-ом. Не революция конечно, но мне эта программа служила многие годы.

Метки: 7Lives, личное

Редактор имен файлов и каталогов

Наконец собрался и привел к нормальному виду программку, которую сделал еще 10 лет назад. Называется софтина NameIt! Pro, версия 2 "с хвостиком" =) Сейчас я уже совсем отошел от прикладного программирования, пересел на Линуху и жаль, что полезные инструменты, работающие под Windows, канут в Лету. Поэтому делюсь тем, что с моей точки зрения может пригодится другим виндузятникам :)

Метки: 7Lives, личное

Сделай свою жизнь лучше. Мудрость тех, кто опоздал

Когда мне исполнилось сорок, мой отец сказал мне, что мне понравится быть сорокалетним, потому что в двадцать ты думаешь, что всё знаешь, в тридцать ты понимаешь, что это не так, а в сорок ты можешь, наконец, расслабиться и просто принимать вещи такими, какие они есть. В свои 58 я хочу сказать, что он был прав. (c) Мартин, 58 лет

На днях нашел интересную статью "10 советов тридцатилетним от тех, кому за сорок". Это перевод статьи "10 life lessons excel 30s". Текст не стал для меня откровением, т.к. в свои 34 я до половины советов уже дошел своим умом или просто интуицией. Сохранил ее в блоге, как мудрость, которую сам не могу изложить словами. Я считаю, что люди правильные вещи советуют, не смотря на то, что они - европейцы, и менталитет у них другой. Предлагаю и вам проникнуться, пока не поздно :)

Метки: про Жизнь
Продвижение
Время
Метки
Щелкни мышей, чтобы закрыть