пятница, 20 июля 2018 г.

5 за 5 (история 4)

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

1. Harvest, Yield, and Scalable Tolerant Systems (PDF)
Обычно мне тяжело даются такие "около академические" труды, CAP-теорема и вот это все. Но тут хорошо зашло: новые термины для того, что уже раньше использовалось в работе и обозначалось "на пальцах".

We assume that clients make queries to servers, in which case there are at least two metrics for correct behaviour: yield, which is the probability of completing a request, and harvest, which measures the fraction of the data reflected in the response, i.e. the completeness of the answer to the
query. Yield is the common metric and is typically measured in “nines”: “four-nines availability” means a completion probability of 0.9999 . In practice, good HA systems aim for four or five nines. In the presence of faults there is typically a tradeoff between providing no answer (reducing yield) and providing an imperfect answer (maintaining yield, but reducing harvest). Some applications do not tolerate harvest degradation because any deviation from the single well-defined correct behaviour renders the result useless.

2. За все время работы в разработке я часто сталкивался с верой в магическую должность "Архитектор" (Архитектор ПО, Системный архитектор и прочее). Видимо мне не повезло встретить и поработать с настоящими архитекторами, если они существуют. А сам я, IMHO, как-то хреново "архитектирую".
Тем не менее, вот вам несколько полезных ссылок про архитектуру ПО "на подумать-почитать":
3. "Программный комитет HolyJS изнутри" - подробный рассказ про процесс подготовку докладов (= содержательной части конфы) к конференции HolyJS. В нашем ПК Heisenbug конфы процессы очень похожие.

4. Немного истории из своего блога "Популярная психология в IT и не только".

5. Интересная цитата, надо книжку почитать
An Approach to Cybernetics (1961) by Gordon Pask
"Observers are men, animals, or machines able to learn about their environment and impelled to reduce their uncertainty about the events which occur in it, by dint of learning... [We] shall examine human observers who, because we have an inside understanding of their observational process, belong to a special category. For the moment, we shall not bother with HOW an observer learns, but will concentrate upon WHAT he learns about, i.e. what becomes more certain."




пятница, 13 июля 2018 г.

5 за 5 (история 3)

Привет. Очередные ссылочки и мысли за неделю.

1. Огненный доклад "Эффективность не работает" (осторожно мат).
Основная мысль: "Все люди работающие в IT больше 5 лет страдают расстройствами психики." Жестяк :)
"...ставьте в центр комнаты стул и сидите на нем целый день...ничего не делайте, вам будет очень плохо... но вы по крайней мере увидите, что если вы целый день них*** не делаете, то них*** не изменяется".


2. Неплохой тред в твиттере про правильную организацию "монолита".
source
3. И еще  одна статья про "микросервисы" vs "монолит": Goodbye Microservices: From 100s of problem children to 1 superstar

4. Забавная, но дорогая шарманка Catchpoint, которая поможет проверить вам, как ваше веб-приложение работает в разных локациях.  С UX там беда, но очень информационно полезная, как для дебага производительности сайта, так и для мониторинга доступности.

5. До сих пор перевариваю результаты Heisenbug 2018 Piter:
  • если у вас есть хоть малейшие сомнения в том, что вас могут неправильно понять - вас 100% неправильно поймут и немалое количество людей.
  • "ручное" тестирование все понимают по-разному
  • да чего уж там, вообще "тестирование" все понимают по-разному ;))) (привет, КО)

пятница, 6 июля 2018 г.

5 за 5 (история 2)

Чуть было не зафейлил начинание в самом начале. Заехал вечером в гости к бывшим коллегам (вы - крутые). И на радостях и эмоциях почти пропустил пост.

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

1. Пессимизма мысли: самая популярная проблема в IT - найм.
    Проблем море:
  • компании не понимают, кто им нужен.
  • если думают, что понимают - пытаются крутить гайки на собеседах с нулевым выхлопом.
  • у многих сложно с позиционированием на рынке: нет основной идеи, которая доносится кандидатам, как отличие от других компаний.
  • кандидаты не понимают, чем хотят заниматься и плохо готовятся к собеседу.
  • петля затягивается.

2. Тема SRE (Site Reliability Engineering) продолжает держаться в топе современных базвордов, отнимая пальму первенства у DevOps. При этом, по-прежнему, ее "готовят" по собственным рецептам, не всегда ведущим к ожидаемым результатам. Статья на эту тему "Google Explains Why Others Are Doing SRE Wrong"

3. Полезняха: "Сервис, позволяющий протестировать внешний вид любого сайта с разными веб-шрифтами. Просто вводишь адрес сайта, выбираешь шрифт из списка и видишь результат в реальном времени." (с) @HexletHQ

4. Application of modern testing for testing a modern application
Про культуру качества.
There are those who proclaim “automation is not real testing” and those who insist “manual testing is just a waste of time, automate all the things”. Both groups are right, yet wrong. You need automation and you need manual testing, but you need much more to create a product that is of shippable quality.

Классная картинка
Оригинал тут (с) by Redgate

5. Как одним слайдом отобразить архитектуру ИТ-проекта
Слайд может один, но вариантов проекций много. Очень актуально сейчас по работе.

пятница, 29 июня 2018 г.

5 за 5 (история 1)

Попробую новый формат: списочек из 5 интересных статей или видео пролетавших за 5 рабочих дней.

Скорее для себя в виде архивчика, но может и вы найдете себе что-нибудь полезное. Продолжение истории с "солянкой".
  1. Отличная лекция "Git — инструмент для совместной работы, с нуля и до регламента в команде" от Сергея Сергеева

  2. "The Problem You Solve Is More Important Than The Code You Write"
    Статья, основная мысль которой, "часто разработчики пишут код, ради кода":
    "Regardless of the path programming has taken since then, there's still a problem with the separation between business and software development — or "engineering"... If developers become too narrowly focused on development, they can miss the purpose behind the software they write. They may not see hidden solutions that don’t require any code." (читать дальше)

  3. Концептуальная карта и методы её визуализации
    "Концептуальная карта (concept map), предложенная в 60-70-е годы Джозефом Новаком из Корнельского университета(США) техника, сегодня активно используется в качестве простого инструмента визуализации предметных областей. Понятия предметной области отображаются вершинами графа, а отношения — ребрами. В отличии от еще более широко известных интеллектуальных карт (mind maps), концептуальная карта представляет собой именно граф, а не дерево(кстати, картой не является ни первое, ни второе). И как для любого плотного графа, для карты предметной области характерно катастрофическое возрастание сложности восприятия по мере роста количества вершин ....(читать дальше)

  4. Unit tests versus the unit tested
    Asking “what information does this test give me that no other test does?” is great heuristic for determining whether a test, especially an automated one, is worth keeping. It’s also a convenient go-to when evaluating whether a tester knows what they’re doing, and when trying to understand what a test does.
    Нужно уметь разделять тестирование юнитов и юнит-тестирование :). Хотя в целом терминологию часто путают. Но, главное, для себя понимать, что и для чего ты тестируешь. (читать дальше)

  5. "A STARVING MAN CANNOT LEARN TO FISH…"
    “Give a man a fish, he’ll eat for a day. Teach a man to fish and he’ll feed himself for a lifetime.” ... “But a starving person isn’t in the position to learn how to fish. You have to feed them before he can be taught.”...
    "Instead of trying to get the team to engage with testing models, templates and practices straight off the bat through coaching and pairing, perhaps instead we should focus on running the testing ourselves until the team is fed, happy and ready to learn." (читать дальше)