Гостья из будущего. Обзор книги Фелин Херманс "Ум программиста. Как понять и осмыслить любой код"

Публикация № 1766081 04.12.22

Анализ и управление - О жизни

Вспоминается... Готов есть оливье и вешать новогодние гирлянды в ноябре, лишь бы 2022 год поскорее закончился. Может быть, поэтому издательство «БХВ-Петербург» выпустило книгу, датированную 2023 годом, а может быть, для тех, кто планирует бюджет закупок заранее. Приятно, что хотя бы у кого-то есть такой горизонт планирования. Тех, кто хочет заглянуть в будущее, прошу под кат...

 

Три дня молчало ереванское радио
на четвертый диктор объявил:
Передача для глухонемых окончена.

©анекдот.ру

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

Постановка вопроса:

Книги, трактаты и прочие наставления как оптимизировать труд программиста появляются с достаточной регулярностью со времен появления программирования как предмета. Из бестселлеров и действительно выдающихся изданий, можно выделить "Чистый Код" Роберта Мартина и "Совершенный код" Стива Макконнелла, другой подход к проблеме и не только программирования, "Думай медленно… Решай быстро" Даниэля Канемана. Эта тройка на мой взгляд несомненно обязательная к прочтению.
Казалось бы уже не добавить не убавить, но книга Фелин Херманс "Ум программиста. Как понять и осмыслить любой код" (в оригинале The Programmer's Brain: What every programmer needs to know about cognition [Hermans, Felienne] об этом еще поговорим ниже), действительно стоит особняком и стоит того, чтобы на нее потратить свое внимание и деньги (кто может внести ее в бюджет закупок 2023, поторопитесь).

Как минимум, прочтение этой книги даст вам однозначный и понятный ответ на вопрос о который сломано миллионы копий на профильных и непрофильных форумах: А почему это я(ты, он, она) закончил замечательные, расчудесные, лучшие в галактике (нужное подчеркнуть) курсы программирования, а сеньором(сеньоркой?) не стал(а)?
И да. Это не ответ: Хочешь стать сеньором программистом быстро - переезжай в Мексику.

Там же: можно ли отвлекать программистов в процессе работы, сколько ролей у переменных, что легче для понимания, змеиный или верблюжий регистры и многое другое.
Все это со ссылками на солидные научные исследования. Британским ученым видимо совсем нечем заняться.
По стилю произведение явно писалось как учебник, с домашними заданиями, подведением итогов каждой главы, в образовательных целях ее можно так и использовать, но можно просто прочесть на сон грядущий, как обычный детектив.

Кто любит полную информацию из первых рук, а не пересказ, тот уже гуглит сайты издательства или книжные магазины. Остальные.

Приступим...

Об авторе: Доктор Фелина Херманс — доцент университета в Нидерландах, где читает лекции по методам обучения
программированию. Также она преподает в средней школе и является создателем языка программирования Hedy, предназначенного для детей. Возможно поэтому ее книга, хотя и является научным трудом, читается очень легко и приятно, как принято говорить - не оторваться. По крайней мере у меня она прошла запоем, почти с такой же скоростью как и "Снеговик" Ю Несбё.

Во всероссийском конкурсе по вежливости и изысканности слога
с большим отрывом победил петербургский интеллигент Апполон Митрофанович,
который просил у участников 10 рублей, чтобы опохмелиться

©анекдот.ру

Лирическое отступление: Обычно книги по программированию написаны шершавым суровым языком плаката. Эту написала женщина, да еще преподающая детям, поэтому стиль изложения совсем другой. Как мне показалось, значительную часть милоты добавила переводчица. Это похоже на "Приключения Буратино" или Винни-пуха, когда литературный перевод превосходит оригинал именно в душевности изложения.



Многие термины программирования, в силу исторических особенностей, имеют однозначное толкование в английском языке, для людей находящихся в теме, понятные более-менее далеким от профессии, но с трудом поддающимися литературному выражению. Вот и в этой книге, первым предложением первой главы идет фраза, которая наверняка станет мемом вашего отдела разработки минимум на месяц.
"Замешательство — неотъемлемая часть программирования"
Давайте говорить как петербуржцы: Ваш код, сударь, вызывает у меня замешательство.



А не все вот это, что кричат в пустоту экрана счастливые обладатели типовых, совместимых и слегка разбавленных конфигураций 1С их далеким и недалеким разработчикам.
Я не поленился и нашел исходный английский текст книги.
В оригинале фраза звучит

"Confusion is part of programming"

 

академический перевод, Англо-русский словарь профессора В. К. Мюллера
confusing  путанный
confusion смущение, замешательство; неразбериха;

гугл дает перевод всей фразы жестче, но корректнее,


желающие могут в комментариях посоревноваться, в любом случае "замешательство" приятно уху и очень мило.
Видимо с легкой руки маркетологов русского издательства часть названия книги "What every programmer needs to know about cognition" превратилось в "Как понять и осмыслить любой код"

А с предложением "The bug seems to be caused by an off-by-one error" не справляется даже всемогущий гугл,



это словечко англоязычных кодеров, перевод которого как "ошибка, о которой сообщил клиент, — это ошибка на единицу" вам не сильно поможет, хотя я могу ошибаться (пусть это будет вашим домашним заданием, сходить в википедию и предложить свой вариант).

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

Как вам: 
60% времени программистов тратится на понимание кода, а не на его написание

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

Три источника и три составных части...


 

не марксизма...

 


Весь материал книги опирается на деление памяти человека на рабочую, кратковременную и долговременную. Местами проскакивают упоминания о других, например иконической, но опирается автор на эти три.
Сравнивая весь мозг с системным блоком, долговременная память, сравнивается с жестким диском, на который записываются знания.
Кратковременная память, это ОЗУ, хранящая информацию, которая поступает на короткое время.
Рабочая память, это процессор обрабатывающий информацию, поступающую от долговременной и кратковременной памяти.
Мне больше симпатизирует модель Даниэля Канемана, про быстрое и медленное мышление, но раз система работает и помогает в обучении программированию, почему бы и нет.
Лирическое отступление: Возможности человеческого мозга, скорее всего на текущий момент изучены не более чем на 1% или меньше, иногда все они легко разбиваются об Аннушку, которая уже пролила масло... Поэтому, можно говорить о некоторой модели, работающей в ограниченном пространстве случаев и подходящей вам. Когда человечество считало Землю плоской, то оно вполне успешно пользовалось картами, путешествовало и совершало географические открытия, вписывающиеся в эту модель. А шаманов, которые не смогли ударом в бубен вызвать дождь, просто съедали и начинали пользоваться другими шаманами. Так же и здесь, если программистов проще сейчас учить считая, что у них вместо головы системный блок, можно принять это как данность. Мне, как недоделанному DBA, больше подошла бы метафора с индексированием информации.

Опираясь на три типа памяти, автор выделяет и три типа замешательства:

  • недостаток фундаментальных знаний
  • отсутствие важной информации в момент кодирования
  • и недостаток вычислительной мощности мозга.

Школьный учитель спрашивает учеников о профессии родителей.
- Тим, чем твоя мама занимается на работе?
Тим встает и гордо говорит:
- Она - доктор.
- Замечательно, ну как насчет тебя, Эмми?
Девочка стеснительно произносит:
- Мой папа разносит почту.
- Спасибо, Эмми, - говорит учитель. - Ну, а твои родители
что делают, Билл?
Билл гордо встает и объявляет:
- Мой папа играет музыку в борделе!
Обалдевший учитель решил направиться к Биллу домой.
- В каких условиях вы растите ребенка? - спрашивает он у отца.
Тот отвечает:
- Вообще-то я программист и специализируюсь на TCP/IP
коммуникационном протоколе в системе UNIX. Ну как объяснить
это семилетнему пацану?

©анекдот.ру

Недостаток знаний 

Кратковременная память (и выделенная автором в отдельную, рабочая память) по данным различных исследований способна запоминать в среднем 7±2 объекта, максимум 12 у особо одаренных людей.
Это касается не только программирования, а всего в окружающей нас действительности. Чтобы преодолеть это ограничение сознание действует несколькими путями: сопоставляет текущий предмет с хранящимися в воспоминаниях (иногда это играет плохую шутку) и/или объединяет предметы в коллекции, в психологии называемые чанками.
Оба этих пути опираются на использование долговременной памяти, иными словами, багажа знаний.
Именно поэтому выпускник 1-3-6 месячных курсов, никогда не обойдет работающего программиста, если...
Техническое отступление: Классический пример из книги. Когда шахматистам различного уровня давали задание запомнить расстановку фигур на доске, то гроссмейстеры справлялись с этой задачей лучше новичков, потому, что их метод был не линейное запоминание по позициям, а что-то вроде сицилианская защита и слон левее на две клетки, это позволяло на порядок больше запомнить информации... но только до тех пор, пока фигуры не начинали расставляться в хаотическом порядке. Там никакого преимущества в опыте не наблюдалось. Мораль на поверхности: в общем бардаке сеньоры и джуниоры кодируют с одинаковой скоростью, а при четко выстроенном процессе опытные программисты продуктивнее на порядок.
Рекомендации автора не новы. Учить синтаксис наизусть, знать паттерны проектирования и концепции предметной области.
А вот методы представляют интерес.
Синтаксис предлагается учить с помощью карточек по типу изучения иностранных слов.
Достаточно подробно рассмотрена кривая забывания



с простой формулой и метод интервального повторения.
Также рекомендуется активная проработка новой информации, например путем рисования схем, построение цепочек связанных воспоминаний.
А вот поиск в интернет Фелин Херманс не рекомендует.



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

Ограничения кратковременной и рабочей памяти.

Как следует из самих ограничений, надо свести количество объектов которые надо держать в уме до приемлемого.


Ключевое слово тут рефакторинг.
Чем яснее будет код, тем легче его будет обрабатывать. Ничего необычного.
Создание графа зависимостей, чтобы понять фрагмент сложного кода или таблицы состояний, в которую записываются промежуточные значения переменных, с этим я не встречался в чистом виде, современные IDE с этим отлично помогают, но порисовать на бумаге блок-схемы или записать что-то на память, это никогда не помешает. Наверняка есть и более технологичные методы вроде MindManager.

Тем кто при слове рефакторинг скорчил мину, что все это уже сказано-пересказано, небольшой тестовый вопрос: Есть переменные счетчики, есть константы, есть переменная бродяга(!). А сколько всего ролей переменных вы знаете?
Ответ я уберу под кат

 

По роли переменной предлагается выбирать ее наименование.
Сейчас только ленивый не поминает венгерскую нотацию как устаревшую, но в ней как оказалось была рекомендация, помимо именования по типу, именовать переменные по их роли.
Помимо советов по именованиям, есть несколько очень интересных исследований.
Например, что опытные программисты при чтении программы не двигаются построчно, как это делают новички, а ищут точку фокуса, например строку, использующую много ресурсов (привет эксперты) и анализируют код начиная от нее.

Какие когнитивные способности указывают на склонность к программированию? Попробуйте угадать.

 

Способность к количественному мышлению — знания и навыки, необходимые для математики, — указывала на способности к программированию всего лишь у 2% участников теста.
Языковые способности дали результат чуть лучше— 17%.
Лучше всего себя показали рабочая память и логическое мышление — 34% участников.

Стратегии, использующиеся для углубленного понимания текстов на естественном языке, например визуализация и резюмирование, могут использоваться для углубленного понимания кода.

К делающему уроки сыну подходит отец, гладит сына по голове:
- Старайся, сынок, крючки пиши аккуратнее.
- Это не крючки, папа! Это интегралы!

©анекдот.ру


Главы по использованию ментальных моделей и условных машин с черепашьей графикой я честно проспал, как и в институте.
Запомнил только, что точные модели работают лучше и что условная машина, которая представляет переменную как коробочку, отличается от условной машины, представляющей переменную как метку с именем.

В целом середина книги получилась несколько замудренной для человека, который уже ни Бойля, ни Мариотта, в лицо не представляет.
Оцените фразу: Трансференция автоматизированных умений отличается от трансференции умений,
которые были получены осознанно
и все поймете.
Суть главы том, что не все знания полученные в прошлом помогают нам в изучении нового, иногда, иногда они могут вызывать заблуждение.
Конечно же нашелся исследователь, Юха Сорва (Juha Sorva), доцент Университета Аалто в Финляндии, который все заблуждения  начинающих программистов посчитал (насчитав 162 заблуждения) и написал конечно же диссертацию.

Способы борьбы с заблуждениями: парное программирование, тестирование и документирование кода.


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



Запах кода (в подцензурном варианте: код с душком, а в неподцензуроном ...) ... вокруг него как мухи вьются различные исследователи.
Уж сколько раз твердили миру... Имена — это самая удобная форма документации, понятные имена лучше закрепляются
в долговременной памяти, в коде с некачественными именами больше ошибок.
Очень подробно разбираются идеи Мартина Фаулера (Martin Fowler) из его широко известной в узкихз кругах книги "Рефакторинг: улучшение проекта существующего кода"

Тем, кому кажется это простым вопросом. Профессор компьютерных наук Дрор Фейтельсон (Dror Feitelson), провел исследование для того, чтобы понять, насколько сложно придумать простое и понятное имя. Для 47 элементов, (т. е. переменных, функций и параметров), вероятность того, что два человека присвоят одно и то же имя, составила только 7%.
Лирическое отступление: Впрочем, возможно, дело в месте проведения: Еврейском университете в Иерусалиме. Как известно, сколько евреев, столько и мнений.

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

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



Зато, как бальзам на душу 1С-ников. Вероятность выбора правильного варианта имени, написанного верблюжьим
регистром, была выше на 51,5%, чем змеиным.(Цена такой точности — скорость. Участником требовалось на полсекунды больше, чтобы найти имена элементов, написанные верблюжьим регистром.)
Желающие удивить коллег познаниями, упомяните в курилке, трехступенчатую модель Фейтельсона для хороших имен переменных.

Далее следует раздел

Как решать задачи
Все просто(читать голосом Алексея Булдакова):


 

  • Поймите задачу
  • Составьте план
  • Выполните план

Разобравшись с написанием кода, Доктор Фелина Херманс переходит к самому процессу решения задач,
лихо поделив долговременную память, к которой читатель уже привык, еще на две, а потом вторую половину еще на две.



Рекомендации - Первое, довести свои действия до автоматизма, ничем другим кроме повторения этого не добиться.
"Нужно активно повторять новую информацию до тех пор, пока вы не запомните ее и у вас не сложатся ассоциации", советует автор. "Например, вы видите открывающую скобку и нервничаете, если не видите закрывающую скобку. Вы понимаете, что лучше писать сразу обе скобки — так вы точно не забудете закрывающую скобку. Говоря другими словами, эффективные действия быстро запомнятся, а неэффективные действия будут забыты."
Лирическое отступление: Можно позавидовать оптимизму Фелины. Быстро запомнятся действия выполняемые с наименьшими трудозатратами, но не обязательно эффективные. А переучиваться будет сложнее.

А второе, это учиться на примерах. Здесь и парное программирование и изучение кодовой базы GitHub (Значит гуглить все таки можно :)

Завершают книгу главы посвященные совместной работе над кодом.

Выделяются пять активностей, которые вы, скорее всего, выполняете во время программирования.

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

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


Вишенка на торте, автор снова возвращается к теме отвлечения программистов.

Надеюсь, что ваш начальник не дочитает книгу до этого места, потому что там сказано, что около 20% всего рабочего времени программист отвлекается. 
Приняв это как неизбежное зло, можно пробовать уменьшить отрицательный эффект определив как сохраниться при отвлечении и в какой момент можно это делать.
Попутно автор рекламирует устройство FlowLight, которое отслеживает скорость набора на клавиатуре и/или щелчки мышью и определяет, насколько глубоко программист погружен в задачу.



По его цвету можно понять, подходить с вопросами или подождать.
Лирическое отступление: Это видимо для совсем невнимательных, так то каждый бухгалтер знает, если у программиста идет легкий дымок из ушей, то его сейчас лучше не трогать.
А вот про многозадачность как раз эффективным менеджерам почитать стоит.
Люди, которые выполняют сразу несколько задач, чувствуют себя очень продуктивными, но реальное состояние дел показывает, что их производительность гораздо ниже.

В заключительной, 13 главе, рассмотрены проблемы адаптации новичков, опираясь на концепцию Пиаже о развитии детей.
Лирическое отступление: Программисты, они же как дети малые :) глава занятная, прочитайте ее полностью, и оцените, кто из ваших коллег на каком этапе развития остановился.
Этапы я перечислю

  • не имеют понятия о плане или стратегии, они просто чувствуют и трогают вещи
  • начинают учиться строить представления и планы, но не полагаются на них при мышлении
  • могут рассуждать о вещах, которые они видят, но им сложно сделать общий вывод
  • могут совершать формальные операции
     

