Специалисты по 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 - далее все отлично заработало и мой "проектик" успешно собрался.
На днях решил вспомнить 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 - далее все отлично заработало и мой "проектик" успешно собрался.
IDEs Support (IntelliJ Platform) | JetBrains
How to change the New Project wizard to Gradle 7.6 for OpenJDK 19
TL;DR: New Project wizard selects incompatible Gradle version for OpenJDK 19.
I will be teaching a course and want to make project creation go smoothly for my students but am running into issues wi...
I will be teaching a course and want to make project creation go smoothly for my students but am running into issues wi...
👍2😁1
Давно ничего не писал и только пополнял свой файлик с идеями.
Одна из причин моего отсутствия - решил погрузится с головой в "большое ИТ". Прошел продвинутый курс Java. С одной стороны, ничего сверх-сверх нового я не узнал - с теорией был знаком и ранее, да и с практикой фрагментарно сталкивался. С другой стороны узнал как это все сейчас работает и пообщался с ребятами-мидлами (или они себя считают сеньорами?), которые работают на реальных проектах Европы и США. Возможно напишу тут пару статей на тему современных стеков, чтобы закрепить материал.
Для полного погружения в "тему" было бы неплохо попробовать работу на какой-то из "галер", но... Как оказалось, с точки зрения "роста квалификации", работа на "галеры" - это просто "небо и земля", если сравнивать с "1с-франчами". Ниже прекрасный пример:
Одна из причин моего отсутствия - решил погрузится с головой в "большое ИТ". Прошел продвинутый курс Java. С одной стороны, ничего сверх-сверх нового я не узнал - с теорией был знаком и ранее, да и с практикой фрагментарно сталкивался. С другой стороны узнал как это все сейчас работает и пообщался с ребятами-мидлами (или они себя считают сеньорами?), которые работают на реальных проектах Европы и США. Возможно напишу тут пару статей на тему современных стеков, чтобы закрепить материал.
Для полного погружения в "тему" было бы неплохо попробовать работу на какой-то из "галер", но... Как оказалось, с точки зрения "роста квалификации", работа на "галеры" - это просто "небо и земля", если сравнивать с "1с-франчами". Ниже прекрасный пример:
...Я Java разработчик с трехлетним коммерческим опытом... Вся моя работа сводится к этому:На 1С-франче просто нет варианта "отсидеться три года и ничего не знать" - тебя уволят на второй месяц "сидения". За первый год каждый новичок должен стать крепким профи. А три года - это достаточный срок для становления лидом, архитектором или даже руководителем проекта.
1. Посидеть на статус-митинге
2. Оценить мелкие доработки на проекте
3. Поковыряться в багах
4. Поконфигурировать JSON/XML, бины всякие в спринге настроить
5. Очень-очень редко залезть в БД или какой-нибудь микросервис
...недавно проходил тех. собес в одну компанию. Там меня спросили сталкивался ли я с проблемой N+1 в Hibernate на своей работе... Хотя в теории я знаю об этой проблеме и примерно представляю как ее решать, но вот на практике не сталкивался...
Хабр Q&A — вопросы и ответы
Какой пет проект можно реализовать на Java?
Ответили на вопрос 6 человек. Оцените лучшие ответы! И подпишитесь на вопрос, чтобы узнавать о появлении новых ответов.
👍2
Журнал инженера-программиста
На картинке довольно типичная история. И причина тому, что я предпочитаю сам себе писать ТЗ.
Когда я только пришел работать на Телеканал СТБ, там был Департамент Управления Эффективностью (ДУЭ), где работали аналитики пишущие ТЗ. После испытательного срока меня подключили к одному небольшому проекту. Но я не мог просто взять и реализовать ТЗ от представительницы ДУЭ - у нас началась война правок, по результатам которой для меня оказалось проще исключить аналитика из рабочего процесса и самостоятельно собрал все требования с заказчика. Проект успешно запустился. Аналитик поблагодарила меня за конструктивную критику и... уволилась.
Несколько лет я успешно отбивался от чужих ТЗ, но во время работы над ЦК у меня уже не было времени сильно погружаться в аналитическую работу, и я согласился на "помощь" по связанному проекту от нового отдела аналитиков, которые типа профессионалы. На полученное ТЗ отправил запрос на доработку..., после чего девочка-аналитик на несколько недель пропала. Как мне сказали, она сильно обиделась на то, что ее ТЗ мне не подошло. Я пригласил ее на встречу и объяснил, что работа это работа, а правки - это нормально. Она успокоилась, согласилась с моими доводами и доработала свое ТЗ. После чего ушла на другой проект.
Только потратив неделю на реализацию доработанного ТЗ и уже на этапе сдачи я узнал, что всё это было не то. И далее я три недели плотно работал с заместителем финдиректора холдинга и ведущим финансистом по закупному продукту, чтобы реализовать их настоящие требования и создать продукт, который действительно облегчил их работу.
Все! Никаких больше аналитиков! Никаких чужих ТЗ!
Несколько лет я успешно отбивался от чужих ТЗ, но во время работы над ЦК у меня уже не было времени сильно погружаться в аналитическую работу, и я согласился на "помощь" по связанному проекту от нового отдела аналитиков, которые типа профессионалы. На полученное ТЗ отправил запрос на доработку..., после чего девочка-аналитик на несколько недель пропала. Как мне сказали, она сильно обиделась на то, что ее ТЗ мне не подошло. Я пригласил ее на встречу и объяснил, что работа это работа, а правки - это нормально. Она успокоилась, согласилась с моими доводами и доработала свое ТЗ. После чего ушла на другой проект.
Только потратив неделю на реализацию доработанного ТЗ и уже на этапе сдачи я узнал, что всё это было не то. И далее я три недели плотно работал с заместителем финдиректора холдинга и ведущим финансистом по закупному продукту, чтобы реализовать их настоящие требования и создать продукт, который действительно облегчил их работу.
Все! Никаких больше аналитиков! Никаких чужих ТЗ!
👍5😁2
Нужно ли знать компьютер на фундаментальном уровне?
На Хабре сегодня снова появился (и был удален модераторами) вопрос от начинающего программиста, который изучает C++ в университете на матфаке. Ему нравятся "ссылки" и "указатели", но он хочет узнать как это все работает на более низком уровне:
На Хабре сегодня снова появился (и был удален модераторами) вопрос от начинающего программиста, который изучает C++ в университете на матфаке. Ему нравятся "ссылки" и "указатели", но он хочет узнать как это все работает на более низком уровне:
Наряду с этим, активно изучаю вышмат и неровно дышу к сфере машинного обучения и к высокоуровневой разработке, но меня, в отличие от большинства адекватных людей, сильно корежит, что я, при написании какого-то кода, общаюсь с черной коробкой.Собственно вопрос возник из-за того, что человек начал погружаться в теорию компиляторов и там сильно завис, справедливо полагая, что на эту тему нужно несколько лет, паралельно изучая разнообразную аппаратную архитектуру и несколько вариантов операционных систем.
Журнал инженера-программиста
Нужно ли знать компьютер на фундаментальном уровне? На Хабре сегодня снова появился (и был удален модераторами) вопрос от начинающего программиста, который изучает C++ в университете на матфаке. Ему нравятся "ссылки" и "указатели", но он хочет узнать как…
По моему мнению, этим заниматься не нужно! Программисту достаточно пройти базовый курс "компьютерные науки" - этого достаточно для формирования цельной картины мира программирования и ответа на большинство вопросов "а почему это именно так?".
Теория компиляторов очень сложна и для начинающих даже вредна, так как может дать ошибочное представление о программировании как о чем-то сложном.
Для профессионалом тоже не рекомендую. Сейчас расцвет ИИ и только вопрос времени, когда появятся первые компиляторы, написанные полностью компьютером. Уже прямо сейчас есть сеть, которая генерирует код на Cobol из Java и наоборот.
Будущее именно в направлении оптимальной кодогенерации. Люди будут думать про идеи, а ИИ об их реализации. И обычные калькуляторы снова станут быстро работать и будут занимать считанные килобайты вместо гигабайтов как сейчас! 🤖
P.S. А к черным ящикам нужно привыкать. В конце-концов, инкапсуляция функциональности - это один из базовых принципов ООП.
Теория компиляторов очень сложна и для начинающих даже вредна, так как может дать ошибочное представление о программировании как о чем-то сложном.
Для профессионалом тоже не рекомендую. Сейчас расцвет ИИ и только вопрос времени, когда появятся первые компиляторы, написанные полностью компьютером. Уже прямо сейчас есть сеть, которая генерирует код на Cobol из Java и наоборот.
Будущее именно в направлении оптимальной кодогенерации. Люди будут думать про идеи, а ИИ об их реализации. И обычные калькуляторы снова станут быстро работать и будут занимать считанные килобайты вместо гигабайтов как сейчас! 🤖
P.S. А к черным ящикам нужно привыкать. В конце-концов, инкапсуляция функциональности - это один из базовых принципов ООП.
👍1
Говорят “хочешь научится сам, попробуй научить других”. Отличный совет, на самом деле! И я часто ему следовал – был преподавателем учебного центра 1С (ЦСО), был ментором и куратором во время работы в холдинге Старлайт Медиа, активно отвечал на вопросы на форумах и в чатах.
В связи с весьма реальной перспективой «отмены» 1С в Украине, я решил заблаговременно обновить свои знания по Java и записался на курсы «Advanced Java» (Spring, Kafka, AWS и прочие актуальные темы), во время которых активно помогал сокурсникам.
Но мне этого показалось мало и я решил дополнительно проявить активность в QNA от Хабра в теге Java, где ранее в первой тройке у меня был исключительно 1С. Замыкал тройку тег «1С-Битрикс» и именно его я решил за лето сместить на четвертое место (при том, что вклада в Java у меня еще не было вообще).
Свой план я выполнил не до конца лета, а только к середине сентября. Только сейчас сообщество русскоговорящих айтишников признало, что я шурупаю в Java чуть лучше, чем в 1С-Bitrix и PHP.
Но и про 1С я не забыл и на днях дал юбилейный 500й ответ!
В связи с весьма реальной перспективой «отмены» 1С в Украине, я решил заблаговременно обновить свои знания по Java и записался на курсы «Advanced Java» (Spring, Kafka, AWS и прочие актуальные темы), во время которых активно помогал сокурсникам.
Но мне этого показалось мало и я решил дополнительно проявить активность в QNA от Хабра в теге Java, где ранее в первой тройке у меня был исключительно 1С. Замыкал тройку тег «1С-Битрикс» и именно его я решил за лето сместить на четвертое место (при том, что вклада в Java у меня еще не было вообще).
Свой план я выполнил не до конца лета, а только к середине сентября. Только сейчас сообщество русскоговорящих айтишников признало, что я шурупаю в Java чуть лучше, чем в 1С-Bitrix и PHP.
Но и про 1С я не забыл и на днях дал юбилейный 500й ответ!
👍4👏1
Планово лег в больницу.
Сегодня состоялся забавный диалог с моим лечащим врачом:
В: Напомни, чем ты занимаешься?
Я: Программист 1С - бухгалтерские отчеты, налоги, торговые акции, синхронизации с сайтами, документооборот, ЭЦП и все такое...
В: Супер! У нас в отделении один компьютер что-то барахлит. Можешь посмотреть?
Я: ... А что за компьютер?
В: Я в этом не разбираюсь. Кажется XP. У нас новее нет.
Я: 🤦♂️🤦♂️🤦♂️
Сегодня состоялся забавный диалог с моим лечащим врачом:
В: Напомни, чем ты занимаешься?
Я: Программист 1С - бухгалтерские отчеты, налоги, торговые акции, синхронизации с сайтами, документооборот, ЭЦП и все такое...
В: Супер! У нас в отделении один компьютер что-то барахлит. Можешь посмотреть?
Я: ... А что за компьютер?
В: Я в этом не разбираюсь. Кажется XP. У нас новее нет.
Я: 🤦♂️🤦♂️🤦♂️
😁7
Очень давно слушал подкаст "Радио-Т". Не опечатка, именно прошедшее время. К сожалению, совершенно нет времени на аудио-формат - сначала заменил его в дороге аудио-книгами (бумажные книги тоже нет времени читать), а потом начались ковид с войной, которые отправили меня на постоянную удаленку без потребности вообще куда-либо ходить... Но раньше, когда я еще слушал этот подкаст, то слушал много и это было как открытое окно в мир большого IT.
Рекомендую услышать, если еще о них не слышали.
Пока отдыхаю на больничном, почитал дайджест новинок из мира Java, где недавно вышел LTS 21 и уже примерно известны проекты, которые войдут в LTS 25. Это все просто космос! Когда-то тормознутая Java, теперь в некоторых сценариях обгоняет Rust. В Spring Data победили проблему "N+1". Virtual Threads позволяет получать сколько угодно бесплатных потоков и забыть про игры с пулами при распараллеливании... Читаю и прямо руки чешутся все это попробовать на практике, хотя бы по маленькому проектику, чтобы почувствовать технологию "на вкус".И вот почему я вспомнил коллектив "Радио-Т". Они там сидят и болтают часто про далеко не самые умные штуки, но на IT-тематику. Часто болтают совершенно некомпетентно (к слову, и не скрывают этого, стараются приглашать тематических гостей, или спрашивают у слушателей, чтобы в следующих передачах пересказать факты). Часто уши просто закручиваются от услышанного (особенно, когда рассказывают про "мифический" мир 1С). Но их сила в том, что они болтают про IT-новинки и болтают уже очень много-много лет, чтобы начать чувствовать причино-следственные связи, тренды и вообще иметь собственное мнение о перспективах новинок. А еще они не только болтают, но и лично щупают новинки. Не все-все-все одновременно фичи фреймворка Spring, а только ту одну единственную, которая зарелизилась за пару дней до еженедельной передачи. А их примитивные, но разнообразные хелоуворды капля по капле за годы превращаются в поток техно-опыта, за который их ценят тысячи слушателей уже почти два десятилетия.
Рекомендую услышать, если еще о них не слышали.
Radio-T
Радио-Т Подкаст
Еженедельные разговоры на темы хайтек, высоких компьютерных технологий, гаджетов, облаков, программирования и прочего интересного из мира ИТ.
👍4👌1
На GitHub опубликовали ежегодную аналитику по активности на платформе. В этот раз было много про ИИ, но для меня наиболее интересной статистикой стало использование языков. Java еще в 2019 уступила второе место Python, а в этом году она уже опустилась на 4 место, уступив TypeScript - строго типизированной версии JavaScript, которая уже десятилетие сидит на первом месте.
👍3
#многабукаф
У меня довольно богатая блогерская история. Успел наследить на лирухе, ярухе, ЖЖшке, джорналсах, твиттере, инсте и фейсбуке (и где-то еще). Для меня это не были "дневники" в полноценном смысле, а скорее места для общения. Места, где я могу написать про интересное событие, прочитать о событиях знакомых и случайных "прохожих", а потом мы толпой все это обсуждали в комментариях. Я даже ходил на оффлайн сходки блогеров. Акцент на общении не давал мне "застрять" на одной платформе, я пробовал все, что видел. И акцент на общении послужил причиной ухода из лайв-блогинга, когда появились сначала интересные форумы, а потом сообщества в телеграмме. Теперь, когда я что-то и пишу, то это скорее технические статьи на Хабре или Инфостарте. Недавно стал вести этот канал.
Самые яркие воспоминания у меня остались, наверное, от ЖЖ. Не буду давать ссылку - там только скучные истории из моей работы программистом (проекты, командировки) и рефлексия на события. В какой-то момент я случайно влился в коллектив СНГшных писателей фантастов, которые тогда только заходили в ЖЖ. Для некоторых я стал "контрольным читателем"... А как-то в нулевых в моем блоге пару раз оставлял комментарии сам Сергей Лукьяненко (он тогда уже написал первые два Дозора и был на пике популярности). Но как быстро пришли, так и пропали. Только с одним питерским писателем до сих пор периодически общаемся...
А еще, кажется, из тех блогов, которые не социальные сети, выжил только ЖЖ. Сегодня на почту от них пришла рассылка "о чем вы писали 13 лет назад". Очень забавная запись:
Теперь я знаю пару ответов на вопросы "зачем?" и "кто будет читать?". Вот что с людьми возраст делает 😅
1. Этот материал можно отдать на анализ нейронным сетям для обучения (ChatGPT)
2. Из материала можно взять интересные цитаты для корпуса языка
3. Различные агентства анализируют подобные тексты для анализа социальных трендов
4. Это богатый материал для историков будущего, которым будет нужно перепроверять фейки от мировых СМИ
5. Это инструмент психотерапии для пишущего!!!
У меня довольно богатая блогерская история. Успел наследить на лирухе, ярухе, ЖЖшке, джорналсах, твиттере, инсте и фейсбуке (и где-то еще). Для меня это не были "дневники" в полноценном смысле, а скорее места для общения. Места, где я могу написать про интересное событие, прочитать о событиях знакомых и случайных "прохожих", а потом мы толпой все это обсуждали в комментариях. Я даже ходил на оффлайн сходки блогеров. Акцент на общении не давал мне "застрять" на одной платформе, я пробовал все, что видел. И акцент на общении послужил причиной ухода из лайв-блогинга, когда появились сначала интересные форумы, а потом сообщества в телеграмме. Теперь, когда я что-то и пишу, то это скорее технические статьи на Хабре или Инфостарте. Недавно стал вести этот канал.
Самые яркие воспоминания у меня остались, наверное, от ЖЖ. Не буду давать ссылку - там только скучные истории из моей работы программистом (проекты, командировки) и рефлексия на события. В какой-то момент я случайно влился в коллектив СНГшных писателей фантастов, которые тогда только заходили в ЖЖ. Для некоторых я стал "контрольным читателем"... А как-то в нулевых в моем блоге пару раз оставлял комментарии сам Сергей Лукьяненко (он тогда уже написал первые два Дозора и был на пике популярности). Но как быстро пришли, так и пропали. Только с одним питерским писателем до сих пор периодически общаемся...
А еще, кажется, из тех блогов, которые не социальные сети, выжил только ЖЖ. Сегодня на почту от них пришла рассылка "о чем вы писали 13 лет назад". Очень забавная запись:
Смотрим [...] повтор серий Хауса за неделю. [...] про пациентку, которая не представляет свою жизнь без ноутбука. Она все время висит в ЖЖ и пишет, пишет... Насколько я понял, она описывает в ЖЖшке каждый момент своей жизни. Даже после ссоры с мужем она описала в ЖЖ каждое высказывание.
Я подозреваю, что подобных "стенографистов" множество даже в русскоговорящем сегменте ЖЖ. Но разве это нормально описывать всю свою жизнь? Нормально описывать день за днем все действия и события? Кто это потом читать будет? Максимум френды отметятся в комментах, если сообщение попадет в их ленту. Архивы этой титанической работы ни френды, ни автор перечитывать не будут. Френдам не интересно - жизнь среднестатистического человека обычно не богата на события и состоит из повторяющихся действий. Автору тоже не интересно, точнее некогда - он будет описывать новые дни и новые события.
Теперь я знаю пару ответов на вопросы "зачем?" и "кто будет читать?". Вот что с людьми возраст делает 😅
1. Этот материал можно отдать на анализ нейронным сетям для обучения (ChatGPT)
2. Из материала можно взять интересные цитаты для корпуса языка
3. Различные агентства анализируют подобные тексты для анализа социальных трендов
4. Это богатый материал для историков будущего, которым будет нужно перепроверять фейки от мировых СМИ
5. Это инструмент психотерапии для пишущего!!!
🔥3👍2👏1
Уже упоминал, что иногда я помагаю людям на qna.habr.com , где некоторое время курировал два раздела, которые связаны с 1С. И чтобы не пропускать новые вопросы даже делал подписку на почту. Хотя после начала войны несколько месяцев не заходил и меня за время отсутствия "разжаловали". Но сейчас не об этом.
Год назад, когда я решил чуть больше посвятить себя языку Java, я подписался на почту на соответствующий раздел. В целом вопросы почти как в мире 1С, но есть отличие за счет активности действующих 5 кураторов. Иногда я вижу интересные, порой даже философские вопросы, с интересом перехожу из почты, чтобы почитать комментарии или даже попробовать ответить, но вопросы уже удалены - или вне тематики ресурса, или невозможно дать однозначный ответ, или TRFM MF!
Всегда осуждал подобный подход и в своих разделах удалял только явный спам. Я считаю, что пусть на различных сайтах дот-еди, дот-нет и дот-ком могут быть сотни ответов на этот самый вопрос, но если человек пришел и спрашивает, то или он банально не знает где и как эффективно искать информацию, или не понимает каких-то базовых понятий и потому видя ответ не может его понять. Легкий пинок в нужном направлении позволит неофиту набрать нужный импульс и превратится в хорошего профессионала, с которым в будущем не страшно идти на один проект. А к чему хорошему приводит удаление вопроса? [мэм "к черту программирование, буду вебкамщицей"]
И в случае с Java примерно 75% спорных вопросов может закрыть совет пойти на ресурсы типа LeetCode и HackerRank. Есть и другие, но я эту парочку хорошо знаю и могу рекомендовать.
Непонятные задачки на собеседованиях про матрицы и алгоритмы? Многие компании берут задачи именно с этих сайтов, а некоторые вообще не скрываясь открывают LeetCode и предлагают решить задачку прямо на собеседовании. Просмотрите список задач - возможно тут есть та, которая поставила в тупик, а к каждой задачке есть комментарии от пользователей...
Как с консоли считать двух- или трьох-мерную матрицу, или вывести в консоль? (сегодня был такой вопрос) Это половина задач на ресурсах! Открывайте первую попавшуюся, читайте условие и делайте по аналогии (если на собеседовании дали задачку на домашнюю работу).
Как перестать волноваться и научится быстро фокусироваться? Тренируйтесь и набивайте себе опыт! Это вообще максимально общий совет, который при этом максимально практичен. Чтобы научится проходить тесты, нужно просто учится проходить тесты! Если регулярки и управление потоками можете писать проснувшись среди ночи, то никакие собеседования уже не страшны!
Год назад, когда я решил чуть больше посвятить себя языку Java, я подписался на почту на соответствующий раздел. В целом вопросы почти как в мире 1С, но есть отличие за счет активности действующих 5 кураторов. Иногда я вижу интересные, порой даже философские вопросы, с интересом перехожу из почты, чтобы почитать комментарии или даже попробовать ответить, но вопросы уже удалены - или вне тематики ресурса, или невозможно дать однозначный ответ, или TRFM MF!
Всегда осуждал подобный подход и в своих разделах удалял только явный спам. Я считаю, что пусть на различных сайтах дот-еди, дот-нет и дот-ком могут быть сотни ответов на этот самый вопрос, но если человек пришел и спрашивает, то или он банально не знает где и как эффективно искать информацию, или не понимает каких-то базовых понятий и потому видя ответ не может его понять. Легкий пинок в нужном направлении позволит неофиту набрать нужный импульс и превратится в хорошего профессионала, с которым в будущем не страшно идти на один проект. А к чему хорошему приводит удаление вопроса? [мэм "к черту программирование, буду вебкамщицей"]
И в случае с Java примерно 75% спорных вопросов может закрыть совет пойти на ресурсы типа LeetCode и HackerRank. Есть и другие, но я эту парочку хорошо знаю и могу рекомендовать.
Непонятные задачки на собеседованиях про матрицы и алгоритмы? Многие компании берут задачи именно с этих сайтов, а некоторые вообще не скрываясь открывают LeetCode и предлагают решить задачку прямо на собеседовании. Просмотрите список задач - возможно тут есть та, которая поставила в тупик, а к каждой задачке есть комментарии от пользователей...
Как с консоли считать двух- или трьох-мерную матрицу, или вывести в консоль? (сегодня был такой вопрос) Это половина задач на ресурсах! Открывайте первую попавшуюся, читайте условие и делайте по аналогии (если на собеседовании дали задачку на домашнюю работу).
Как перестать волноваться и научится быстро фокусироваться? Тренируйтесь и набивайте себе опыт! Это вообще максимально общий совет, который при этом максимально практичен. Чтобы научится проходить тесты, нужно просто учится проходить тесты! Если регулярки и управление потоками можете писать проснувшись среди ночи, то никакие собеседования уже не страшны!
🔥2👍1
Еще одно письмо с вопросом, который был тут же удален на Хабре:
1. Очевидно, что корень проблемы не в программировании, а в мировоззрении. Если бы у меня был канал связи с парнем, я бы посоветовал ему искать не карьерных консультантов, а хорошего психолога.
2. На пятом десятке жизненного пути немного смешно читать про "все пропало, я в 28 ничего не добился" - еще вся жизнь в переди, всего несколько гипотез было протестировано и еще десятки выборов предстоит впереди...
3. C2 - это булщит, на самом деле хотят B2. Но тут не нужно возмущаться, так как английский - это рабочий язык создателей Java, это язык ежегодных конференций по Java, язык Java-раздела на стековерфлоу, язык открытых Java-репозиториев и это язык экзамена на получение сертификата профессионала по Java. Не знаешь английский - не можешь быть эффективным! Не знаешь английский, а знаешь русский, тогда твой путь - 1С и Дракон.
4. А книги и компьютерные игры обязаны приносить доход? Получил свою порцию гормонов счастья, увидел мир не таким уже и серым - работай дальше юристом или тавароведом... Скажи спасибо, что мы не пару веков назад живем, иначе целый день проводил бы в поле или на веслах - в активностях, которые даже мазохистам радости не приносит.
5. Умение программировать - это не только умение зарабатывать на софтверных галерах. В первую очередь это умение писать программы. В каждой профессии есть трудности, которые хочется упростить. Вперед, пиши для самого себя софт! Некоторые популярные продукты (например Slack) изначально разрабатывались для себя, а потом были выведены на рынок и принесли авторам миллионы.
6. Почему Java? Почему не Fortran и Cobol? Или почему не Ada и SmallTalk? Учить с целью заработка нужно не те инструменты, которые описаны в популярных книгах по Computer Science, а упомянутые в объявлениях про поиск программистов в вашем регионе. Если по Java вакансий мало, а по Kotlin (или Go, или JavaScript) много - не теряйте время, не ешьте кактус!
Имеются за спиной около 6-8 пройденных курсов на Coursera, Javarush.
Но вот такая беда: не везет даже со стажировками. Я хз что делать. То требования от стажера - как к Junior+/Middle, то требование знать английский чуть ли не на С2 уровне.
Оглядываясь назад, начинаю осозновать, что бесполезные 3 года я вложился в это программирование, пусть оно и было моим наилюбимейшим занятием в эти 3 года, но когда наблюдается личностная стагнация, то и руки опускаются.
Мне 28 лет, за спиной имеется диплом очень даже престижной профессии, но на которой я работать не хочу. Хоть убей, но тянет к коду.
Ситуацию немного осложняет тот факт, что приходится работать, дабы не голодать и платить за съем жилья, больше 5-6 часов в сутки чисто физически выделять не получается.
Я даже готов на бесплатную стажировку по Джава, но вот хрен кто возьмет.
Возникают мысли о суициде, ибо в 28 так и не добился своего желаемого.
1. Очевидно, что корень проблемы не в программировании, а в мировоззрении. Если бы у меня был канал связи с парнем, я бы посоветовал ему искать не карьерных консультантов, а хорошего психолога.
2. На пятом десятке жизненного пути немного смешно читать про "все пропало, я в 28 ничего не добился" - еще вся жизнь в переди, всего несколько гипотез было протестировано и еще десятки выборов предстоит впереди...
3. C2 - это булщит, на самом деле хотят B2. Но тут не нужно возмущаться, так как английский - это рабочий язык создателей Java, это язык ежегодных конференций по Java, язык Java-раздела на стековерфлоу, язык открытых Java-репозиториев и это язык экзамена на получение сертификата профессионала по Java. Не знаешь английский - не можешь быть эффективным! Не знаешь английский, а знаешь русский, тогда твой путь - 1С и Дракон.
4. А книги и компьютерные игры обязаны приносить доход? Получил свою порцию гормонов счастья, увидел мир не таким уже и серым - работай дальше юристом или тавароведом... Скажи спасибо, что мы не пару веков назад живем, иначе целый день проводил бы в поле или на веслах - в активностях, которые даже мазохистам радости не приносит.
5. Умение программировать - это не только умение зарабатывать на софтверных галерах. В первую очередь это умение писать программы. В каждой профессии есть трудности, которые хочется упростить. Вперед, пиши для самого себя софт! Некоторые популярные продукты (например Slack) изначально разрабатывались для себя, а потом были выведены на рынок и принесли авторам миллионы.
6. Почему Java? Почему не Fortran и Cobol? Или почему не Ada и SmallTalk? Учить с целью заработка нужно не те инструменты, которые описаны в популярных книгах по Computer Science, а упомянутые в объявлениях про поиск программистов в вашем регионе. Если по Java вакансий мало, а по Kotlin (или Go, или JavaScript) много - не теряйте время, не ешьте кактус!
👍5⚡1
Ушел знаковый для 1С человек - Никита Зайцев. Многие его знали по единственному регулярному подкасту на темы 1С, хотя лично мне они не зашли. Но зато мне очень зашли его выступления на конференциях - всегда внимательно их слушал и скриншотил интересные моменты.
😱2
Forwarded from 1C Company (Никита Старичков)
Сегодня не стало Никиты Зайцева.
Я уважал Никиту как профессионала, ценил его как друга и всегда был рад его видеть и слышать.
Больше двух лет подкаста, преподавание в МФТИ и ВШЭ - мы многое успели сделать, многое и планировали.
Нам будет тебя не хватать.
Двери закрываются, звездный крейсер "Радио 1С Энтерпрайз" улетает.
Я уважал Никиту как профессионала, ценил его как друга и всегда был рад его видеть и слышать.
Больше двух лет подкаста, преподавание в МФТИ и ВШЭ - мы многое успели сделать, многое и планировали.
Нам будет тебя не хватать.
Двери закрываются, звездный крейсер "Радио 1С Энтерпрайз" улетает.
Ночью проводили 2023 год и теперь можно уверено подводить итоги. Многие это делали вчера, позавчера и даже с начала декабря, но я живу по принципу «не говори ГОП, пока не перепрыгнул». Поскольку год закончился я наконец-то могу уверенно сказать, что достигнута главная для автора канала цель – не сдохнуть. На новый наступивший 2024 год цель не изменяется – главным приоритетом остается выживание, а главными вызовами по-прежнему будут война с ежедневной угрозой гибели от ракет и дронов, а также вызванная ею на фоне хронического стресса болезнь крови.
Из позитивных моментов прошлого года могу отметить, что я вошел во вкус своего статуса ФОП (ФЛП) и даже начал жалеть, что не оформился предпринимателем ранее. Это не только больший уровень доходов (на СЛМ фопщикам официально платили на 20% больше, чем штатным сотрудникам на тех же должностях за счет экономии на налогах), но и большая гибкость в работе с компаниями, большая «зрелость» во взаимоотношениях и меньше уровень ответственности.
Так же в качестве эксперимента прошел курс «Advanced Java» (Spring, ORM, WEB-приложения, тестирование, DevOps-практики и тому подобное). Вызов для меня тут был в том, смогу ли я проходить курс на уровне с молодыми студентами, большинство из которых было на 20 лет меня младше, и которые ранее проходили в той же ИТ-школе с теми же преподавателями курс по Java Core. Эксперимент прошел успешно – материал оказался настолько для меня простым, что часть студентов стала в личке со мною списываться, так как, по их словам, я объяснял лучше, чем преподаватели с курсов.
Но нельзя просто взять и свитчнутся с 1С на Java без навыков английского разговорного языка. Даже в описании вакансий разработчиков в киевские офисы, где нужно общаться только с украинской командой, требуется высокий уровень разговорных скилов в инглише (на случай роста компании и аутсорса на забугорье). Данное требование было невыполнимым для меня, так как в школе и университете у меня был только французский, а англоязычное окружение у меня полностью отсутствовало. После окончания курса по Java я на эти же дни записался на уроки с репетитором через preply.com. И результаты очень неплохие – за полгода я научился говорить на уровне туриста и как минимум могу донести свои мысли.
Оглядываясь же на статистику этого канала, могу констатировать, что я был очень скупым автором. Помимо рабочей загрузки палку в колесо моего творческого вдохновения вставила моя жадность. Мне захотелось осветить тему современных СУБД, на которую, как мне кажется, у меня есть особый взгляд. Меня не остановили те факты, что на эту тему пишут толстые книги и в университетах ведут курсы длиной в несколько семестров. Но настоящим камнем преткновения стало осознание, что мне или нужно очень много писать, или ограничиваться поверхностными оценками. В первом случае никто не захочет тратить свое время и в лучшем случае пробегут глазами по диагонали. Во втором – я обоснованно не смогу продемонстрировать свою точку зрения и не буду отличаться от голословным хайповщиков из интернета. Хотя сейчас мне кажется, что упомянутые «эксперты», которые подменяют систему доводов своим авторитетом, тоже стояли перед похожей дилеммой.
Но не смотря на скудность постов и даже при отсутствии иной рекламы помимо ссылки на канал в моем профиле, у меня появились читатели, из числа которых за последний год только один ушел. Это вдохновляющая статистика! Следовательно пора преодолеть творческий кризис и продолжать движение вперед.
Спасибо за то, что были с каналом прошлый год и за то, что прочитали этот длиннопост! Поздравляю всех с праздником и желаю всем творческого и финансового роста минимум в 100% 🎉🌲🥂
До встречи на страницах!
Из позитивных моментов прошлого года могу отметить, что я вошел во вкус своего статуса ФОП (ФЛП) и даже начал жалеть, что не оформился предпринимателем ранее. Это не только больший уровень доходов (на СЛМ фопщикам официально платили на 20% больше, чем штатным сотрудникам на тех же должностях за счет экономии на налогах), но и большая гибкость в работе с компаниями, большая «зрелость» во взаимоотношениях и меньше уровень ответственности.
Так же в качестве эксперимента прошел курс «Advanced Java» (Spring, ORM, WEB-приложения, тестирование, DevOps-практики и тому подобное). Вызов для меня тут был в том, смогу ли я проходить курс на уровне с молодыми студентами, большинство из которых было на 20 лет меня младше, и которые ранее проходили в той же ИТ-школе с теми же преподавателями курс по Java Core. Эксперимент прошел успешно – материал оказался настолько для меня простым, что часть студентов стала в личке со мною списываться, так как, по их словам, я объяснял лучше, чем преподаватели с курсов.
Но нельзя просто взять и свитчнутся с 1С на Java без навыков английского разговорного языка. Даже в описании вакансий разработчиков в киевские офисы, где нужно общаться только с украинской командой, требуется высокий уровень разговорных скилов в инглише (на случай роста компании и аутсорса на забугорье). Данное требование было невыполнимым для меня, так как в школе и университете у меня был только французский, а англоязычное окружение у меня полностью отсутствовало. После окончания курса по Java я на эти же дни записался на уроки с репетитором через preply.com. И результаты очень неплохие – за полгода я научился говорить на уровне туриста и как минимум могу донести свои мысли.
Оглядываясь же на статистику этого канала, могу констатировать, что я был очень скупым автором. Помимо рабочей загрузки палку в колесо моего творческого вдохновения вставила моя жадность. Мне захотелось осветить тему современных СУБД, на которую, как мне кажется, у меня есть особый взгляд. Меня не остановили те факты, что на эту тему пишут толстые книги и в университетах ведут курсы длиной в несколько семестров. Но настоящим камнем преткновения стало осознание, что мне или нужно очень много писать, или ограничиваться поверхностными оценками. В первом случае никто не захочет тратить свое время и в лучшем случае пробегут глазами по диагонали. Во втором – я обоснованно не смогу продемонстрировать свою точку зрения и не буду отличаться от голословным хайповщиков из интернета. Хотя сейчас мне кажется, что упомянутые «эксперты», которые подменяют систему доводов своим авторитетом, тоже стояли перед похожей дилеммой.
Но не смотря на скудность постов и даже при отсутствии иной рекламы помимо ссылки на канал в моем профиле, у меня появились читатели, из числа которых за последний год только один ушел. Это вдохновляющая статистика! Следовательно пора преодолеть творческий кризис и продолжать движение вперед.
Спасибо за то, что были с каналом прошлый год и за то, что прочитали этот длиннопост! Поздравляю всех с праздником и желаю всем творческого и финансового роста минимум в 100% 🎉🌲🥂
До встречи на страницах!
🍾5👍4🔥2
Некоторые "староверы" игнорируют новые возможности платформы 1С (расширения, подписки на события и т.п.) и правят функционал без какой-либо системы - лишь бы как-то работало и клиент заплатил деньги.
Есть "пионеры технологий", которые директивно запрещают изменение основной конфигурации и все правки вносят только через расширения. Много расширений. Очень много расширений, часть из которых закономерно отваливается во время обновлений.
Давайте же обойдется без крайностей и будем всегда при выборе стратегии внесения правок в конфигурации выбирать здравый смысл 🥸
Есть "пионеры технологий", которые директивно запрещают изменение основной конфигурации и все правки вносят только через расширения. Много расширений. Очень много расширений, часть из которых закономерно отваливается во время обновлений.
Давайте же обойдется без крайностей и будем всегда при выборе стратегии внесения правок в конфигурации выбирать здравый смысл 🥸
Telegraph
Как разумно изменять конфигурации 1С
Первая попытка доработать функционал типовой конфигурации 1С, чтобы привнести в нее нечто новое и полезное, у меня случилась летом 2003 года, когда я подрабатывал сисадмином в одной киевской дистрибьюторской компании. Это была большая семерочная комплексная…
💯5🔥2
Недавно по работе столкнулся с конфликтом расширений. Решил пересказать историю в виде короткого эссе, но как очнулся уже была написана целая статья 🤓
Опубликовал на Инфостарте: https://infostart.ru/1c/articles/2033431/
Опубликовал на Инфостарте: https://infostart.ru/1c/articles/2033431/
infostart.ru
Поговорим о расширениях
Если у вас одно расширение, то намного больше преимуществ от его использования, чем проблем. Но стоит позволить количеству одновременно примененных расширений вырасти, как пропорция резко изменяется на менее привлекательную, вплоть до стойкого желания все…
👍3🔥2
Как-то поучаствовал в споре на партнерском форуме 1С на тему управляемого интерфейса. Мне тогда безапелляционно заявили, что управляемые формы - это лучшее, что произошло на платформе 1С:Предприятие со времен перехода с 7.7 на 8.0.
Но если управляемые формы - это настолько прорывная и восхитительная технология, то почему со времен 8.2 тянется ворох багов и ошибочных решений, которые никто даже не планирует исправлять?
1. Ок, допускаю, что технологически сложно было сделать обвертки над объектами, чтобы поместить их в данные формы, и потому придумали новые типы, которые используются только в качестве реквизитов формы, но почему не дать тут же на форме удобный АПИ для преобразования? Почему нас путают двумя методами для преобразования, которые делают одно и тоже (только один явно требует целевой тип, а второй может сам о нем догадаться)?
2. Почему самый базовый тип для работы с коллекцией данных, Таблицу Значений, запрещено передавать между клиентским и серверным контекстом формы? При том, что она может жить и на сервере, и на клиенте (как реквизит формы, или создание через конструктор Новый). Сколько еще десятилетий результат выгрузки запросов и табличных частей нужно будет дополнительно преобразовывать в массив структур?
3. Почему нельзя создать переменную модуля формы, которая будет жить и на сервере и на клиенте? Почему сохранение данных предусмотрено только для клиентских переменных, а серверные живут только на протяжении серверного вызова?
4. Если для массивов, структур и соответствий, которые должны существовать одновременно на клиенте и сервере, предлагается использовать реквизиты формы, то почему для них нет нормальных типов и нужно использовать тип Произвольный? Почему из этой тройки напрямую в реквизит можно записать только Структуру, а остальные только в качестве значений этой структуры?
5. Почему для Элементов Формы нельзя просто взять и проверить путь к данным на стороне клиента (важно для элементов, которые создаются расширениями и обработками)? Почему для этого обязательно нужно делать серверный контекстный вызов?
6. Почему для Элементов Формы нельзя просто взять и получить в коде на форме значение Заголовка, если оно явно не скопировано в свойства элемента? Почему для этого нужно делать серверный вызов, считывать путь к данным, а дальше делать исследование через метаданные?
7. Почему вообще нет простого способа через код узнать "Что видит и что доступно пользователю?". В некоторых сценариях Видимость=Истина для невидимых элементов и ТолькоПросмотр=Ложь с Доступность=Истина для недоступных для редактирования. Если видимость и доступностью управляются условным оформлением в табличных частях, то тут вообще тяжелый случай: нужно делать серверный контекстный вызов, считывать текущее условное оформление, перебором выискивать есть ли оформление элементов из табличной части и есть ли управление видимостью/доступностью и выполняются ли правила применения (которые могут быть очень сложными) к текущей строке таблицы.
8. Почему для програмного управления формой все настолько сложно, что все пишут собственные велосипедные библиотеки? Почему все нужные свойства нельзя передавать в конструкторы элементов формы, а не требовать держать под рукой черновики для копипасты, так как для разных типов элементов внезапно стают доступны или недоступны свойства, которые описаны в справке (проверка синтаксиса естественно промолчит и ошибка будет только во время выполнения).
(продолжение)
Но если управляемые формы - это настолько прорывная и восхитительная технология, то почему со времен 8.2 тянется ворох багов и ошибочных решений, которые никто даже не планирует исправлять?
1. Ок, допускаю, что технологически сложно было сделать обвертки над объектами, чтобы поместить их в данные формы, и потому придумали новые типы, которые используются только в качестве реквизитов формы, но почему не дать тут же на форме удобный АПИ для преобразования? Почему нас путают двумя методами для преобразования, которые делают одно и тоже (только один явно требует целевой тип, а второй может сам о нем догадаться)?
2. Почему самый базовый тип для работы с коллекцией данных, Таблицу Значений, запрещено передавать между клиентским и серверным контекстом формы? При том, что она может жить и на сервере, и на клиенте (как реквизит формы, или создание через конструктор Новый). Сколько еще десятилетий результат выгрузки запросов и табличных частей нужно будет дополнительно преобразовывать в массив структур?
3. Почему нельзя создать переменную модуля формы, которая будет жить и на сервере и на клиенте? Почему сохранение данных предусмотрено только для клиентских переменных, а серверные живут только на протяжении серверного вызова?
4. Если для массивов, структур и соответствий, которые должны существовать одновременно на клиенте и сервере, предлагается использовать реквизиты формы, то почему для них нет нормальных типов и нужно использовать тип Произвольный? Почему из этой тройки напрямую в реквизит можно записать только Структуру, а остальные только в качестве значений этой структуры?
5. Почему для Элементов Формы нельзя просто взять и проверить путь к данным на стороне клиента (важно для элементов, которые создаются расширениями и обработками)? Почему для этого обязательно нужно делать серверный контекстный вызов?
6. Почему для Элементов Формы нельзя просто взять и получить в коде на форме значение Заголовка, если оно явно не скопировано в свойства элемента? Почему для этого нужно делать серверный вызов, считывать путь к данным, а дальше делать исследование через метаданные?
7. Почему вообще нет простого способа через код узнать "Что видит и что доступно пользователю?". В некоторых сценариях Видимость=Истина для невидимых элементов и ТолькоПросмотр=Ложь с Доступность=Истина для недоступных для редактирования. Если видимость и доступностью управляются условным оформлением в табличных частях, то тут вообще тяжелый случай: нужно делать серверный контекстный вызов, считывать текущее условное оформление, перебором выискивать есть ли оформление элементов из табличной части и есть ли управление видимостью/доступностью и выполняются ли правила применения (которые могут быть очень сложными) к текущей строке таблицы.
8. Почему для програмного управления формой все настолько сложно, что все пишут собственные велосипедные библиотеки? Почему все нужные свойства нельзя передавать в конструкторы элементов формы, а не требовать держать под рукой черновики для копипасты, так как для разных типов элементов внезапно стают доступны или недоступны свойства, которые описаны в справке (проверка синтаксиса естественно промолчит и ошибка будет только во время выполнения).
(продолжение)
Telegram
Журнал инженера-программиста
9. Почему нельзя делать фоновые задачи на стороне клиента, которые не будут блокировать пользовательский интерфейс? Почему, если самостоятельно пытаться управлять клиентом через обработчики ожидания, то тут или нужно по секунде второй вообще ничего не делать…
👍1