Bite the Byte
2.66K subscribers
24 photos
1 video
237 links
Download Telegram
Хто не знає історію — приречений тупити, коли про неї запитають! Щоб ви не були, як пітун, який в голові має кашу, я зняв відео про історію контроля версій. 😁

Наче й 25 хвилин, але насправді це базові бази і взагалі сфокусоване на драмі 2005 року, коли з‘явилися на світ гіт та меркуріал. Я доволі непогано пам‘ятаю ті події та ще й освіжив пам‘ять, полиставши лкмл, тож майже гарантую абсолютну точність. 🤣

https://youtu.be/6HQZhSHgf8U
Twitter, Twitter

Ілон Маск з Твіттером зараз трошки як у пісні Рамштайна: Zwitter, Ich bin in mich verliebt. 🤣

Такі чудеса творить, це капець. Всі ці "роздрукуйте код", "знищіть все що роздрукували" — наче виявити обсяги кода, які люди коммітили за останній місяць, не можна зробити простим шел-скріптом... Публічне приниження всього, що відбувається у компанії, імхо, не пройде повз. Маск наче в позі "зараз скинемо баласт з компанії", але по факту буде прямо навпаки — підуть адекватні люди, а залишаться ті, кому йти нема куди.

Може він намагається розраховувати на те, що при декларації "ми скидаємо баласт" у всіх кльових чуваків буде піднесення моралі типу "нарешті стане вільніше дихати"? Але ж не з таким підходом, хаха.

Тому здається, що Твіттеру кірдик. Може не повноцінний, але якесь згортання у розмірах його чекає.

Я тут прочитав цікаву теорію про те, що вся ця історія — це спосіб монетизувати акції Тесли. Тесла має неймовірно завищену оцінку, і Маск можливо не проти якось з того мати трохи зиску. Очевидно, якщо він прямо піде продавати акції, ринок запанікує і тій оцінці прийде гаплик. Тож він купляє Твіттер (теж по не дуже адекватній ціні) за залог акцій Тесли — причому влаштовує виступ із судом, де його прямо змушують це зробити, і тепер ці акції пішли у рахунок купівлі по доволі привабливому курсі.

І якщо він вийде з Твіттера через рік-другий по оцінці в 5-10 млрд доларів, то зовні буде виглядати "ну ти Ілон лоханувся", а по факту це непогане хеджування від того що акції Тесли колапсують.

Але повернемося до Твіттера: трохи шкода, що так відбувається. Я згоден з Маском, що компанія дуже роздута і взагалі імхо вона вже з десяток років активно воює з Твіттером-явищем, і нічого в неї не виходить. 😁 Шкода, що Ілон такий, і замість приводити компанію до тями, він активно демонструє власне невігластво.
Ми з Максом Іщенко записали подкаст з думками про те, що ж Ілон Маск творить з Твіттером. Велкам послухати. :-)

Прикол: ми записували у п'ятницю, а сьогодні можна вже в твіттері наблюдати, як деякі прогнози збуваються (це 3 різних посилання).

P.S. Коментуйте прямо там у Ютубі, Ютуб любить коменти. 😁
Після історій про скорочення у Твіттері Сева дуже вдало сформулював питання, яке стоїть перед Ілоном: як змусити компанію трансформуватися.

Твіттер затовстий, «10 менеджерів на 1 програміста» — та й програмістів занадто багато. І суперповільний: роками розповідають про те, як складно зробити редагування (як воно взагалі публікує щось, це ж капець, не інакше як десь магічне звірятко допомагає).

І це з точки зору бізнесу все погано, а для виконавців все дуже комфортно: дохід непоганий, напружуватися особливо не треба. Але ж зазвичай в компаніях є ядро, яке працює, а є баласт, просто у Твіттера співвідношення не 1:1, а 1:666.

Як виявити людей, які можуть працювати? Ми як обговорювали, майже одночасно прийшли до висновків, що треба організувати команду, яка працює за своїм графіком: за тиждень зробіть фічу, або гудбай.

