Про общепиты, сиквел
запись опубликована 10 March 2010 примерно в 10:29
Вы знаете, мне кажется, чего уж там - я даже почти уверен, что лицо страны это блять нихуя не дороги, это не усатая гордость нации с кобзой и сборником рассказов, как тяжело жилось хохлу под кем-то там, это даже не президент (только безграмотные уебаны пишут это слово с большой буквы), который ок и доставляет приятные моменты, это очень даже не олимпийские чемпионы, которые просрали все рассказы про украинских юберменш. Это банальные общепиты, которые каждый человек, обремененный физиологией и естественными потребностями низших уровней пирамиды Маслоу, обязан с той или иной периодичностью посещать. Я уже когда-то писал про кулинарию и общепиты в целом, теперь давайте поговорим в частности.

Типичная забегаловка, которая имеет в своем рационе горячий бутерброд, именуемый пиццей, но таковой не являющейся, обязана называться пиццерией. Это аксиома, причем, вторым словом обычно идет что-то итальянское, намекая на то, что эта полужидкая субстанция из плавающих в центре недожаренного комка теста прозрачных кусоков овощей и салями родом из водных каналов Венеции, стареньких улочек Рима или шумных площадей Неаполя. Я, разумеется, понимаю, что по своему происхождению пицца является далеко не ресторанным блюдом: на пиццу не приведешь любимую в приличной заведение чтобы кинуть кольцо с бриллиантом в стакан томатного сока, пиццу неудобно как-то жрать на свадьбе, да и на похоронах стакан куском пиццы накрыть не принято в народе, но тем не менее, блюдо под названием "pizza" должно быть хотя бы близко к тому, как его готовят Марко и Джованни по ту сторону Карпат. Та же самая фигня произошла и с фастфудами бургеркинговского или макдаковского типа. Если у тебя в ассортименте имеется котлета, зажатая листьями салата в потеках дешевого майонеза и получерствыми кунжутовыми булочками - все, ты теперь Burger Club, Burger Lounge, Burger Style, Mr. Burger Light и тому подобные инсинуации на эту тему. Забывают ребята одно, это все должно быть фастфуд. Fast Food. Быстрая Еда. А ждать иногда нужно ну очень долго, что учитывая фирменную вонь этих заведения, которая стимулирует выработку желудочного сока, очень мучительно. Такой себе SlowpokeFood.

Проблема большинства заведений это их нищебродская экономия. Пачка салфеток стоит от 2х до 4х грн. Это такие дешевенькие салфетки из бумаги толщиной в волос человека, которые переработаны раз уже так под 100 и их впитывающие свойства близки к 0. Так вот, умудряются экономить даже на этом, последнее время я все чаще и чаще замечаю, что салфетки выдают тебе по факту заказа, чтобы не дай бог не перерасходовать лимит. Про соль и перец я вообще молчу - они либо влажные и не высыпаются, либо их даже в руки брать страшно. По идее, на столе не помешали бы кетчуп и горчица, но, поверьте, за всю свою жизнь и за весь опыт питания в заведениях я встречал это только один раз. Пару недель после открытия. Потом владельцы просто зажали обновлять наполнение бутылок либо же "клиенты" брали специи с собой "на вынос" - факт остается фактом, бутылочки убрали. Нищебродская экономия выражается на всем. Даже в посуде. Сколько раз вы замечали вилки с зубчиками аля "пальцы футболиста". В следующий раз присмотритесь, создается неиллюзорное впечатление, что люди от голода грызут их зубами ну или роют подкоп, очень пугает. Тарелки часто бывают со сколами, я однажды даже поранил губу о пивной бокал на котором от "тщательной мойки" образовались 2 острые трещины. Такие дела. Столы протирают редко, заключается это в парочке круговых движений руки по столешнице для струшивания крошек и прочих видимых фракций пищи на сиденья. Сиденья, которые диваны или стулья, вообще никто никогда не протирает. Если вы жрали что-то жирное и капля упала на кожаный диванчик - будьте уверены, что еще человек 10 испачкает об нее свои штаны.

