.и в продакшен
2.47K subscribers
9 photos
3 videos
107 links
Фаундер-технарь - канал основателя www.jitbit.com, Alexander Yumashev @jitbit

Как быть CTO/CEO одновременно, как растить bootstrapped-стартапы и прочая айтишечка.
Download Telegram
Прошлой осенью в Бостоне на конференции познакомился с очень интересным чувачком... История у него просто огонь (если не врет конечно).

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

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

Потом какая-то компания попросила драйвер для сканера фотопленок. Потом еще одна. И еще одна.

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

Короче, через 5 лет они обнаружили себя в центре бизнеса с оборотом пару миллионов год, под названием VueScan. Про ребят написали все - от "Washington Post" до "New York Times" и PC/Mac журналов.

Сейчас папа с сыном ревёрсят и пилят дрова для 6000 (шести тысяч) сканеров, факсов, копиров и всего прочего говна, которое давно снято с производства и не поддерживается современными ОС.

Обожаю такие истории. Accidental business, да еще и win-win со всех сторон - и людям помогают, и продлевают жизнь старым устройствам, и сокращают кол-во техномусора, и деньги зарабатывают.
👍3
Извините, не про стартапы.

Заметил за собой, что все чаще юзаю конструкцию do-while(false) - никогда не догадаетесь для чего - для "быстро выйти из нескольких вложенных if сразу"

Это хак из мира C-шников, у них так давно принято.

Меня, идиота, научили совсем недавно.

Работает так

do
{
if (xxx)
{
//громоздкое вычисление yyy
if (yyy)
{
//громоздкое вычисление zz
if (zzz)
//чтото делаем
else
break; //выходим нахуй
}
}
}
while (false)

Вы спросите "НАХЕРА? почему не просто if (xxx && yyy && zzz) ?? Ведь сработает "short circuiting" в операторе &&"

Потому что "громоздкое вычисление".

Я не хочу вычислять следующую переменную (yyy и zzz) анлесс мне реально это надо. А внутрь if()-выражения вычисление может и не поместиться.

Вы опять спросите "НАХЕРА? почему бы тогда не вынести вычисление yyy во внешний метод?" А потому что значение yyy я юзаю много раз и не хочу вычислять его повторно. Ну и вообще - читаемо же? красиво же? не?

Собственно, while (false) опеспечивает, что код выполнится ровно один раз.

"Громоздкое вычисление" не обязательно именно вычисление, это может быть, например, чтение из медленной базы данных - самый частый боттлнек на бекенде.

Такая вот оптимизация. Спасибо вам, Сишники.

P.S. подход ни к коем случае не предлагается в качестве паттерна. while(true) { ранний выход } более читаем, например. Но это отличный костыль к уже написанному коду, решающий задачу "быстро выйти из кучи if"
👍1
Гугл собирается в течении двух лет выпилить из Хрома поддержку сторонних кукисов (спасибо Prenom за наводку в чате Самата)

На первый взгляд это выглядит, как защита интересов пользователей, прайваси-шмайвайси. Ура. Подданным предлагается перейти к торжествам и празднествам.

На второй, более трезвый взгляд - это, конечно, удар по конкурентам. По рекламным-сетям, по Фейсбуку, по всем прочим, кто лишится трекинга пользователей (сам-то Гугл не лишится, он продолжит трекать юзеров через альтернативные каналы - Хром, AMP, карты, Gmail, Андроид и тп).

На Хромиум давят Мозилла и Эппл, с их агрессивной кампанией "за приватность", и Хрому приходится чем-то отвечать. И щас был идеальный ответ. Мол, смотрите, мы тоже за приватность (хихи), мы запрещаем куки (хихи). Хотя на самом деле это, конечно, довольно циничный шаг плюс PR stunt, решающий разом кучу проблем, к тому же создающий обманчивое ощущение, что Хром заботится о юзерах, а Сафари и Мозилла - нет.

(бизнесмен и маркетолог внутри меня аплодируют стоя - это действительно умный и классный ход :) )

Не будем, короче, заблуждаться. Как там было в знаменитой цитате Джеффри Хамербахера, который уволился из Фейсбука?

"The best minds of my generation are thinking about how to make people click ads."

PS. Проблему трекинга запрет куки, кстати, не решит. Просто трекинг уйдет с фронта на бэк, через трекинг-пиксели <img src>, через DNS-трекинг (добавляем на страницу ссылки на домены со случайным текстом в доменном имени, и браузер уже при парсинге HTML будет слать DNS-запросы куда надо, вы ведь уже включили dns-prefetch, как советуют в Google Page Speed?)

PPS. в комментах на хакер-ньюс пишут, что монополия гугла - это куда более серьезная проблема, чем реклама с ее трекерами. Потому что реклама, в общем, помогает делать Интернет более открытым и свободным. В отличии от монополий а-ля Гугл. Очень интересная параллель - за свободу слова больше всех борются владельцы стрип-клубов, порно-сайтов, магазинов оружия, продавцы марихуаны и прочие. Это очень мутные и странные бизнесы, но именно ОНИ своей борьбой делают экосистему здоровее, это благодаря им (а не Гуглу и Фейсбуку) мы наслаждаемся отсутствием цензуры, свободой слова и прочими благами современного мира.
Всегда как-то неловко писать о себе, но пара человек в личке и в чатах попросили рассказать, с чего начался наш стартап, как он вырос и позволил мне с семьей (и всем сотрудникам) уволиться с нелюбимых работ и даже завести трактор.

Обещаю скоро написать большой пост на русском, а пока вот вот тут есть мое большое интервью на английском, где все это есть.

#shamelessplug
👍2