Журнал инженера-программиста – Telegram
Журнал инженера-программиста
226 subscribers
184 photos
7 videos
148 links
Мир глазами программиста. Истории и размышления.

Автор: @Dementor_AK
https://www.linkedin.com/in/dv-kinash
Download Telegram
Так получилось, что прошлой осенью отдел разработки, в котором я работал, потерял руководителя. Несколько месяцев нам пришлось работать в таком режиме, пока руководство компании не предложило выход.

Это был интересный опыт и повод задуматься: "А зачем программистам руководители?".
👍2
Минимум на две недели застрял в больнице. Жена предлагала взять в палату ноутбук, но я решил сделать паузу и немного отдохнуть от ИТ и всего такого. Ага, решил я...

Ещё при поступлении меня спросили кто я по профессии. Услышав, что программист, медсестры оживились - наконец-то к нам госпитализировали программиста 🤔

На следующий же день меня позвали в бухгалтерию разбираться с книгой Экселя. Ну знаете же эту стандартную проблему - "я ничего не нажимала, оно само"? Все им починил и на прощание сказал, что я вообще специалист по 1С. Реакцией были огромные глаза "у нас таких крутых технологий никогда не было". Эх, если бы 1С не ушла из Украины, то можно было бы заняться...

Потом прибегала другая медсестра и просила присоединить смартчасы к телефону.

Потом слухи дошли до больных. Ко мне уже проходил мужчина с моего отделения и просил помощи поговорить с дочкой по Вайберу. Она ему скинула номер телефона в Польше, а он не знал что делать дальше. Усложняло задачу отсутствие префикса. Но и тут я справился 😎
👍5
Журнал инженера-программиста
Мне на глаза попалась схема "типичного ИТ-проекта" с описанием этапов и участников. Я решил провести параллели с "типичным 1С-проектом". https://telegra.ph/Otlichiya-proektov-na-1S-ot-proektov-na-obshchih-yazykah-programmirovaniya-08-02
Если кто-то начнет возражать и говорить, что все не совсем так и на этапах другие учасники, то имеете полное право. У меня у самого есть претензии к реалистичности схемы. Но её сделала одна известная школа по подготовке ИТ-специалистов, которая готовит кадры для указанных ролей...

Кстати, в отношениях ИТ-школ и ИТ-компаний вижу эффект "хвост крутит собакой". В идеале представители ИТ-отрасли должны понимать кто именно им нужен и "спускать вниз" свои требования на рынок труда. Далее школы должны анализировать эти запросы и предлагать обучение под озвученные требования. По факту, почему-то наоборот...

Анализировал вопросы, которые задают на собеседованиях, и там был такой: "Расскажите о методологии программирования". Если бы мне задали такой вопрос, я бы растерялся - о чем рассказывать? О парадигмах программирования и выборе ЯП? О концепции трансляции языков верхнеуровневого программирования в байт-код или машинные коды? О жизненном цикле программного кода - от написания, до переиспользования? О жизненном цикле создания ПО - от идеи до инсталяции...? Только интуиция подсказывает, что правильным ответом засчитают тот, где будут ключевые слова Slack, Jira, GitHub, Jenkins и DevOps. И я уверен, что именно на такие вопросы-ответы "натаскивают" в ИТ-школах!

Школы ведь не скрывают, что дружат с рекрутерами ИТ-компаний, и подготовка к прохождению собеседований является одной из их самых востребованных предложений. Потому высока вероятность, что ИТ-школы оказывают самим рекрутерам услуги подготовки "качественных" интервью, успешно пройти которые могут именно их выпускники.
👍2
Не совсем про программирование, но это больная для меня тема и хотелось зафиксировать свою позицию. Что лучше - проверенное старое или манящее новое?

Это больная тема от того, что год назад на прошлой работе были заморожены десятки проектов, так как высшее руководство решило покупать и запускать модную западную систему. А через полгода такие - отбой, зря мы тогда все тормознули...
👍2
Пара слов про вчерашний скандал вокруг 1С.

1. Удаление популярных статей редакцией Инфостарта не является новостью и практиковалось задолго до их покупки фирмой 1С.

2. Обиженные авторы и раньше "хлопали дверьми" и уходили с сайта.

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

4. Ушедшие пытались создать альтернативу и переманить к себе сообщество. Самые запоминающиеся попытки - infostop.xyz и "Наше 1С" (последнее создала сама 1С). Все попытки в итоге провалились.

5. Инфорстарт в ответ обижалась на альтернативные площадки и боролась против них всеми доступными методами. Даже организовывала DDOS-атаки, что вызвало скандал и новый отток авторов....

