Size: a a a

2019 January 02
oleg_log
Ноутбук (забивается)
источник
oleg_log
The iPhone X Index: This Chart Shows How Ridiculously Long You Have to Work to Get One
источник
oleg_log
Тут крутые итоги 2018 в инфографике
https://howmuch.net/articles/top-18-data-visualizations-2018
источник
2019 January 03
oleg_log
Монорепо это нужное зло.
С одной стороны ты получаешь раздутую репу со всеми тормозами, с другой стороны единую версию среди разных частей проекта.
По хорошему монорепо неплохо подходит для монолита (совпадение?). Но даже после распила его на сервисы - все может остаться в той же куче. Это еще может быть удобно для молодой/слабой тимы, которые толком не знают как эти сервисы тащить дальше.
Но ведь гугл, фб, твитор живут с монорепой и они успешны. Да, успешны, но они также едят этот кактус большой репы. А ты не гугл, они много в это заинвестили и приняли судьбу. #нелезьдебил
источник
oleg_log
I think monorepo has tons of benefits for small/medium teams. It just works and it keeps the team togethers. When the company grows, engineering leadership has to decide whether to commit to a monorepo or not. Also I think people also write plenty of software with monorepo :)

https://twitter.com/fatih/status/1080829487963668482?s=21
источник
oleg_log
Но там же выше он говорит о том, что для этого надо выделять ресурсы, для поддержания в порядке и гармонии.
источник
oleg_log
источник
oleg_log
источник
oleg_log
збс. пришло письмо с жыры, шо таск полугодичной давности, в которой на меня повесили и который все тимой решили не делать (чесслово), передали в другую тиму.
А ведь мы просто хотели добавить валидацию Avro схемы. Наглядное днище, как по мне.
источник
2019 January 04
oleg_log
Этого мне не хватало в универе. Очень. Очень не хватало.
void bar(int myArray[static 10]);


https://hamberg.no/erlend/posts/2013-02-18-static-array-indices.html
источник
oleg_log
Интересный и противоречивый твит.
С одной стороны говоришь: блиииин, бедняжки, ведь у них горели сроки, задницы,
С другой стороны, так же можно понять-простить любой факап любого интерфейса.
Поэтому гтфо сострадание. Только ненависть и призрение к кривым вещам.
🔥
https://twitter.com/uxresearch/status/1079148047257395200
источник
oleg_log
Нашел тут прикольную историю про Кнута и рекурсию.
Сам Норвиг лайкает 😏

https://telegra.ph/What-is-it-like-to-be-in-a-class-taught-by-Donald-Knuth-01-03
источник
oleg_log
Тут еще пост про монорепу и почему это хорошо.
Но вспоминается мне один проект, который утоплен в deprecated вещах. Прост было решено мигрировать на новый компонент, не убивая старый. А просто продолжая его использовать. По сути имея 2 вещи, которые делают одно и тоже.
Соотв все боли и профиты растут не сколько с репы, сколько с команды, которая всю эту кучу разгребает, ну или наваливает.

https://medium.com/@adamhjk/monorepo-please-do-3657e08a4b70
источник
oleg_log
источник
oleg_log
Наткнулся на это и завис:
from __future__ import division


Это ж как надо было не любить всех, чтоб додуматься до импорта деления из будущего (буквально же).
Пожалуй миграция языка с версии на версию это страшнейшая вещь, которая может выпасть в течении жизни.
источник
oleg_log
собственно вот
источник
oleg_log
источник
oleg_log
Зашел бл в икею
источник
oleg_log
С наплывом участников социального движения “япогромист” стало окончательно выкашивать. Если ты раньше говорил: я программист, то все думали: ууу, головастый, ботан, данунафиг.
Теперь же каждый школяр это погромист, и реакция людей соответствующая: ааа, еще один (с)
Большинство соображающих в теме пало под количеством смузихлебов и их тапого пафоса (хоть цитируй ебаное.ит и их гиросмузи).
Не вернуть тот 2007 в котором 1й встречный програмер мог поделиться какой-то находкой. Теперь только репосты и “я эт читал”. Найти того, кто может чему-то интересному научить становится нереальным.
Тяжелые времена для тех “who cares”.
источник
oleg_log
Уважаемый corpix тут (https://t.me/documentsjournal/527) наехал на зависимости в го. И так-то он прав.
Многие лопатили код на го и забивали на любое управление зависимостями (я еще про эру glide и прочее). Никто не думал о поддержке и о конечных пользователях. Так сказать на палках держалось.
С появлением dep некоторые поняли, что на этот вопрос забивать все же не стоит. Но вот  количество тех, кто забили - оставалось больше, чем хотелось бы.
Теперь появились go modules (vgo это рабочее имя) и...люди опять начинают осознавать: блииин, а ведь за зависимостями нужно следить!
И хорошо, что люди начинают расчехляться и думать о том, что же они тащят в свой код. Осталось осознать еще одну вещь: каждая зависимость делает поддержку кода тяжелее.
Мне ужасно грустно смотреть на либу, которая делает банальную вещь, но при этом требует 5+ библиотек, чтобы это сделать покрасивше. Это глупость.
A little copying is better than a little dependency. как говорил Пайк (ток не возводите это в абсолют, здесь не про это речь).
Telegram
~/Documents/journal
Писал сейчас derivation под nix для IRC сервера oragono и пришлось помучаться. Сервер написан на go и использует вендоринг, чтобы не увеличивать размер репозитория автор вытащил директорию vendor в отдельный репозиторий и это стало настоящей проблемой в виду обстоятельств, которые я опишу далее.

Чтобы собрать что-либо мне обычно нужно написать примерно такую декларацию:
{ stdenv, fetchgit, ... }:
stdenv.mkDerivation {
 name = "name";
 src = fetchgit {
   url = ...;
   rev = ...;
   sha256 = ...;
 };
 ...
}

Я собираю приложение на go и mkDerivation мне подходит, но есть более удобный вариант, чтоб не писать много - buildGoPackage. Так что моя декларация превращается в что-то такое:
{ buildGoPackage, fetchgit, ... }:
buildGoPackage {
 name = "name";
 goPackagePath = "github.com/example/name";
 src = fetchgit {
   url = ...;
   rev = ...;
   sha256 = ...;
 };
 ...
}

Эта штука(называется "languages & frameworks" в контексте nixpkgs), помимо прочего, автоматически настроит GOPATH и положит код так…
источник