Мені зараз спало на думку, що можна як з Алібабою: береш 2+ людини, даєш їм набрати команду, хто перший зробив, той залишається в компанії. Змагання, кризовий стан, всі діла. 😁

Здається трошки більш раціональним, ніж «всіх найнятих у парні дні місяці звільняємо», чи який там в нього підхід.
Ілон продовжує постачати матеріал. Він робить ситуацію дивною — кожна тема, на яку він звертає увагу, варта того: Twitter Blue не мав ніякого сенсу, розробників у Твіттері забагато, менеджерів теж, воно повільне, є купа технічних проблем, "редагування зробити неможливо" тощо.

При всьому цьому його методи роботи токсичні та неефективні. Про галочку у підписці ви напевно всі бачили істерику. Про звільнення ми з Максом обговорювали у подкасті і я писав минулий пост. Ну й от "Твіттер падла повільний!"

Так, це робить мету для компанії дуже очевидною — доки він не напише інший твіт. Але воно таке ж саме токсичне, як і звільнення, і скоріш за все ще більше відлякне тих людей, саме які потрібні для виконання завдання.

Інше питання, чи є там такі, чи може у них у всіх вивчена безпорадність, як ото у коментарях до цього твіта обговорювали "та щось таймлайн реально повільний" — "ну так всю команду моніторінга таймлайна ж звільнили". Вони що, руками той таймлайн моніторили? Всіх звільнили, тепер ніхто графіки знайти не може?

Коментарі "проффесіоналів" під твітами Ілона доставляють не менше твітів самого Ілона. :)

UPD. Блін, там ще й GraphQL! Ну здавалося б, це ж Твіттер, не тища кастомних фронтендів, ти можеш підлаштувати відповідь під потреби клієнтських аппок ну дуже легко! Нєєє, давайте жерти Gr💩phQL.
Як же я ненавиджу росію і росіян, террористів гнусних. Маю надію що після війни вони скотяться в кам'яний вік і вся їхня гнусна культура там згине к чортям собачім. 😡
Переглядав анонси Cloudflare за минулий тиждень — в них був тиждень анонсів — і звернув увагу на те, що в них у беті з'явилися черги для воркерів, під назвою Queues (не так щоб вони були дуже вигадливі, але це точно краще за назви в AWS).

Ну і все з ними наче нормально, черги й черги, не дуже там щось цікаве є — може ще будуть доробляти, не знаю. Пишу я цей пост через приклад, який вони там заюзали.

Найпопулярніший сервіс генерації uuid4 в інтернеті — uuid.rocks — вирішив перевірити, чи вони справді унікальні UUID генерують. Через велике навантаження — до 80 тисяч запитів на день (вау, це майже один в секунду) — це було дуже нетривіально і вони заюзали чергу, щоб писати логи в сховище. Ну ясно що навантаження не так щоб mind-blowing, але ЛАДНО.

uuid.rocks це якийсь крінж-фест. Обіцяють час відповіді, якщо ти їх з воркерів заюзаєш, близько 5 мс. 5 мс??? Це тупо вічність!

Ладно, може в них якась фантастична логіка? Ха-ха: "uuid npm package". Капець, спільнота ноди вже майже до центру Землі добралося, тепер замість однорядкових бібліотек — однорядкові сервіси.

"Powering multi-million dollar companies with over 20,000 UUID’s per day 💡" 🤦‍♂️

Руки чухаються зробити leftpad.rocks.
Можливо ви подумали, що то була одноразова акція, але ні — ми з Максом записали другий епізод Startup talk, і на цей раз дуже старалися не згадувати про Твіттер. 😁

Тож дивіться і не забувайте коментувати, цікава ваша думка, бо тема, здається, може зачепити всіх нас.
Якщо подивитися на останній подкаст прискіпливо — як інженер, а не як глядач, — відчувається доволі сильна різниця в якості між нашими з Максом картинками. Трошки дратує, якщо чесно.

В першому випуску різниця ще більша, але це тому, що я його записав в OBS з дефолтними налаштуваннями, а там якісь 2 мбіта були. Але перед другим я сів, поекспериментував з якістю, визначив, що після 30 мбіт різниці не побачиш, і... ну ось маємо, стало краще, але не стало офігенно!