На экскурсии
— Почему площадь именно Красной называется?
— Видите ли, это очень древняя история. Когда в 1147 году первые жители тогда еще маленького...
— А покороче нельзя?
— Именно поэтому она и называется Красной!

©анекдот.ру


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

Впереди время подарков, потом неделя каникул, пуркуа бы и не па?

Ведь книга - это отличный подарок


 

Картинки взяты с англоязычного сайта книги и открытых источников, анекдоты из головы.
Большое спасибо издательству «БХВ-Петербург» за перевод такой классной книги и конечно Доктору Фелине Херманс.


Любезнейше прошу извинить, если получилось сбивчиво.
Дело для нас новое, неосвоенное...



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



Всем добра и здоровья.
Приезжайте в Питер :)


Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. scientes 283 04.12.22 21:56 Сейчас в теме

Способность к количественному мышлению — знания и навыки, необходимые для математики

Как, интересно, проверялась способность к количественному мышлению ? Когда исследуемый выполняет перемножение столбиком - это количественное мышление или применение алгоритма. Если вас просят найти сумму нечетных чисел от 1 до 100 - это вопрос на количественное или логическое мышление ? Мне всегда казалось, что математика ближе к программированию , чем языковые способности.
2. capitan 2338 05.12.22 09:45 Сейчас в теме
(1)
Это видимо если считать логику подразделом математики
3. graphbuh 248 05.12.22 11:14 Сейчас в теме
Да, год очень непростой и тем радостнее видеть вашу публикацию. Не всегда есть время почитать новые книги, поэтому записки ветеринарного врача от 1С в переводе правильного человека, в наше время могут окончательно превратить переводчика в медийную личность.
4. capitan 2338 05.12.22 11:23 Сейчас в теме
(3)
записки ветеринарного врача от 1С в переводе правильного человека
недопонял
А за добрые слова спасибо
Если доверять математике, то ближайший простой год - 2027, так что держитесь)
mvxyz; Altez50; +2 Ответить
5. maksa2005 404 05.12.22 12:54 Сейчас в теме
Спасибо за картинки, гугл мне помог)
7. capitan 2338 05.12.22 14:32 Сейчас в теме
6. scientes 283 05.12.22 14:00 Сейчас в теме