Дорогие мои читатели, есть еще один парадокс, который я не могу никак объяснить. Почему в общепитах есть телевизоры, они включены, но музыка играет совершенно другая? Кто объяснит мне логику, зачем прокручивать немое кино на дорогих 50" LCD чтобы из дешевых китайских пластмассовых колонок на стене орала про тяжелую бабскую жизнь какая-то рихана или прочая подобная ересь? Притом колонки расставлены так, что даже те, кто не прочь бы сесть где-то в уголке и неспешно пообедать комплексом из 3х блюд, обязан выслушивать заунывное нытье какого-то Игоря Николаева, который блять не только полностью блокирует процесс пищеварения, но и поворачивает вспять естественное движение пищи от ротового отверстия к анальному. Ну зато бабы на касе кайфуют, бывает, даже начинают пританцовывать. А ты все ждешь и ждешь свой заказ. Парадокс №2: кому-то когда-то получалось высушить руки сушилкой для рук, простите за скороговорку? Вспомните и улыбнитесь. Бумажные полотенца, увы, расходный материал и непозволительная редкость.

Со следующим согласятся все, кто хоть раз с этим сталкивался. Мы вон с AbuZaind столкнулись буквально на днях, когда 8 марта решили на пару часов выбраться по пивку за женщин. Чертовы общепиты сдают под корпоративные пьянки, притом не полностью, когда заведение открыто исключительно для приглашенных, а частично, что опять таки является проявлением высшей степени жадности владельцев и празднующих. Так вот, примерно полтора часа мы наблюдали жиробесных свиноподобных блевотных телок, по другому я это назвать не могу, которые трясли своими сальными массами, 8 рядами молочных желез и рукоподобными отростками под орущую музыку, которая изничтожала остатки прокуренного и испитого мозга целыми долями. Притом, делали это совершенно не смущаясь, что адекватная половина зала в лице меня и Димы смотрят на них с отвращением и ненавистью, которая, превращенная в электричество могла бы питать Киев пару месяцев. А к концу вечера все это по 12му удару часов превращается в гадюшник. Водка и закусь покупается уже в соседнем магазине и тайно проносится в пакетах, пьяные мужики умываются грязным снегом на улице, кто-то засовывает руку в потертые джинсы отвратной старой бухгалтерши, весь сортир залит блевотиной. Занавес.

Так вот, друзья, культуру страны и народа ее населяющей легче всего определять не по поголовья писак стихов и прозы на душу населения, им мало говорить на "калиновой" мове и гордится вековой казацкой историей, не достаточно вывешивать государственный флаг на день защиты еврейской общины города Малый Бобрик или же искать хохольские корни у любой исторической личности и таки их находить, документируя это в клоаке украинской википедии. Культуру легче всего определить по тому, как человек ест и где, простите, гадит. А все остальное лишь дополняет, это как одеть спортивный костюм под туфли Berluti Rapiécés Reprisés, например. 

PS: все это собирательный образ, есть заведения лишенные большинства изъянов, но идеала я не видел ни у нас, в провинции, ни в столице. Разумеется, я не ем каждый день в ресторанах, где в счете не меньше двух нулей со значком $, но и в нищебродские столовые не хожу. Этот пост - типичная картина "идеального" украинского заведения, где "идеальный" украинский человек может поесть в обеденный перерыв или посидеть с друзьями вечером под пивко.
запостили в IMHO, Юмор, Жизнь | постоянная ссылка
Show Forecast Google Chrome extension
запись опубликована 25 February 2010 примерно в 20:16
Приветствую. Сегодня я хочу представить свое первое расширение (самый дебильный перевод слова extension) для браузера Google Chrome. Я когда-то эту поделку гугла облил с ног до головы дерьмом, но времена изменились и теперь хром мой основной браузер дома, на работе и даже на iMac-е, где он заменил тормозной фаерфокс с уродливым рендерином и родной Safari.

