Недавно возникла необходимость решить следующую несложную задачку: есть несколько десятков устройств (учебных комплексов), у которых нужно регулярно запрашивать их текущее состояние. Комплексы общаются по протоколу UDP, и хотелось сделать так, чтобы не задумываться о цикле опроса и определении, от какого же устройства пришел ответ, а просто посылать запрос — и когда пришел результат — записывать его. Задачу эту я решал и раньше, но захотелось посмотреть, насколько концепция async/await упростит и сократит код. Оказалось, что финальный результат занимает меньше странички.
Рубрика «говнокод» - 2
Вы — шлюхи из Sucker Punch-а
2013-12-06 в 8:37, admin, рубрики: mvp, говнокод, разработка, тестирование, метки: mvp, говнокод, разработка, тестирование
Всем привет, я Евгений и давайте поговорим.
Расскажу несколько историй, а пока — я UX-разработчик, но при этом занимаюсь фронтэндом полностью, потому что мне это нравится.
Истории будут о том, почему MVP — это не «говнокод по-быстрому», а минимальная версия продукта, которая должна будет развиваться в будущем. Запомните — minimal product, не продукт с говнокодом.
Читать полностью »
Отдадим проект в хорошие руки
2013-09-30 в 5:04, admin, рубрики: CentOS, linux, nginx, rpm, говнокод, репозиторий, системное администрирование, метки: CentOS, linux, rpm, говнокод, репозиторий
Доброго времени суток уважаемые пользователи ! Хотелось бы с вами поделиться своими переживаниями по поводу одного проекта и передать его в добрые руки.
Читать полностью »
Отладка Node.js в Visual Studio
2013-03-09 в 21:23, admin, рубрики: debug, javascript, node.js, Visual Studio, говнокод, отладка, я пиарюсь, метки: debug, node.js, Visual Studio, говнокод, отладка, я пиарюсь Мне нравится Node.js, но совсем недавно я начал использовать её на серьёзных проектах. При этом я продолжил пользоваться моей любимой средой разработки*. И если для простых скриптов достаточно просто редактора, то для серьёзной разработки нужны серьёзные инструменты, в частности, дебаггер. Ничего готового для студии найти не удалось, поэтому я взял и за пару выходных сделал его сам:
Читать полностью »
Грязный, чистый, устремлённый
2012-11-23 в 15:27, admin, рубрики: говнокод, обучение программированию, самосовершенствование, Совершенный код, чистый код, метки: говнокод, обучение программированию, самосовершенствование, чистый кодГрязный
Давайте вместе поразмыслим — что же такое чистый код, и что такое код грязный? Или, как говорят американцы – «hairy code», т.е. волосатый?
Чем чистый код отличается от грязного – или, как говорят в этих наших интернетах, от «говнокода»? Да и нужен ли он вообще, этот чистый код?
Давайте сначала разберёмся с определениями.
Мне кажется, что дать чёткого определения «чистому» коду просто невозможно. Отчасти это – как с красотой: смотришь на картину, или там скульптуру – и видишь: да, красива. Или, наоборот, уродлива.
Читать полностью »
Как вырастить программу из прототипа
2012-10-18 в 8:57, admin, рубрики: agile, DRY, KISS, unite, выставки, говнокод, методологии разработки, Программирование, проектирование, прототип, прототипирование, управление проектами, метки: agile, dry, kiss, unite, выставки, говнокод, методологии разработки, ооп, проектирование, прототип, прототипирование Каждую неделю на профильных блогах мы читаем как нужно использовать методологию X и фреймворк Y, чтобы написать хорошо спроектированный и легко поддерживаемый софт. Нам постоянно говорят, что, мол, говнокод — это плохо, рефакторинг — наше все, дают те или иные очень важные сферические советы в вакууме. В большинстве этих статей можно встретить абстрактные философские нравоучения, например, вот это я распечатаю и повешу при входе в офис:
А что, если я скажу, что не все проекты одинаковые, и некоторые из них не то что можно, а даже нужно тщательно выращивать из прототипа? Об этом я рассказывал на конференции Unite'12, а сейчас расскажу вам.Читать полностью »
Почему нельзя превращать прототип в итоговую программу
2012-10-16 в 15:54, admin, рубрики: говнокод, Программирование, прототипирование, Совершенный код, метки: говнокод, прототипирование Всем привет! Сколько уже статей было про говнокод, но я считаю, их поток нельзя сокращать, потому как поток говнокода только увеличивается.
Внимание: статья полна субъективизма и сюрреализма. Автор не претендует на истину в последней инстанции
Очень часто, создавая новое приложение, программу, веб-сайт, мы сначала экспериментируем, а затем создаем из наших экспериментов конечный продукт.
Но дайте ответ на следующие вопросы не задумываясь:
- сколько раз, получая исходники от других разработчиков, вы находили их крайне непривлекательными?
- сколько раз, передавая исходники другим разработчикам вам было стыдно за свой код?
Мои ответы: постоянно, довольно часто.
Почему так происходит?
Я не понимаю, как они сделали это
2012-04-10 в 7:13, admin, рубрики: epic fail, microsoft, говнокод, криворукость, Я негодую, метки: epic fail, говнокод, криворукостьДва месяца назад я обзавелся смартфоном на Windows Phone 7. Ещё месяц я героически боролся с его медиаплеером, пытаясь заставить его тупо проиграть файлы в папке подряд. Наконец, я нашел устраивавшее меня решение — создавал из файлов в папке плейлист и заливал через Zune.
Тут-то и началось веселье. Zune автоматически конвертирует плейлисты *.m3u в собственный формат *.zpl. Казалось бы, что может быть проще, чем перевести вот такой формат:
#EXTINF:677,32 Variations On An Original Theme In C Minor, WoO 80.flac
D:MusicNewTo listenBeethovenSonatas32 VariationsAnnie Fischer32 Variations On An Original Theme In C Minor, WoO 80.flac.mp3
#EXTINF:220,1. Allegro.ape
D:MusicNewTo listenBeethovenSonatasNo. 01Annie Fischer1. Allegro.ape.mp3
#EXTINF:317,2. Adagio.ape
D:MusicNewTo listenBeethovenSonatasNo. 01Annie Fischer2. Adagio.ape.mp3
В вот такой:
<media src="D:MusicNewTo listenBeethovenSonatas32 VariationsAnnie Fischer32 Variations On An Original Theme In C Minor, WoO 80.flac.mp3" albumTitle="Неизвестный альбом (23.03.2012 11:48)" albumArtist="Неизвестный исполнитель" trackTitle="32 Variations On An Original Theme In C Minor, WoO 80.flac" trackArtist="Неизвестный исполнитель" duration="677856" />
<media src="D:MusicNewTo listenBeethovenSonatasNo. 01Annie Fischer1. Allegro.ape.mp3" albumTitle="Неизвестный альбом (23.03.2012 11:48)" albumArtist="Неизвестный исполнитель" trackTitle="1. Allegro.ape" trackArtist="Неизвестный исполнитель" duration="220582" />
<media src="D:MusicNewTo listenBeethovenSonatasNo. 01Annie Fischer2. Adagio.ape.mp3" albumTitle="Неизвестный альбом (23.03.2012 11:48)" albumArtist="Неизвестный исполнитель" trackTitle="2. Adagio.ape" trackArtist="Неизвестный исполнитель" duration="317105" />
Но нет! Эта задача оказалась не под силу майкрософтовским программистам.
Читать полностью »
Школьные забавы или мультиплеерная игра без сокетов и p2p
2012-04-05 в 13:25, admin, рубрики: fun, game development, Gamedev, говнокод, ненормальное программирование, Песочница, школа, метки: fun, Gamedev, говнокод, школаЗдравствуйте, дорогие читатели!
Сразу хочу оговориться, что эта статья создана just for fun, и не претендует на какое-либо обучающее свойство.
В нашей школе информатику преподают с 6 класса, но ничему практически не научили, ибо мы так дружно и старательно форматировали тексты в Word'e, что закончили его изучать только к 9 классу. Было несколько уныло, и я занялся программированием. Помню, как копипастил «Hello, World!» из книжки по С++, потом первый калькулятор, потом еще калькулятор, затем познал ActionScript, сделал пару жутких игр, ну а потом обленился.
После очередного скучного задания по Excel, мы с другом решили воплотить нашу давнюю идею — сделать мультиплеерную игру. На школьных компьютерах стоял еще Macromedia Flash 8, Borland Delphi 7, и в другом конце класса на мониторе блестела эмблема Windows Server 2003.
Читать полностью »
Perl / [Из песочницы] Краткий обзор качества коммерческой CMS на Perl
2012-02-10 в 7:52, admin, рубрики: cms, perl, говнокод, деньги, коммерция, метки: cms, perl, говнокод, деньги, коммерция В процессе занятия фрилансом мне периодически попадаются на препарирование сайты написанные на Perl. Гляда на код, я понимаю, откуда появилась дурная слава Perl в области Web разработки. Но не будем углубляться в холивар.
Вчера мне в руки попал движок X1-forge. Надо особо отметить что он активно продаётся и весьма нескромно расхваливается на сайте. Итак, что же с ним не так?
Клиент обратился с жалобой на невозможность залогиниться в админку. По словам клиента произошел сбой после удаления с сайта некоего вируса (как оказалось позже это было простым совпадением). После изучения кода, обнаруживаю что кукис после ввода логина/пароля вЧитать полностью »