Способность к количественному мышлению — знания и навыки, необходимые для математики, — указывала на способности к программированию всего лишь у 2% участников теста.
Языковые способности дали результат чуть лучше— 17%.
Лучше всего себя показали рабочая память и логическое мышление — 34% участников.

Исходя из этой иерархи, подготовил короткий тест на программиста.

1. Устно найти произведение 777*333.
2. Как будет по итальянски отец и мать.
3. Чему равна сумма нечетных чисел от 1 до 100.
8. capitan 2338 05.12.22 14:35 Сейчас в теме
(6)На логику надо полагать второй вопрос?
9. scientes 283 05.12.22 15:27 Сейчас в теме
10. capitan 2338 05.12.22 16:21 Сейчас в теме
(9)Родитель №1 и родитель №2 ?
11. scientes 283 05.12.22 16:51 Сейчас в теме
(10) Вариант любопытный, мой правильный ответ - padre и madre.
12. SergeyTerentyev 09.12.22 11:00 Сейчас в теме
Жванецкий. Великий? Однако.
13. capitan 2338 09.12.22 14:11 Сейчас в теме
14. пользователь 09.12.22 23:07
Сообщение было скрыто модератором.
...
19. Painted 48 13.12.22 15:58 Сейчас в теме
(13) Ну, например приведенная фраза Жванецкого - это перефразировка Толстого. Причем без ссылки на первоисточник. А плагиат не признак величия. Имхо, конечно.
«Если уж писать, то только тогда, когда не можешь не писать» - это оригинал
20. capitan 2338 13.12.22 16:40 Сейчас в теме
(19)
Имхо
это совершенно разные фразы
В этом и суть юмора, когда одно слово меняет смысл всего предложения
15. Cерый 23 11.12.22 15:21 Сейчас в теме
Хорошая тема, ожидал увидеть больше конкретики Вашего Авторского опыта.
Мне требуется в течении 2-3 часов делать 10-минутные перерывы, курение/кофе, появляется, скажем, резерв осмысления.