Но, ближе к делу. День назад мне почему-то стукнуло написать какой-то extension. Идея пришла сама собой, когда сидящий за спиной товарищ (не ахтунг) спросил, а когда же выйдет новая серия Хауса, которую можно было бы посмотреть под пивко. Погуглил - для хрома такой штуки небыло и вот за пару дней выкатил уже готовую версию. Прошу любить и жаловать, Show Forecast. Простой дизайн, настройка за 10 секунд и у вас уже есть своя личная программка любимых сериалов. Скриншоты, ссылку на загрузку и более подробное описание пожно найти на странице дополнений гугла. 

Теперь пара слов о технической части. Я, as always, попытался выучить что-то новое. Как известно, все дополнения для Chrome пишутся банально на javascript + html. В подробности процесса я углубляться не буду, все и так отлично расписано в официальном мануале, просто пара слов об интересных вещах. В драфтах html5 появились много нового и инновационного, а в том числе и storage, который призван заменить кукисы для хранения данных client-side. В хроме реализованы 2 подсистемы хранения: web storage (и то только localStorage в виде переменной-массива) и web database. В детали первого углубляться не буду, это обычное key-value хранилище для integer и string (bool,float,double,array etc - все это по typeof в сторедже отдавало string), а вот второй механизм намного интереснее, так как представляет собой полноценный sqlite внутри браузера. Да-да, теперь в js можно писать запросы на языке sql. Все это реализовано на текущем этапе достаточно сыро, транзакции в БД являются ассинхронными без вариантов. Результат просто отдается в callback функцию. Причина этого понятна - нам не нужны зависания браузера, но вот написания кода с несколькими последовательными запросами это усложняет и замедляет. Код extension-а я отдельно выкладывать не буду, кому интересно - качайте crx файл, меняйте расширение на zip и смотрите сами. Код пока очень грязный, если мне будет и дальше это интересно, либо же на на этот плагин будет спрос, то непременно отрефакторю. В любом случае без этого на текущей версии планируемую i18n интернационализацию будет очень неудобно вводить. Будут вопросы, задавайте без зазрения совести на странице модуля.
запостили в Интернет, Арбайт | постоянная ссылка
Как заработать на покушать, from фриланс to аутсорсинг
запись опубликована 26 January 2010 примерно в 17:07
Мало кто знает, что я юрист УАБД по образованию, но как-то курса так с 1го я вдруг внезапно понял, что сделал кардинальную ошибку, выбрав своей будущей профессией занудное червекопание в правовой почве. Пиздобольством я никогда не был обделен, но адвокатом не мог стать по причине своей импульсивности и болезненному непринятию чужого мнения, наличия рыжой бороды, деревянной ноги и попугая на плече, а ставить печать пузом с горизонтальным галстуком в какой-то нотариальной конторе мне не позволяло самолюбие и жгущее в районе копчика желание заниматься полезным и интересным. И ударился я в интернет-заработки, только не банерклики или всякие сапы-хуяпы, как представляют это себе некоторые, а в удаленное выполнение работы: фрилансинг, а позже и аутсорсинг, простите, что объясняю, как для дебилов. Сперва быдлокодил всякие магазины на php, теперь чаще на objective-c (айфоны, да), c++, perl, c# и в последнее время - python.

Самым важным в нашем нелегком деле - иметь знания. Притом, тут даже важно не количество, а определенный вид и его качество. Если хочешь купить новую коллекцию анимэ-дисков, учишься на 3м курсе какого-то политехнического, а в свободное время любишь одеваться в латы, борясь с хитрыми троллями и коварными гоблинами в Святом Лесу Мудрости - твой выбор php. Это такой себе стереотипчик, который соответствует действительности лишь частично. По количеству тасков на рынке фриланса\аутсорсинга PHP несомненно находится в тройке лидеров, окруженный призраками всяких яв, сишарпов и прочих enterprise-level языков, которые совсем некогда учить индусу, тьфу, студенту. А вот php самое оно, ну чтобы попробывать сколотить стартовый капитал, купить себе айпод, клевую бандану и сводить девушку в кино, где на последнем ряду такое иногда происходит, ого-го! Но важнее всего для старта - отпозиционировать себя на поприще виртуальной работы, проверить свои силы, исполнительность, ну и другие характеристики, необходимые для домашнего программиста и проститутки: умение не спать по ночам, умение делать все, умение сдирать максимум денег за минимум услуг. Поэтому, если начинаете с нуля и хочется сразу почувствовать живые деньги, то советую не колебаться с выбором. Если же вы достаточно непохо владеете чем-то, где паттерны программирования и неймспейсы не просто моднявая поправачка, а вполне необходимая вещь - вам будет еще проще, деньги будут не только живыми, но и достаточно большими.