Чи це Sony a6400 настільки якісніше знімає відео, ніж Fujifilm X-S10? Ні. Ну тобто виходить що так, але ні.

Різниця в тому, що a6400 здатна записувати відео на карточку скільки заманеться, аж поки карточка не скінчиться, тож Макс має змогу записати на камеру. А в X-S10 є обмеження на 30 хв... :( Тому мій вибір був — писати в OBS, бо через 30 хв камера вимкнеться, а в OBS буде писати, доки не перегріється (тобто годинами, доки на вулиці не літо).

Тож я сів поколупатися з OBS'ом сьогодні, і зрозумів, що якості, яку можна порівняти з камерою, чекати не можна. Неважливо, який енкодер юзати — епловський хардварний, x264, av1. Неважливо, чи то OBS, чи QuickTime, чи Ecamm Live. Бітрейт в 100 мбіт, як в камери (точніше 130 ABR) — пофіг. Відео з камери (з фуджика, маю на увазі) — чітке, аж тріщить, а з OBS наче й кльово все, коли окремо дивишся, а в порівняні — мило. :( Ще й в червоне трохи завалює, а з камери з кольорами все норм — а я думав, що то баланс білого провтикує (хоча він в мене зафіксований).

Може то Camlink 4K таке робить, теж незрозуміло. Швиденько жодного огляду на ютубі не знайшов, де б хтось казав — а от ця штука передає відео краще за камлінк. А шкода, замінити камлінк було б дешевше, ніж камеру. :)

Не знаю, що робити: чи то писати на камеру кусками (але хтозна, коли вона тоді перегріється), чи то забити... міняти її я зараз все одно не поміняю. :)
Ефективність сервісу

Колись існувала мантра про те, що програмісти значно дорожчі за залізо, і не треба думати про залізо. Але в якийсь момент, особливо для бізнесів, де багато безоплатного навантаження (наприклад, для Твіттера) — це стає болісно. І от один екс-твіп (tweep — так кличуть себе працівники Твіттера) пише, чому ж вони сиділи на власному залізі: бо потреби Твіттера у 500 тисяч серверів виходить занадто дорого навіть з величезними знижками! Типу 300 мільйонів доларів на місяць.

Їх співробітники обходяться дешевше! 7 тисяч людей з медіаною в 150к (візьмемо із запасом) — це мілліард на рік, а клауд тоді виходить в 3.6 млрд на рік!

Так от, мене якось дуже вразила кількість у 500 тисяч серверів, і я пішов копатися. Наче у 2 кварталі 22 року DAU (це daily active users) у Твіттера було 237 млн людей. Це виходить всього лише 500 людей на сервер?!

Так-так, я розумію, що там не тільки сервера, які обслуговують людей, це і всілякі сховища даних, аналітичні приблуди, он там чувак згадує кластер Presto на 1000 нод.

Але в Касті — вибачте, не буду розкривати цифри, бо вони вже якби не мої — ефективність виходить приблизно в 30 раз вище. Навіть якщо я помиляюся з оцінками кількості серверів, то це в 10-20 разів більше народу на 1 сервер. Це теж включно з усілякими серверами для аналітики, еластіксьорчі для пошуку і для логів (окремо) тощо.

Але є ще цікаві моменти:

• Так, Каста технічно — непогана, але не неймовірна: мені здається, що за останні 3 роки сервіс сповільнився десь у 2-3 рази. Стало більше можливостей, коду, даних, десь якісь оптимізації провтикалися. Я думаю що за 2-3 місяці сфокусованої роботи (і може переходу на веспу ггг) можна було б повернути частково.
• Сервери Касти — це типу 4-8 ядер і 64-128 Гб оперативки. m6dg.12xlarge, яких треба 500 тищ — це 48 ядер і 192 Гб оперативки. Просто інший рівень взагалі.
• Що складніше, Каста чи Твіттер? Мені здається, що при інших рівних 1 користувач єкомерса створює більше навантаження. Тим чесніше це порівняння.