Программисту, чтобы сложить 2 и 2, требуется:
- данные о типах величин;
- данные об операциях сложения, определенных на типах;
- данные о приведении типов ...
16. capitan 2338 11.12.22 18:40 Сейчас в теме
(15)Скажу больше, есть вопросы на которые только программист даст ответ
Например, чему равно 2+2=4
17. alex_sayan 11.12.22 19:37 Сейчас в теме
Код получается невнятным прежде всего потому, что автор кода клал болт на других. Автору его собственный код понятен, компилятор код принимает, а дальше хоть трава не расти
Cерый; +1 Ответить
18. capitan 2338 12.12.22 10:45 Сейчас в теме
(17)На 99% согласен, но 1% это просто общая культура программирования, которой как и всему остальному надо учиться
В том числе и по книгам
21. пользователь 16.12.22 08:29
Сообщение было скрыто модератором.
...
22. scientes 283 16.12.22 10:52 Сейчас в теме
Судя по этой статье https://habr.com/ru/post/704798, ум программиста останется в прошлом. После того, как уйдут представители доинтернетного образования, программировать сможет только искусственный интеллект.
23. capitan 2338 16.12.22 11:15 Сейчас в теме
(22)Вспоминается...
Компьютер никогда не заменит человека, пока не научится смеяться над шутками начальника и сваливать вину за свои косяки на другой компьютер.
А если серьезно, прочитайте любой интернет-срач по поводу IDE и что тру кодеры кодируют в блокноте
Та же история в этой статье, если можно упростить работу, надо ее упрощать, ничего в этом нет страшного
24. scientes 283 16.12.22 11:44 Сейчас в теме
(23) Смысл статьи, как мне кажется в том, что нельзя до бесконечности упрощать работу мозга. Если его не нагружать он деградирует. Взлет советской науки был обеспечен тем, что через институтское образование прошла огромная масса сельской молодежи с натренированным через ежедневный крестьянский труд мозгом.
25. capitan 2338 16.12.22 12:07 Сейчас в теме
(24)
через ежедневный крестьянский труд мозгом
?
Взлет советской науки был обеспечен тем что ей уделялось должное внимание и был стимул учиться, это был социальный лифт, а инженер был весьма уважаемым человеком
Что касается мозга, мы не знаем и 1% его возможностей
Оставьте свое сообщение