Если с этим левелом вы справились - следующая важная штука это, несомненно, поиск заказчиков. Советую изначально искать их в real life, а не на фриланс порталах и брать некоторую предоплату. Это очень мотивирует, если не сделаешь сайтик, а бандану уже купишь - могут дать пиздюлей. А если серьезно, нужно сразу смотреть за границу, у нас тут копать нечего. Мои страны-фавориты: Прибалтика (русский это ок), Нидерланды (самые милые заказчики), Италия (тут нужно знание языка, чот английский они не любят) и Бельгия. В США одни евреи, в Китае одни китацы, в Индии - индусы, а в СНГ - жлобы, евреи, китайцы и индусы, ну вы поняли. Причем искать заказчиков нужно хитрым образом: сперва, как полагается, вы типичный гастарбайтер: опыта работы под ноль, портфолио, как у начинающей порномодели из Якутии, умение общаться с клиентами и наглеть, как у монашки из женского монастыря, а суммарно вы такая большая куча полного ничего. И вот значит что мы делаем, берем заказов штук так под 20, обещая работодателю полный альтруизм и пансион, то бишь за работу вам заплатят пачку воздуха. В таком случае забугорный буржуй чешет свою репу и понимает, что ничего по сути не теряет. Обосновать это можно ложью, прикрывшись работой в Красном Кресте или приступом параноидального бескорыстия, либо же рассказав правду. Из этих 20ти работ по причине вашей зелености примут работ так 5, что уже неплохое начало. Дальше можно постепенно двигаться вверх и вверх по ценовой лестнице, а со временем (у меня ушло чуть больше 2х месяцев), достигнув опеделенного личного максимума (баксов 200-300 за один таск для начала, не стоит наглеть), стоит остановиться, если не хотите всю жизнь кликать F5 в поисках заданий по созданию очередного модуля для джумлы, друпала или оскоммерс. Дальше идет самая соль, которая, возможно, по счастливой случайности, помогла мне перейти от постоянных жопных дедлайнов и закрашивания седых волос на висках к постепенному нарашиванию жировых отложений. Вам необходимо смотреть в сторону аутсорсинга. По сути, плюсом является опять таки работа из дома либо из собственного офиса, добрый иностранный заказчик, гибкий рабочий график, хорошая интернациональная команда и пиздюлей дать вам уже практически не могут по причине больших расстояний. А это, я вам скажу, почти халява, ваш покорный слуга числится сейчас в 4х различных аутсорс командах, в 2х работает уже года 3, успевает делать все и ему еще хватает еще времени сводить сына на рыбалку ну или собаку на рыбалку, тут уж кто чем богат.