Тобто реальна різниця між тим що є і тим що має бути мінімум два порядки. Що робили всі ті тисячі програмістів?.. Невже ніхто не хотів зекономити грошей на чергову тисячу додаткових програмістів (насправді не тисячу, а 20 тисяч?) — і отримати якийсь цікавий бонус у процесі?

Ден Луу написав тред, який же Твіттер технологічно офігенний. Але мені здається, що ця метрика, хоч і недосконала, але при такій різниці це вже показник. А інженери у Твіттері просто розважалися, а не робили щось корисне. Фу на них.
Тут друзі Севи (брата мого) зробили цікавий девайс для військових, дистанційний підривач. Поки вони його сертифікують і проходять всю офіційну бюрократію, в них намалювалися вже замовлення на комплекти від 4 бригад. Але щоб все це виготовити — треба гроші, причому прям 240 тисяч гривень на все про все.

Вони, нажаль, якихось прямих виходів на волонтерів не мають, і тому фінансування досі не змогли знайти.

От ми і придумали попросити гроші у вас. 😁 Але щоб воно було цікавіше і зрозуміліше, то ми зробимо стрім завтра ввечері, де обговоримо що вони взагалі зробили і як воно працює, проблеми створення заліза (і мілітарного, і цивільного), і взагалі, думаю, ще зачепимо питання мілітарі-стартапів.

Тож ставте собі нагадування в календарі: 29 листопада о 18:00. І поширюйте теж, будь ласка, бо дуже потрібні гроші. 😁

P.S. Це вже наступний рівень від кавунів, працюємо над черешнею. 😏

P.P.S. Це я розраховую, що відключення світла та інтернету не завадять.
Треба сказати, що chat.openai.com — це прям нормальна розвага. :) Не впевнений, скільки ще чекати, поки воно замінить куски м'яса, але gzozizg дає можливість посміятися нормально 🤣
За результатами мого відео про типізацію Павло Коломієць запропонував мені зробити стрім — завтра (вівторок 6 грудня) о 18:00. Ну щоб він мене трохи роздуплив за нормальну типізацію, щоб я більше не згадував джаву і го у фразах про статичну типізацію. 😁

Паша, якщо ви його не знаєте, довго робив цікаві речі в Evo (в prom.ua тобто), а останні три роки — ото час летить 😵‍💫 — працює над EdgeDB. Тобто очевидно, що розмова може збиватися трохи в Rust, але ми будемо намагатися бути цивілізованними. 😁

Збираємося обговорити цікавішу статичну типізацію, яку популярізують Rust та TypeScript, підходи до обробки помилок, до серіалізації, чому в нових мовах рідко є наслідування, про іммутабельність та чи може бути динамічно типізована системна мова тощо.

Ну й заодно ми позбираємо трохи грошей — бо на минуломі стрімі зібрали половину. Я дуже дякую всім, хто долучився, і дуже прошу порозповсюджувати посилання на стрім: тема буде цікава, а свіжа кров (у сенсі свіжі гроші) нам дуже б не завадила. :)
Вчора цікавий прикол був з банками. Я там на стрімі пару раз жалівся, що наче щось глючить і не всі пожертви видно — то я після стріма пішов розбиратися з кодом. Виявилося, що з кодом все ок (ну, я додатково пофіксив, щоб після рестарту воно не скидало прогрес бар, але то таке), а трабла в іншому місці.

Я пішов робити дві банки — за динамічну і за статичну типізацію — щоб вийшло як у збіра ДОУ розробники вс тестувальники (власне мені Юра і дав ідею). То банки я зробив, а потім перероблювати прогрес бар я трохи обламався, бо за 1 день це не дуже реалістично. 😁 Але! Я примудрився зберегти опис відео з цими двома банками, та й забув про це.

То глючило тому, що частина людей скидала на банки в описі, а частина по QR-коду. Другі трекалися, а перші — ні. 🤣