См. также

Выйди и зайди нормально

О жизни Бесплатно (free)

Про эффективных бедняжек.

01.02.2023    6128    1c-intelligence    117    

52

Лебединая песня

О жизни Бесплатно (free)

Раз уж всё равно увольняешься...

28.11.2022    4212    1c-intelligence    43    

33

Невыжившие в IT

О жизни Бесплатно (free)

Дайте почитать сыну маминой подруги.

13.09.2022    7069    1c-intelligence    60    

75

История одного собеседования на должность 1С программиста

О жизни Бесплатно (free)

Краткая история для начинающих разработчиков про ожидание и реальность

23.08.2022    4794    1v7    63    

36

Пусть программирует Сережа

О жизни Бесплатно (free)

Вам это знакомо. Должно быть знакомо.

17.06.2022    7192    1c-intelligence    107    

62

Зарплатная спираль

О жизни Бесплатно (free)

Чего они там не понимают.

07.06.2022    4180    1c-intelligence    50    

56

Начинающие программисты боятся темноты

О жизни Бесплатно (free)

Самое сложное - НЕ писать код.

25.05.2022    6439    1c-intelligence    90    

64

Заградотряд

О жизни Бесплатно (free)

Очередная hr-дичь.

04.05.2022    5286    1c-intelligence    88    