Далее пару слов  про организационный момент. Я вам не советую связываться с русскими фриланс биржами, где основной валютой идет ебанный вебмани, лишенный приятного бумажного хруста. Приучайте себя к тому, что у вас есть visa или mastercard, куда ваш работодатель скидывает денежку. Мне часто задают вопрос про налоговую, легальные аспекты и подобное. Ну, я вам скажу, как какой-никакой, но юрист: факт получения денег на ваш карточный счет еще не означает, что вы получили их за предоставление определенных услуг, все это слабодоказуемо, да и поебать на вас налоговой, у них задача поважнее есть - давить малый и средний бизнес. Второе правило - берите предоплату. Наебывать вас будут периодически, даже в цивилизованных странах с многовековой историей встречаются редкостные гондоны. Ни в коем случае не ведите разработку на чужих серверах и не предоставляйте исходный код полностью до получения оплаты. Третье правило - научитесь хорошо писать ТЗ и по каждому пункту заранее напишите стоимость либо же планируемое количество затраченного времени. Я вот сейчас беру 20\40 евро в час (в зависимости от языка реализации), это средняя зарплата дворника\почтальона в Швейцарии, но мне на жизнь хватает. Четвертое и основное правило - будьте предельно вежливыми и приятными, скорее всего при положительном результате заказа к вам обратятся еще несколько раз, а потом может посоветуют еще кому-то.

В итоге, если найти свою нишу на рынка, то можно зарабатывать примерно 1000 евро в месяц уже через год, и это только с одного рабочего места. Но не стоит забывать, что конкуренция достаточно большая (поэтому я ушел от php преимущественно к objective-c) и гарантий никаких, но это все же лучше, чем пытаться открыть свой реальный бизнес в нашей коррумпированной и бесперспективной стране. 
запостили в IMHO, Жизнь, Арбайт | постоянная ссылка
Yandex Maps для iPhone (YaMap Web)
запись опубликована 13 January 2010 примерно в 16:25
Мне очень нравится браузер в iPhone. По сути, он дал начало новой эры мобильного интернета, поставив на свое место разнообразные огрызки для уродливых симбианов типа Оперы Мини и иже с ним. Построен он (как и браузер Android, Palm Pre и прочих современных мобильных ОС) на основе webkit, что дает возможность рендерить страницы именно такими, какие они есть, а не так, как это влазит на экранчик финского смартфона (да, я знаю о существовании вебкита для S60, но вы его видели?). Это такая прелюдия, дальше, как обычно, предыстория =)

Однажды почему-то мне захотелось поиметь Яндекс.Карты на своем устройстве. В аппсторе были только Яндекс.Пробки, который хоть вроде как бы и карты одновременно с поиском и ЖПС, но до стандартного приложения гугломепс даже и на цыпочках с палкой в руке не дотягивают. Поэтому я, как полагается, почесал репу и приступил к написанию своих карт с блекджеком, навигацией, избранными метками и шлюхами. 

Описание приложения: давайте сперва непосредственно про программку. Лично я считаю, что получилось вполне очень даже. Для установки вам нужно всего лишь открыть ссылку http://mindcollapse.com/files/ymapw/ в Safari на своем яблофоне и следовать инструкциям. После этого на вашем home screen должна появиться иконка YaMap Web, ее и запускаем. Интерфейс карт и все действия аналогичны оригинальным гуглокартам. Щепок для увеличения\уменьшения (пока это делается очень неспешно, я в поисках решения), двойной tap для приближения к определенной точке. Имеется поиск, выбор типа карты, быстрое перемещение к своему местоположению по gps и отображение этих координат на карте флажком. Единственное что - вы можете одновременно тэпнуть 2мя пальцами по экрану для скрытия\отображения меню. Очень удобно, если нужно рассмотреть что-то детально. В настоящий момент приложение умеет не меньше своего оригинального брата от яндекса. Так в чем профит, %username%? Профит в том, что все это client-side, написано и работает на JavaScript, HTML + CSS3, добавляться может любой функционал, какой душа пожелает. А фейлы есть? Есть, без фейлов в наше время никуда, пока что все работает с заметными тормозами, что в принципе не мешает использованию. На 3GS, думаю, должно вообще идеально идти, тестировалось и писалось на 3G. Еще одним фейлом является landscape-режим, мне пока лень его доделывать, поэтому отображается при повороте экрана все смешно, неудобно и непропорционально. Исправлю в ближайшее время. В планах - добавление избранного, прокладки маршрута между 2-мя точками и т.п.