Что будет дальше? Некоторое время люди еще будут возмущаться. На предстоящем Инфостарт Ивенте будет анонс плюшек для тех, кто остается писать на сайте. К новому году все забудут что вообще был какой-то скандал.
👍4
Небольшая историческая справка. Последние пять лет я работал в отделе разработки корпоративных систем в холдинге СЛМ. В первый год моей работы наш отдел был в составе телеканала СТБ, откуда он оказывал услуги по поддержке баз 1С для других активов холдинга, и где мы были в подчинении к ИТ-директору телеканала. Потом во время Трансформации нас структурно (в том же составе с теми же функциями) переместили в корпоративный центр, где мы стали элементом центра экспертиз с подчинением к финансовому директору группы. А год назад нас переподчинили к ИТ-директору группы.

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

Находясь в творческом отпуске, я периодически возвращался в памяти к событиям прошлого года и размышлял насколько реалистичными были мои планы и правильно ли я сделал, что отказался от них: https://telegra.ph/Kak-mozhno-bylo-by-transformirovat-otdel-KIS-SLM-09-11
👍2
Никогда не существовало универсальных инструментов, таких, что они могут делать буквально все. У всего есть ограничения. Лыжи не едут по асфальту, а скейт не катится по снегу...

И кажется, что более всего ограничено программное обеспечение. Ведь у каждого экземпляра ПО сразу в лицензии написано, что работоспособность не гарантируется и создатели не несут никакой ответственности за потерю информации и прочие последствия.

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

Но а если мы хотим большего? Насколько далеко можно зайти в попытке "хакнуть упрямую программу"? Или "свой упрямый разум", который отказывается видить нестандартное применение стандартных вещей?

Примерно так я размышлял, когда на днях заставил объект Динамический Список (DynamicList) начать работать с типом ТаблицаЗначений (ValueTable). Заставлял стандартные вещи работать нестандартным образом, который идеологически невозможен с точки зрения разработчиков платформы 1С.

Отчет по исследованию: https://infostart.ru/1c/articles/1742427/
👍2
Пирамида Минто - ставший популярным среди аналитиков формат подачи информации, который максимально эффективен для потребления. Концепция была разработана Барбарой Минто для компании McKinsey. Суть - сначала даются ключевые утверждения и общие доводы, а далее требуется выполнить несколько подходов приведения аргументов, каждый раз более детализированных. С первых строк читатели и слушатели понимают проблему, решение и главный довод.
👍4
Год оказался непростым.

Встретил его с ковидом и все начало января пролежал с высокой температурой и поражёнными на 60% лёгкими.

Только немного пришел в себя, как в феврале Путин объявил СВО. Дни превратились в сплошной кошмар, а когда боевики Кадырова начали градами отстреливать мой район, уехал на Западную Украину. Со мной в купе ехали 12 человек, 2 кошки (мои) и одна собака. На ЗУ меня встретило дорогое (буквально) радушие местных, которые решили заработать на беженцах. С огромной радостью я на майские праздники вернулся в Киев. По возвращению меня уволили, так как телевидение теперь стало убыточным и руководство начало "резать косты". В июне у меня нашли болезнь крови, которая началась как последствие короны и обострилась на фоне хронического стресса. Весь июль пролежал в больнице и сейчас сижу на дорогих таблетках 1100$/пачку/месяц.

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

Но это уже в прошлом.
С НГ! 🌲🥂🎂
🎄42🎉1
Точно не помню дату, но примерно полгода назад я стал свидетелем холивара в телеграмовском "Сообществе 1С-разработчиков" на тему допустимо или нет использование оператора Перейти (Goto). Мне сама постановка вопроса показалась странной. Это как запретить использование объектной модели для чтения данных из базы - только табличная модель, только запросы.

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

Надеюсь, я смог выдержать разумный баланс и статья вышла интересной: https://infostart.ru/1c/articles/1790973/
👍3🔥1🏆1
Журнал инженера-программиста
Точно не помню дату, но примерно полгода назад я стал свидетелем холивара в телеграмовском "Сообществе 1С-разработчиков" на тему допустимо или нет использование оператора Перейти (Goto). Мне сама постановка вопроса показалась странной. Это как запретить использование…
Сообщество Инфостарта хорошо приняло новую статью. Даже появилось одно предложение дружбы в уведомлениях.

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

В этот раз я решил все же найти, где хранятся предложения дружбы. Очень долго бродил интерфейсом и наконец нашел очень маленькую кнопочку, которая вывела меня на страницу желающих "дружить". Их там оказалась целая пачка за период 2019-2022 (плюс новый за 2023) 🤦‍♂️
😁3
Статья про GOTO На Инфостарте была первой, где я не вложил демонстрационные файлы. По правилам ресурса в таком случае мне начисляются стартмани (местная валюта) за просмотры, а не за скачивание.