57

Крепостное право в ИТ

О жизни Бесплатно (free)

Угадайте, кто тут кого закрепостил?

26.04.2022    4585    1c-intelligence    52    

57

Собеседования и интервью глазами соискателя

О жизни Мотивация, лидерство и личная эффективность ИТ-компания Бесплатно (free)

С чем сталкивается соискатель-разработчик 1С на собеседованиях и какие они бывают. Краткое описание сценариев и некоторые рекомендации.

05.08.2021    4889    Hatson    40    

32

Гугл-программисты. Как идиот набрал на работу идиотов

О жизни Бесплатно (free)

Реалии современного мира программирования

21.06.2021    8598    1c-intelligence    123    

55

Помолчи-ка, программист

О жизни Бесплатно (free)

Что бывает с шибко умными

17.06.2021    25978    1c-intelligence    69    

87

Красота, которая не спасла программиста

О жизни Бесплатно (free)

За что тебя приняли, за то тебя и уволят

15.06.2021    7698    1c-intelligence    80    

51

Мобильное приложение на 1С?

О жизни Мобильная разработка Мотивация, лидерство и личная эффективность Бесплатно (free)

История одного программиста, как он пришел в мир 1С и какой проделал путь к «мобильной платформе 1С». Какие выводы он для себя сделал, поработав с «мобильной платформой 1С».

