There will be no singularity – Telegram
There will be no singularity
1.99K subscribers
248 photos
15 videos
5 files
995 links
Smartface, technologies and decay
@antonrevyako
Download Telegram
2/3

Пример #5: go disrupt somewhere else
Возможно, что ваш продукт можно использовать не только по прямому назначению. Что, если с его помощью можно улучшать другие продукты?
Мой продукт может добавить очевидной ценности к managed db у облачных провайдеров для того, чтобы провайдеры привлекли в клиенты тех, кто запускает базы на вируалках.

Или, например, прокачать учебные курсы по SQL, добавив новые типы задач, которые раньше невозможно было сделать из-за отсутствия подходящих инструментов.

Но, как мы знаем "Он нам и нах@# не нужен, интернет ваш!". Живут люди спокойно со своими проблемами, бэклогом и роадмепом. А тут появляется какой-то хмырь и рассказывает как космические корабли бороздят (зачеркнуто) учит нас делать наш продукт.

Пример #6: go open source
Это мы уже обсуждали https://news.1rj.ru/str/nosingularity/451
Найдется какое-то количество людей, которые будут рекомендовать выложить все в опенсорц и будут утверждать что это "отличная модель для твоего бизнеса". Есть предположение, что они сами никогда так не делали.
На днях наткнулся на oss проект, в который вложились YC, c очень оригинальной моделью монетизации. https://supabase.io/docs/pricing - "дайте денег, мы поставим ваш логотип в README". Это как в зоопарках можно встретить таблички: "Этот крокодил поддерживается ЧОП Аллигатор".

Пример #7: where is my profit?
Бизнес хочет цифр. Собеседник хочет знать сколько он получит/сэкономит.
На одном сайте, который торговал инструментом аналитики git-репозиториев был калькулятор. Указываешь количество инженеров, он умножает их на средний кост $100k/y. Потом следовало утверждение, что внедрение их инструмента даст прирост производительности в 27.5%. Итого - 25 разрабов * $100k * 0.275 = $687k в год будет сэкономлено. При стоимости инструмента в $799/m ROI будет равен x71.
Четко и твердо :)

Но, во-первых, далеко не всегда можно этот ROI посчитать, а во-вторых, это скорее всего брехня :)
Например, лицензия на PVS-Studio стоила 400000 рублей (около $6k на тот момент) в год. В абсолютных цифрах это дофига. Но в месяц это $500. Это половина зарплаты джуна. Только вместо джуна вы получаете экспертизу 10 синьоров. Как тут посчитать ROI?

Один дополнительный индекс может увеличить скорость запроса на 2 порядка, что повысит удовлетворенность клиентов, что приведет к росту выручки. Так же это даст возможность сделать дополнительные фичи, которые раньше было сделать нельзя. Как тут посчитать ROI?

Как посчитать ROI от внедрения автотестов? А от написания документации? А от кофемашины в офисе? :) Да, есть исследования, которые говорят, что стоимость бага, обнаруженного в процессе разработки до 400 раз ниже того же самого бага, обнаруженного в проде. Вы верите? Вот именно!
Тут можно только наврать. Fake it till you make it, как говорится.

Пример #8: don't touch me!
Кроме всего этого, вполне возможно, что человек, с которым вы разговариваете, преследует совершенно неочевидные для вас цели. Ему не хочется брать на себя работу и ответственность за сбор размазанной проблемы в одну точку. Он придумает 100500 причин, почему ваш проект плохой и вам стоило бы пойти на завод и не тратить его время.

Пример #9: we will call you back
Скорее всего, человек ни черта не понял, но послать вас ему мешает воспитание или культурный код.
В западной культуре считается нормальным написать человеку followup, когда у вы найдете время переработать message и сделаете какой-то значимый апдейт своего продукта.

Пример #10: incredible amazing awesome!
Этот человек тоже ни черта не понял :) Но он может пропитчить вас кому-то еще, не теряйте с ним контакт.
3/3

Специалисты по кастдеву к этому моменту, скорее всего, допивают вторую пачку корвалола. Я же писал disclamer, но его никто не прочитал :)
Давайте еще раз - я выразил свое мнение по поводу кастдева инновационного проекта, полученное в результате множества питчей.

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

Если у вас нет денег на то, чтобы покупать еду пока вы пилите свой проект, то не надо меня слушать. Идите на работу или к vc. Но оказывается, что заниматься привлечением денег это отдельная фуллтайм работа. И ей нужно заниматься в рабочее время. Так что, скорее всего, сразу на работу.

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

Подведем итог.
Если вы делаете что-то новое, чего еще никто не делал, вы просто потратите время на мнение людей inside the box. Их много и они обязательно повлияют на ваш продукт и своими советами сделают его хуже.
Из всех моих многочисленных питчей, только одна беседа принесла очевидную пользу.

Большинство людей, которым вы будете это все питчить - не ваша ЦА. Не расстраивайтесь, это нормально :)

"Но ты же пивотнулся", - заметит постоянный читатель. Да, пивотнулся. Но в пределах концепции. Я поменял фокус и ЦА. Общая идея осталась прежней.

