T/T Lead
  • NODE.JS |OR| NO JS — IT-дуель між Тимуром Шемсединовим та Володимиром Кириченко

    В одном из видео для fwdays Тимур обьяснил. Какая то жуткая руганка была на форумах между нодщиками и джавистами, что уже и слово хейтинг мягко сказано. И, решили удалить видео, так будоражащее «рациональных технарей». Забота о психическим здоровье вобщем айти комьюнити

  • «Когда был разработчиком, программировал до трех часов в день». Александр Соловьев, СТО в Kasta — почему перешел c Python на Clojure, не пишет код по вечерам и критикует свитчеров

    бизнесу все равно на чем сделано

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

    и если бизнес прислушался — то вот и апрувнул.
    значит — были аргументы, про «почему не мейнстрим»

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

  • «Когда был разработчиком, программировал до трех часов в день». Александр Соловьев, СТО в Kasta — почему перешел c Python на Clojure, не пишет код по вечерам и критикует свитчеров

    так вот на том же stackoverflow аж целых 500 вопросов по Clojure, против 2 миллионов вопросов по python:) что как бы наглядно демонстрирует интерес людей к тому или иному языку.

    каких именно людей — не задумывались?
    подсказка — в большинстве школ мира на уроках «информатики» дают python, и в большинстве колледжей мира, профильных и не — его тоже дают.

    что ессно никак не говорит о том чем python плох/хорош, чем Clojure плоха/хороша

    просто всегда когда слышите про «интерес людей» о чем угодно, уточняйте для себя — каких людей?

    если бы вы переписали бек

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

    вот и холивары в инетах
    студент осиливший python уверенно в своем «если бы»
    опытный — тоже уверен, что это «если бы» не помогло «бы». особенно — в его конкретном проекте, о котором он знает ну очень много подробностей.
    в отличие от советующего

    и оба они получаются — на равных — один голословный пост против другого голословного поста.

    а если учесть ответ на первый вопрос(какие люди) — и бОльшую активность молодых в интернетах, получим, в зависимости от форумной тусовки перевес голосов — в пользу какого из двух «бы»?

    студенты студентам еще и лайков наставят — потому что такие же, и одобряют такое же как свое мнение :)

  • «Когда был разработчиком, программировал до трех часов в день». Александр Соловьев, СТО в Kasta — почему перешел c Python на Clojure, не пишет код по вечерам и критикует свитчеров

    это ж «вечная молодость».

    я тоже помню возмущался примерам на С
    printf("Hello world!")

    это 14 Кб obj файл будет!
    а если
    puts("Hello world!")

    то около 4Кб.

    Поддержал: Alex Fogol
  • «Когда был разработчиком, программировал до трех часов в день». Александр Соловьев, СТО в Kasta — почему перешел c Python на Clojure, не пишет код по вечерам и критикует свитчеров

    А мне первая важнее, если честно

    именно! сам ушел из джавы на дин ЯП — потому что по себе знаю эту разницу
    а жизнь коротка, хочется сделать побольше и в обычной работе, а не бодаться с типами.
    которые да, может джунов и спасают от ошибок. или проекты, которые перекидуются то индийцам, то нам, то бразильско-португальской команде, и за 10 лет в них покопалось 5 команд, каждая с своими «великими архитекторами» и своим национальным колоритом программерской школы.

    но мне надоело в какой-то момент это обвешанность спасательными кругами. когда тесты — ну все равно ж нужно писать! ну так от чего защита то?

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

  • «Когда был разработчиком, программировал до трех часов в день». Александр Соловьев, СТО в Kasta — почему перешел c Python на Clojure, не пишет код по вечерам и критикует свитчеров

    когда-то мне один эйчар сказал что они выбрали Scala — чтобы отсеивать кандидатов. сразу.
    и что так, из-за этого жирного плюса Scala, поступили не только они, а еще одна известная ему компания, где его знакомый эйчар работает. :)

    так что если рассматривать доступность персонала на рынке труда — то вопрос — а зачем вам эти орды унылых, выгоревших программистов на джавах и пыхах, или пришедших за деньгами?

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

  • «Когда был разработчиком, программировал до трех часов в день». Александр Соловьев, СТО в Kasta — почему перешел c Python на Clojure, не пишет код по вечерам и критикует свитчеров

    Clojure

    работает на JVM
    так что считайте что на джаве

    а реакт — не ангуляр. оверинжинирить по энтерпрайзному не требует.

    хотя, если вот прям не хочется из топовой троицы брать, но jQuery тоже не хочется
    то riot.js (проверено в боевых условиях) — замечательный малыш

    Поддержал: Serhii Harnyk
  • «Когда был разработчиком, программировал до трех часов в день». Александр Соловьев, СТО в Kasta — почему перешел c Python на Clojure, не пишет код по вечерам и критикует свитчеров

    И это разделение якобы на тру-айтишников и «вайтишников» — дедовщина чистой воды.

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

    но все равно — чувствуется. как акцент на чужом языке :)

    9 месяцев с 0 до оффера.

    а это вот — круто. вы очень серьезно учились, даже если бы не написали об этом.

    я считаю что при правильном менторе можно и за 6 месяцев. но точно с 0 — не меньше.
    но это удача, найти такого ментора.
    так что 9 месяцев с 0 в Java — очень хороший результат.

  • Рефакторинг, который мы заслужили

    та я бы вообще на уровне ООН устроил компанию по приведению формата даты единому YYYY-MM-DD

    еще бы конечно все эти футы/мили-фунты-галоны прибрать. но дефолт стране метрическая система не указ

  • Читабельність коду. Способи, кращі практики та помилки

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

    Это не беда.
    Это норма.
    Недавно встретил очень популярно изложение причин:
    Почему мышление — боль? [Veritasium на русском]
    youtu.be/_zM8m4pRdt4

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

    А другие, посмотрев на первых, решают, что вся парадигма — туфта.

    И обычно — чем меньше этот набор правил, и чем более примитивные догматы — тем фанатичней, ортодоксальней такое мышление.

    «23летний синьор, 25летний архитектор» — это 3.14ец какие фанатики.
    а это и есть — основная категория программерских форумов :)

    (например такие мнения — dou.ua/...​rums/topic/35472/#2280998 вызывают у них бурю праведного негодования)

    Комментарии должны описывать

    Код на ЯП — это набор инструкций транслятору для построения системы по переработке информации.

    Чтобы вносить изменения или дописывать такие инструкции — нужно прочесть, т.е. понять контекст, в котором задумывалась эта система или ее часть.
    Поэтому уже высказался в
    dou.ua/...​rums/topic/35450/#2280696

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

    комментирование неочевидных, сложных мест в коде — это всего лишь одна из ролей для коментов.

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

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

    оверинжиниринг — обычно никакого отношения к инженерии не имеет. Он следствие попытки не думать, а свести решение к механически повторяемым действиям: «если повесить подкову над дверью», «если помолиться святым мартину и фаулеру», ..

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

    То есть проблема выбора между этими крайностями «скорость разработки» и «эксплуатационные характеристики и.с.»- не имеет общего решения.
    Это всегда компромис, т.е. с одновременными потерями как читабельности, так и эффективности и.с. и его выбор обычно — эмпирический выбор, а не аналитический.

    и комментарии — это средство добавить читабельности к нечитабельному коду.
    на всяк случай продублирую:
    1. а становится он нечитабельным потому что требуются определенные эксплуатационные характеристики, а не удовольствие от чтения
    2. развитие проекта идет по никем и никак не прогнозируемому пути, потому что на старте этот путь никто в проекте и не мог знать, с такой детализацией, какая и описывается кодом на ЯП.

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

    да!
    нужно делать правильно! а неправильно — не нужно делать!

  • Читабельність коду. Способи, кращі практики та помилки

    мне коменты помогают читать код — быстрее.
    и свои, и чужие.

    обычно всё начинается с простого — с неочевидных имен, пропущенного рефакторинга, непродуманной архитектуры.

    небо голубое, трава зеленая.

    любого спроси — он порасскажет как правильно.
    особенно с важным видом о «непродуманной архитектуре» будет вещать.
    великих вещателей об архитектурах у нас в айти — через одного.
    с таким уровнем коллективной экспертизы — непонятно почему столько воя «а-а-а, код на проекте у нас говно! архитектура непродумана!!», ...,

    совершенно ничего не понимает в коде

    вот коменты и призваны добавить этого понимания.

    Обо всем этом когда-то тоже говорил Роберт

    расшибания лбов перед иконой мартина да, популярное занятие.

    как один написал, с чем в целом согласан:
    IT-шечка — индустрия очень богатая. И, как везде, где вертятся деньги, вертится ворьё и шарлатаны. Но, если в других, давно устоявшихся индустриях — например в науке, с этим научились жить, то в IT-шке шарлатаны — чуть ли не главные игроки.

    Нигде, ни в какой другой индустрии, нельзя представить себе того же Мартина Фаулера или Роберта Мартина. В той же науке — им бы на второй день провели бы коллективным *уем по губам. Но в IT-шке книга «Patterns of enterprise software» — набор заклинаний, типа «используйте ООП, но я вам не расскажу как», от которых даже сам Фаулер сто лет как переобулся — стабильно в топе книг
    (конец цитаты)

    Роберт Мартин — педагог, а не практикующий программист. как по мне — неплохой педагог.
    И его советы часто именно педагогические, как нашумевшая школьная двойка, когда ребенок написал решение задачи:
    5 * 2 = 10
    а надо 2 * 5 = 10

  • Читабельність коду. Способи, кращі практики та помилки

    const в js стал стандартом вместо let а тем более, фу-фу, var

  • Читабельність коду. Способи, кращі практики та помилки

    В приводимом примере это название метода, просто содержащее глагол «обновить» ... метод update() у модели ORM. Из того, что существует команда SQL

    а я под КАК я подразумеваю именно детали реализации.
    один из патчей в известном фреймворке у меня для метода populateXXX
    внутри данные записываются в хэшмапу, но если не было такого ключа для rawRows.
    а в проекте логичнее чтобы при сортировке в конечном SQL — в итоговой коллекции были самые последние строки. всегда, не придумалось случая когда нужно чтобы первые.
    populateXXX же этот — protected метод в глубинах, и чтобы снаружи добиться нужного поведения — надо будет писать неочевидный код, да еще неоптимальный с точки зрения БД.

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

  • Читабельність коду. Способи, кращі практики та помилки

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

    перфекционизм инженеров — известное зло.
    конечно, в программерской тусовке он нередко объявляется великим достоинством :)

  • Читабельність коду. Способи, кращі практики та помилки

    швидко

    а ще швидше — НЕ переходити нікуди.

  • Читабельність коду. Способи, кращі практики та помилки

    В большинстве случаев я и так вижу что делает код.

    «и вы говорите»

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

  • Читабельність коду. Способи, кращі практики та помилки

    Комент в общем случае является частью кода, а не истории изменения кода. Его смысл — предоставлять информацию к актуальному коду, которая по каким то причинам не может быть описана на ЯП, или из описания на ЯП сложно получить информацию более высокого уровня абстракции чем код на ЯП.

    Размещение комментариев в описании к коммиту поэтому для меня звучит как:
    а я код не в исходниках храню, а в описаниях коммитов!

  • Читабельність коду. Способи, кращі практики та помилки

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

  • Читабельність коду. Способи, кращі практики та помилки

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

    Тут я з вами згоден, суто кодери — зайва ланка у розробці

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

  • Читабельність коду. Способи, кращі практики та помилки

    Такие комментарии даже стандартизированы, для автоматической генерации документации.

    Так что выходит оно кругом, литературное программирование. В приличных и публичных проектах.
    И IDE даже заготовки добавляют

    Поддержал: Dmitriy Mozgovoy
← Сtrl 123456...171 Ctrl →