18.05.2021    10057    dsdred    91    

52

3% и вы

О жизни Мотивация, лидерство и личная эффективность Бесплатно (free)

Почему вам мало платят и так будет всегда

15.09.2020    8603    1c-intelligence    153    

78

Судьбы героев

О жизни Бесплатно (free)

Три истории особенных сотрудников. С загадками и отгадками.

30.07.2020    2759    1c-intelligence    12    

32

Верблюды и песочница. Джоэл Сполски

О жизни ИТ-компания Бесплатно (free)

Статья Джоэл Сполски про ценообразование программы. Эта статья написана в блоге в 2004 году. При подготовке к онлайн-конференции для партнеров (https://edu.infostart.ru/up2020) я вспомнил про нее, но не нашел русского перевода по старому адресу. Есть несколько других вариантов перевода, но у меня чудом сохранился оригинал. Восстанавливаю его здесь. Прошло уже 16 лет, но статья по прежнему актуальна и познавательна для разработчиков коммерческих решений.

24.04.2020    6839    support    35    

42

Как стать матерым штурмовиком, или истории из жизни

О жизни Бесплатно (free)

"Самое дорогое у человека — это жизнь. Она дается ему один раз, и прожить ее надо так, чтобы не было мучительно больно за бесцельно прожитые годы, чтобы не жег позор за подленькое и мелочное прошлое, чтобы, умирая, смог сказать: вся жизнь и все силы были отданы самому главному в мире - борьбе за освобождение человечества. И надо спешить жить. Ведь нелепая болезнь или какая-либо трагическая случайность могут прервать ее." Островский Н.А.

05.04.2020    5933    starik-2005    14    

44

Вычитал. Хочу. Делайте

О жизни Бесплатно (free)

"Идеи" руководства и их "реализация".

13.03.2020    9007    1c-intelligence    16    

34

Как живут разработчики 1С во Вьетнаме

О жизни Бесплатно (free)

Xin chào, Инфостарт! Меня зовут Алексей Кондратьев. Я - технический директор компании 1C Vietnam LLC. В этой статье расскажу чем живут разработчики 1С во Вьетнаме и как попасть в их число. Все, о чем буду рассказывать далее - специфично для Вьетнама. Для партнеров в других странах и в самой Фирме 1С условия конечно же другие.

02.03.2020    13956    koal@1c    90    

42

Собеседование в луже крови

О жизни Бесплатно (free)

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

28.02.2020    10933    1c-intelligence    110    

80

Нетехническая статья про технические статьи

О жизни Бесплатно (free)

Отвечаю на многократные вопросы про написание технических статей.

25.02.2020    5439    1c-intelligence    60    

44

Журнал Белокаменцева, выпуск № 1

О жизни Бесплатно (free)

Короткие тексты на разные темы

19.02.2020    5689    1c-intelligence    61    

43

Чтобы пацанам было не стыдно показать

О жизни Бесплатно (free)

Манифест умирающей профессии

04.02.2020    13109    1c-intelligence    90    

78

Книжная абстиненция

О жизни Бесплатно (free)

Стоит ли читать книги?

19.11.2019    7801    1c-intelligence    66    

56

Крупный бизнес = продуманное ПО = вершина карьеры?

О жизни Бесплатно (free)

Вот пойду я в крупную компанию и стану там успешным - получу много опыта и буду супер программистом!!! И тут вам бах и 40 )))) И хочется вечера тратить не на изучение новых фреймворков, изменений поведения платформы и что там у нас в зазеркалье понаписали, а на изготовление миниатюр природы или выращивании бонсая и написания рассказов для детей. Крупные компании - благо?

07.11.2019    45053    iov    34    

42

6 шотов

О жизни Бесплатно (free)

Небольшие пятничные истории о взаимоотношениях в коллективе

01.11.2019    11574    sapervodichka    28    

103

Шорты Белокаменцева

О жизни Бесплатно (free)

Короткие версии старых статей

28.10.2019    9584    1c-intelligence    18    

41

Медвежьи услуги по требованию

О жизни Бесплатно (free)

О, сколько открытий чудных готовит нам профессия программиста 1С.

16.10.2019    15413    1c-intelligence    115    

120

Пуля

О жизни Бесплатно (free)

Доля прибыли для сотрудников

10.10.2019    7955    1c-intelligence    64    

56

Хороший заказчик - плохой заказчик

О жизни Россия Бесплатно (free)

Лайфхак о том, как стать легендарным клиентом.

13.09.2019    8851    dsdred    24    

33

Видя деньги

О жизни Бесплатно (free)

Немножко бизнес-программирования.

09.09.2019    10079    1c-intelligence    94    

54

Полюби Козла

О жизни Бесплатно (free)

Не пожалеешь

02.09.2019    9345    1c-intelligence    79    

56