Стоит подготовить несколько вариантов питчей, формулируя message для разных аудиторий. From the scratch вы этого не сделаете, но в процессе общения, скорее всего все станет понятно. Основное правило - питчите почаще. Чем больше вы будете рассказывать о своем проекте другим людям, тем лучше сами его поймете :)
Знаете сколько раз мы меняли тексты на сайте? А сколько раз я переделывал питч?...

"Ты вот дофига умный, а какой результат?"
Выраженный в цифрах - никакой :)
Я в процессе и все только начинается.

"Что делать-то?"
Я не знаю :) Моя стратегия - делать продукт и делать его максимально хорошо.

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

Но есть ЦУ от js-разрабов :)
И не от кого-нибудь, а от человека, который сделал prettier.
Для тех кто не знает - это тулза, которая сама форматирует js - код, согласно правилам в линтере.
Т.е. импакт его работы не поддается подсчету. Сэкономлены миллионы человеко-часов и миллиарды долларов.

И вот тут выходит ЭТО.

https://jlongster.com/how-one-word-postgresql-performance

Если коротко - человек узнал, что можно делать INSERT сразу нескольких строк сразу, а не по одной и поспешил рассказать об этом миру...

Не, ну допустим, что не всем это очевидно, ок (хотя, фак, как это можно оправдать). Но блин, делать поля с именами timestamp и group_id типа TEXT это как вообще?
Следующим открытием, видимо, будет то, что timestamp можно не хранить текстом и group вынести в отдельный справочник.
А потом про COPY.

Но и это еще не все.
Человек написал тулзу, которая работает с линтером, но сам, похоже им не пользуется.

await внутри for!
forEach вместо reduce!

И никто из 23.7k его фоловеров в твиттере ему не напихал!

Работает в stripe, кстати.

Короче, фак дыс щит.

PS: в анализаторе есть правила, которые выдают notice при сильном расхождение имени колонки и типа для нескольких кейсов. timestamp там тоже есть.
Запостил лонгрид с вредными советами на медиум и дзен.
Еще у меня есть твиттер, в который я, оказывается, напостил больше 80 мессаг. оО

К фб я так и не могу привыкнуть, санаторий сотоны какой-то :(

Каждый ресурс диктует свой формат, к которому тяжело адаптироваться. В июне начну постить статьи с разбором правил анализатора holistic.dev и постараюсь поддерживать актуальность во всех сетях.

Присоединяйтесь там, где вам будет удобнее :)
Очевидная, казалось бы вещь: «храните запросы отдельно от кода» в 90% вызывает недоумение. Научились же css от верстки отделять. Чем sql хуже?

Да, придется планировать архитектуру так, что невозможно будет клеить запросы в рантайме. Так это и прекрасно!

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

Не считая того, что сам код станет более чистым и формальным.

Вот мотивирующая статья с еще несколькими плюсами такого подхода:

https://habr.com/ru/post/426833/
Корпус за $250 :)
11 глав о том, как называть переменные
https://namingthings.donedone.com/

¯\_(ツ)_/¯
Из твиттера.

Бенчмарк:
json в pg через django vs redis.

«Вот так, с помощью нехитрых приспособлений буханку белого (или черного) хлеба можно превратить в троллейбус… Но зачем?»

Автор не понимает как в redis обеспечивается персистентность и разницу в представлении redis blob против json в pg. Так же не ясен физический смысл происходящего...

https://www.peterbe.com/plog/redis-vs-postgres-blob-of-json
Hewlett Packard выложили 80 страниц с описанием изменений в postgresql 13 по сравнению с предыдущей версией.
Выделил самые, на мой взгляд, интересные:
- CREATE OR REPLACE TRIGGER. Раньше можно было только создать, заменить было нельзя
- ALTER VIEW. Теперь можно переименовывать колонки во вью без их пересоздания. Раньше это было особенно больно для тех, у кого были каскадные вьюхи (не делайте так никогда :))
- В B-Tree индекс добавили дедупликацию в пределах страницы.
- Для каждой отдельной таблицы можно настроить свои значения autovacuum при создании и потом поменять.
- Теперь to_date/to_timestamp зависит от локали. Возможно, это поломает кому-то приложение.

Полный документ
Новый день - новые идеи для правил анализатора...


https://twitter.com/yephph/status/1249246702126546944
Тред про clojure.
Я немного интересовался, выглядит прикольно, но не погружался, т.к. на данном этапе проекта нет смысла :(

Если Роб так и будут кормить завтраками с дженериками в go, перепишу все на haxe, нафиг :)


https://twitter.com/timofeipl/status/1268246291655667712
Для тех, кто работает с базами из IDE от JetBrains, рекомендую посмотреть этот видос:
https://www.youtube.com/watch?v=I4Ifpg5_CIs

Использую DataGrip с начала ее появления, и удобнее тулзы для работы с базами я не видел.
На винде использовал IDE от sqlmanager.net, но после переезда на мак приходилось страдать.

В видосе полезно приблизительно все. Я не знал процентов 80 и теперь боюсь подумать о том, сколько же времени я мог сэкономить, если бы знал хотя бы половину.
Один переход между таблицами по FK чего стоит!