Проте цікаво, що за динамічні мови прислали 1.6к грн, а за статичні - 14к. :-) Не знаю, чи це репрезентативно, але можливо, що в цілому динамічна типізація менше захоплення викликає. Її використовують не тому, що пре, а як інструмент для досягнення мети.

Ну й очевидно дякую всім, хто долучився (і ще долучається, судячи з нотифікашок 😁) до збору, разом це вже вистачає на виробництво трьох комплектів девайсів, йуху!
Так, ну ви мож підписані, а мож не підписані, але очевидно посилання на третій епізод Startup talk треба запостити. :) Це я вперше публічно розповідаю про те, чим я займаюся зараз.

Не встиг власного анонса зробити, трохи іншими речами займався останні два тижні, але все в процесі. :)
Замітки

Панове, я поламана людина. Я використовую епловські замітки, бо в них кльово зберігати всілякі документи, щось надовго, малювати й взагалі вони нікуди не подінуться (це не точно, але все не точно).

Я використовую Bear.app, бо він швидкий, має шорткати та маркдаун. Ну і виглядає кльово.

Я використовую Ulysses, бо він вміє перевіряти граматику і публікувати в Ghost API — а я написав собі його імплементацію і так шлю пости сюди в телеграм.

Я використовую Notion, бо його просто шарити з іншими людьми, яких немає в екосистемі Епла.

Ну й авжеж трохи заміток валяються просто файлами, які я редагую Імаксом, але зазвичай це за програмування чи ще щось таке.

І було б непогано зібрати все докупи. Отак здалеку можна побачити що Одисей має найскладніші для інших фічі (публікацію і перевірку), але для заміток він якийсь поцоватий.

Не знаю рілі що робити. Приймаю всі поради для покращення життя, навіть поради спробувати ще щось. Тільки не згадуйте Craft, вони з Ноушеном зі своїми блоками замість абзаців незручні та відчуваються суперповільними. :(

P.S. Фоточка згенерована у https://z.lexica.art
Драма з Твіттером мені так подобається, не можу навіть слова підібрати. Більшою частиною тим, що там абсолютно кошмарні обидві сторони. 😁

З однієї сторони є неймовірно неефективний Твіттер:

Неефективно використовують залізо
• Мають неймовірну кількість неефективних людей (уявляю, що б сказав Кармак про Твіттер, хехех)
• Розкидуються грошима на всіляку фігню (типу тої історії, що їжу готувало більше людей, ніж приходило їсти)
• Має дуже поганий менеджмент (а що наколупав там Мадж — це взагалі 🤯)
• Розповідають, які вони круті технологічно, а потім з репорту Маджа і відгуками "та ми взагалі не наймали людей після Твіттеру" я прозріваю з їх хуцпи

З іншої сторони є абсолютно неадекватний Маск:

• Звільняє людей рандомом і намагається взяти їх на роботу назад через тиждень 🤣
• Видає взаємосуперечливі параграфи в найкращих традиціях Дональда Трампа (всім свободу слова, тільки забанимо тих, хто мене бісить, але разбанимо, якщо за них будуть волати, а ще забанимо всіх, хто згадує мастодон, але ні, вже не будемо)
• Приймає найефективніші продуктові рішення (типу галочки за 8 баксів)

Прямо змагання недолугих. Я вже навіть не знаю, чого я найбільше чекаю — чи як всі заспокояться, чи щоб воно все вже здохло, чи які взагалі є варіанти!

Маск там запостив голосування, чи потрібно йому залишити пост CEO. Хтось дуже проникливий пише: якщо всі будуть за, скаже що за кілька місяців знайде заміну; а якщо будуть проти, то каже що кілька місяців точно ще побуде, допоки почне шукати заміну. А чутки вже ширяться, що саудіти сказали йому знайти заміну собі для Твіттера і за допомогою опитувань він просто зберігає собі обличчя. 🧌

Не знаю, чи взагалі здатний Маск бути CEO, чи у SpaceX та Tesla йому пощастило з менеджерами, але зіткнення з іншою культурою йому дається максимально складно. Може тому, що він просто-напросто мудак.