Но если посмотреть на начисления за последнюю неделю, то очевидно, что вкладывать файлы все же выгоднее.
👍1
Специалисты по 1С привыкли ругать компанию 1С за то, что те плохо тестируют свои продукты. Что в новых версиях могут перестать работать поставляемые с ними же демо-базы. Нам кажется, что в "большом ИТ" точно не так. Нам кажется, что крупные компании точно тестируют свои продукты. Нам кажется...

На днях решил вспомнить Java (то самое "Большое ИТ") и выполнил простую последовательность действий:
1) скачал последнюю версию JDK (платформа) - OpenJDK 19 (от 20 сентября 2022)
2) скачал последнюю версию популярной IDE - Intellij IDEA 2022.3.2 (от 25 января 2023)
3) открываю IDE и выбираю создание проекта Gradle (самая популярная современная система сборки) - тут же получаю ошибку!

В результате "разбора полетов" оказалось, что в Intellij IDEA до сих пор по умолчанию используется версия Gradle 7.5.1 (от 5 августа 2022), которая не поддерживает работу с JDK выше 18.

Это при том, что 25 Ноября 2022 (ровно за два месяца до релиза обновления от IDEA) вышла версия Gradle 7.6, которая уже работает с JDK 19.

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

По результату, я проигнорировал ошибку, а потом в конфиге, который создала IDEA, поднял версию Gradle до текущей 8.0.2 - далее все отлично заработало и мой "проектик" успешно собрался.
👍2😁1
Давно ничего не писал и только пополнял свой файлик с идеями.

Одна из причин моего отсутствия - решил погрузится с головой в "большое ИТ". Прошел продвинутый курс Java. С одной стороны, ничего сверх-сверх нового я не узнал - с теорией был знаком и ранее, да и с практикой фрагментарно сталкивался. С другой стороны узнал как это все сейчас работает и пообщался с ребятами-мидлами (или они себя считают сеньорами?), которые работают на реальных проектах Европы и США. Возможно напишу тут пару статей на тему современных стеков, чтобы закрепить материал.

Для полного погружения в "тему" было бы неплохо попробовать работу на какой-то из "галер", но... Как оказалось, с точки зрения "роста квалификации", работа на "галеры" - это просто "небо и земля", если сравнивать с "1с-франчами". Ниже прекрасный пример:

...Я Java разработчик с трехлетним коммерческим опытом... Вся моя работа сводится к этому:
1. Посидеть на статус-митинге
2. Оценить мелкие доработки на проекте
3. Поковыряться в багах
4. Поконфигурировать JSON/XML, бины всякие в спринге настроить
5. Очень-очень редко залезть в БД или какой-нибудь микросервис

...недавно проходил тех. собес в одну компанию. Там меня спросили сталкивался ли я с проблемой N+1 в Hibernate на своей работе... Хотя в теории я знаю об этой проблеме и примерно представляю как ее решать, но вот на практике не сталкивался...

На 1С-франче просто нет варианта "отсидеться три года и ничего не знать" - тебя уволят на второй месяц "сидения". За первый год каждый новичок должен стать крепким профи. А три года - это достаточный срок для становления лидом, архитектором или даже руководителем проекта.
👍2
На картинке довольно типичная история. И причина тому, что я предпочитаю сам себе писать ТЗ.
1
Журнал инженера-программиста
На картинке довольно типичная история. И причина тому, что я предпочитаю сам себе писать ТЗ.
Когда я только пришел работать на Телеканал СТБ, там был Департамент Управления Эффективностью (ДУЭ), где работали аналитики пишущие ТЗ. После испытательного срока меня подключили к одному небольшому проекту. Но я не мог просто взять и реализовать ТЗ от представительницы ДУЭ - у нас началась война правок, по результатам которой для меня оказалось проще исключить аналитика из рабочего процесса и самостоятельно собрал все требования с заказчика. Проект успешно запустился. Аналитик поблагодарила меня за конструктивную критику и... уволилась.

Несколько лет я успешно отбивался от чужих ТЗ, но во время работы над ЦК у меня уже не было времени сильно погружаться в аналитическую работу, и я согласился на "помощь" по связанному проекту от нового отдела аналитиков, которые типа профессионалы. На полученное ТЗ отправил запрос на доработку..., после чего девочка-аналитик на несколько недель пропала. Как мне сказали, она сильно обиделась на то, что ее ТЗ мне не подошло. Я пригласил ее на встречу и объяснил, что работа это работа, а правки - это нормально. Она успокоилась, согласилась с моими доводами и доработала свое ТЗ. После чего ушла на другой проект.

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

Все! Никаких больше аналитиков! Никаких чужих ТЗ!
👍5😁2
Нужно ли знать компьютер на фундаментальном уровне?

На Хабре сегодня снова появился (и был удален модераторами) вопрос от начинающего программиста, который изучает C++ в университете на матфаке. Ему нравятся "ссылки" и "указатели", но он хочет узнать как это все работает на более низком уровне:

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

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