Функционал DataGrip встроен и в другие IDE, поэтому будет актуально для пользователей всех продуктов JetBrains.

Кстати, разрабы завели баг-трекер с человеческим лицом в виде чата в телеге, где довольно любезно отвечают на запросы юзеров. Я уже зарепортил парочку :)
https://news.1rj.ru/str/datagrip
На глаза стали попадаться рецензии на книгу The Culture Map:
- от Руслана Фазлыева, который ecwid, который был у Дудя
- от Виталия Мышляева, который concert with me, которым я парсил базу вот в этой истории https://news.1rj.ru/str/nosingularity/433

В последнее время стал часто сталкиваться с проблемой донесения своих сообщений до зарубежных контактов. Отдельной проблемой является linkedin. Там на сообщение с холодным контактом дают только 300 символов. Приходится писать, сокращать :)

Кроме того, довольно часто человека может обидеть какая-то фраза, которую ты специально добавил для small talk или просто, чтобы показаться вежливым.

Вот еще неплохой мануал по отечественным инженерам:
"НИКОГДА НЕ ЗАГОВАРИВАЙТЕ С РУССКИМИ ПРОГРАММИСТАМИ"

Короче, люди - это сложно :(
Есть такое выражение "лежать в сторону мечты".
Я нашел подходящую картинку

https://news.1rj.ru/str/Reddit/9934
Если вы хотите рассказать детям про астрономию, или сами освежить свои знания (а то сейчас есть мнение, что земля плоская), рекомендую вот эту штуку.
Чего там только нет - и интерактивчик с вращением планет, и космические тела в разрезе, и ночное небо из выбранной геопозиции с хинтами про звезды.

В вебе бесплатно, приложухи за деньги.

https://www.solarsystemscope.com
Forwarded from addmeto
OpenAI выпустили свой первый коммерческий продукт: The API. Это набор инструментов, для работы с текстом. Там и переводы и написание (новостных) текстов, и все что можно вырастить из их умения с текстом работать - не зря они недавно подняли шумих вокруг GPT3. Кстати, интересно, ждать ли теперь предобученную модель для gpt3 не ясно, может и нет, зачем им конкурировать с собой https://www.bloomberg.com/news/articles/2020-06-11/trillions-of-words-analyzed-openai-sets-loose-ai-language-colossus
Не все знают, но SQL можно использовать не только для работы с данными в БД.
Есть возможность манипулировать данными из командной строки.
Зачем такое может понадобиться?

1) Парсинг JSON-логов
https://github.com/avz/jl-sql
Можно придумать много хороших usecases. Я писал про эту тулзу в статье про тестирование логов - https://news.1rj.ru/str/nosingularity/198

> cat data.json | jl-sql 'SELECT key, SUM(value) AS sum, COUNT(*) AS count GROUP BY key'

2) Работа с параметрами операционной системы
https://osquery.io/
Совершенно безумная и красивая идея. 257 источников данных!

> osqueryi --json "SELECT * FROM mounts m, disk_encryption d WHERE m.device_alias = d.name AND d.encrypted = 0;"

3) Работа с изображениями
https://github.com/escherize/img_sql/

> ./img_sql.py -i samples/matrix.jpg -o samples/matrix_out.jpg -s 'update pixels set r = g, b = r, g = b where x > 700'
Осталось написать транспайлер в GLSL и будет win :)

4) SQL для MongoDB, DynamoDB, Kafka, S3
Если не хочется работать с монгой, но очень нужно, то можно выкрутиться так
https://rockset.com/solutions/mongodb/

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

5) SQL для запросов по git репозиториям
https://github.com/augmentable-dev/gitqlite (переименовали в askgit)

> -- how many commits have been authored by user@email.com?
> SELECT count(*) FROM commits WHERE author_email = 'user@email.com'
Вот это UX, который делает деньги.

«Очень интересный опыт - я купил новую Теслу не поговорив и не увидевшись ни с одним человеком.
Пока страховая разбиралась с выплатой за прошлую машину, я решил полазить по сайту Теслы и посмотреть что нового. Увидел, что модель 3 теперь можно взять в lease (мне кажется так большинство американцев получают машины - ты ей не владеешь, просто платишь ежемесячные платежи, по сути покрывающие ее износ, и через 2 или 3 года сдаёшь обратно). С лизом трёшка стоила очень привлекательно, поэтому я быстро собрал свою конфигурацию, и нажал check out. С карты списалось $100 за бронь и пришло сообщение, что со мной свяжутся.

На следующий день пришла смс, что машина будет готова всего через 2 дня и мне нужно подписать документы и добавить ее в страховку. Я зашёл на сайт Тесла, залогинился в свой кабинет и электронно подписал там договора и документы на Лиз, скопировал и отправил VIN машины в страховую, откуда мне через пару часов пришёл скан новой страховки, которую я загрузил обратно в сайт Tesla.

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

Если бы я был автодилером, я бы уже даже наверное и не напрягался, уже поздно.»

~
https://www.facebook.com/photo.php?fbid=10159753713530410&set=p.10159753713530410&type=3