Особенности национальной ебалки: нужно отдать должное js программистам яндекса - код их карт и документация API написаны очень хорошо и на  айфоне все запускается без проблем с единственным но: мобильный safari не знает таких действий, как mousedown, mouseup, mousemove, что делает drag-n-drop прокрутку карты невозможной. В официальной документации разработчика web приложений от Apple описывают следующие похожие event-ы: touchstart, touchchange, touchend, которые по сути являются аналогами мышиных событий с одним исключением, это "многопальцевость" - в callback функцию возвращается event с параметром-массивом touches, где каждый элемент является обычным mousevent. В итоге все решилось обычным initMouseEvent - dispatchEvent для контейнера я.карт, то бишь, отлавливаем touchstart, берем из него первый элемент и вызываем c его значениями mousedown . Для safari mobile есть еще 3 необычных типа событий - gesturestart, gestureend, gesturechange, которые вызываются при выполнений стандартных для айфона движений: щипания для зума либо же вращения 2-мя пальцами. На них было успешно навешено увеличение\уменьшение масштаба карты и скрытие меню. Еще одной проблемой являлось то, что dblclick не поддерживался, являясь системным действием для айфона, пришлось эмулировать, расчитывая микротайм между двумя прикосновениями к экрану. Вот собственно и все по особенностям javascript-ов для айфона, все остальное - рутина. Последнюю версию кода можно посмотреть тут. Никакие лицензии своими действиями мы не нарушаем, т.к. карты отображаются именно в веб-приложении и никакие модификации кода не проводились.
запостили в Интернет, Арбайт, iPhone | постоянная ссылка
Поправки с dealextreme.com
запись опубликована 12 January 2010 примерно в 15:54
Когда-то завалялись у меня пару десятков долларов на пейпаловской карточке: банк накинул за что-то, или с ебея вернули за недоставленный лот - уже не помню. Ну сам факт, гонять их туда-сюда было не нужно, поэтому зашел на сайт всяких китайских вещиц dealextreme.com и заказал переносную usb колонку, внешнюю батарею для iphone, стандартные наушники для айфона с микрофоном и usb-провод тоже для айфона, так как мой уже очень износился и угрожал в любой момент быть съеденным собакой, которая вот уже пару раз как безуспешно покушалась на него.  Заказал все это еще в прошлом году, а пришло только сегодня. 

From Поправки с dealextreme.com
Батарейка внешняя для айфона, емкостью по заверениям китайских производителей 1900 mAh во что верится с трудом, уж больно она легкая, но курочить пока не стал. Сделана "под айфон", внешним видом средней гадости, но не для красоты, а для дела покупалась. На передней стороне есть 4 диода индикации заряда и кнопка проверки. Заряжается от компьютера, интерфейс эппловский, вот только при последовательном подключении айфон - батарея - компьютер айфон не определяется, хотя могли бы пробросить контакты. 

From Поправки с dealextreme.com
Следующая штука много интересней - переносная маленькая колоночка со стандартным 3,5 пальцем. Батарейка в нее встроенная, заряжается от usb стандартным кабелем либо же через любой другой mini-usb. В закрытом состоянии размерами чуть больше яиц среднестатистической взрослой овчарки, раскрывается проворотом на эластичной ноге. Кстати в открытом виде звучит намного лучше, басов как-то побольше и не танцует от вибрации по всей столешнице. Громкость впечатляющая, орет дай бог каждому, а вот качество вполне среднее, но для таких размеров и за такую цену - поражающее воображения и мечтания даже самого чистокровного украинского жлоба. В комплекте идет провод на самосматывающейся катушке толщиной в лобковый волос, поэтому разматывать нужно аккуратно, любя и лелея.

Что касается наушников и кабеля синхронизации айфона - они вполне ок, уши не хрипят выше нормы, провод с фиксатором и модным черным блестящим дизайном. В общем, буду теперь изредка заказывать всякие штуки с этого сайта и писать о них вам, мои кисечки. Остальные фотографии по старой-доброй традиции можно найти в пикасе.
запостили в Железяки | постоянная ссылка
186 posts on 38 pages