Как стать автором
Обновить
15
0.1
ODuo Batteries @Asker1987

Инженер

Отправить сообщение

Используем codestyle от intellij с форматированием на основе ОБЩЕПРИНЯТОГО google style. А в качестве плагина для проверки билда для CI - checkstyle. Codestyle с проектом в git.

Не понимаю, разговоров об отсутствии конвенции. Есть два варианта: олдскульный oracle java code style convention и google java code style convention.

Проблема реально высосана из пальца.

На всех постах об оптимизационных задачах и алгоритмах всегда ожидаю твои комменты😀я твой фанат

Как делать презентации хорошо описано в книге «iПрезентация. Уроки убеждения от основателя Apple Стива Джобса».

Люто плюсую под каждым словом.

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

За свои 15 лет опыта могу сказать, что как раз таки раньше алгоритмы были синонимом программирования. Раньше спрашивали алгоритмы гораздо чаще. Сейчас же наоборот - век фреймворкового программирования и секция алгоритмов стала нишевой только для больших мегакомпаний, где осталась культура мат базы. Незнание алгоритмов порождает неспособность идентифицировать проблему как задачу дискретной математики. Отсюда и вытекает недоумение "алгоритмы же не пригождаются". А как они пригодятся если не владеешь ими и не можешь идентифицировать задачу математически в мире построенном на цифрах?

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

По бенчмаркам - это обычно к зарубежным статьям, там легче с этим. Я обычно по задачам быстро нахожу, например "TSP benchmarks" - мне нравится именно задача коммивояжёра, потому что для неё есть много решений и бенчмарок известных, это такая тестовая классическая NP полная задача, можно найти статьи в которых пишут о своих результатах. Есть проект с предзагруженными бенчмарками:

https://github.com/optimizationBenchmarking/tspSuite/tree/master/src/main/resources/org/logisticPlanning/tsp/benchmarking/instances

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

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

Согласен с комментарием выше, все операторы есть в генетическом алгоритме.

Хемотаксис = оператор мутации в ГА

Репродукция = оператор репродукции в ГА

Элиминация-дисперсия = оператор разнообразия в ГА или реализация модели де Фриза для ГА

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

И снова непонимание ООП, SOLID, DRY. Война против абстракций будет вечна, потому что это требует особых усилий. Проблема не в том, что сделали абстракцию, а в том, как Вы сами отметили, что кто-то зачем-то в абстракцию что-то добавил или изменил. Не надо подменять понятия и суть проблемы. Допустим, это сделали не Вы, тогда кто пропустил на код ревью такое вмешательство в абстракцию? Думаю, вопрос в квалификации. Прекратите воевать с ООП и SOLID.

Годнота. Жду генетического алгоритма

У самурая нет цели, есть только путь.

15 лет в деле, а ещё перед этим лет 10 активно в учебных целях кодил. Молодежь имеет тенденцию выгорать, прокрастинировать, потому что бегут за хайпом и деньгами, но действительность отрезвляет. Наше поколение не видело этих денег в начале пути. Кто-то мечтал писать игры, кто-то романтизировал образ хакеров, кто-то просто был в восторге от увлекательного процесса. Залетали не через курсы, а через многолетнее упорство. Никакого выгорания, потому что для этого типа людей, программирование больше, чем профессия - это ремесло. Ремесло, которое оттачивается ежедневно. Нет цели изучить какие-то конкретные технологии или достичь конкретного грейда. Есть только путь.

Класс алгоритмов называется биоинспирированные, дальше разбивается на эволюционные и роевые и т.д. Каждый год выходит пара новых. Алгоритм муравьев, стаи птиц, голодных волков, кукушки, жучков, паучков и т.д. Большинство этих алгоритмов объединяют 2 вещи: желание грантоежек срубить лёгких казённых денег на "новую разработку" и отсутствие внятных результатов на бенчмарках. Как говорил уважаемый адепт биоинспирированных алгоритмов "цифры! Покажите цифры! Цифры!" Давно перестал на новые алгоритмы обращать внимания, если не представлены бенчмарки.

Прикольно. У нас была специальность САПР микроэлектроники. Проектировали платы, схемы с помощью генетических алгоритмов. Но это дипломная работа, как минимум. Начинали, конечно, с hello world) Где он только копал свои вопросы?!

Как вариант, Вы просто приятный и интересный для него человек, и он просто хотел быть на одной волне с Вами, чтобы ценили его общество тоже))

тут рыночек решает. Как и писал "для сеньоров, ценность которых компания осознает", ведь иначе сеньор уйдет к адекватному работодателю. Нужно быть на том уровне, чтобы работодатель не хотел вас терять, обязательствами. Если работодатель пренебрегает контрактными обязательствами, то какая разница, это трудовой договор или контракт с ИП? В обоих случаях работник будет искать альтернативу. Но повторюсь, ценного сотрудника никто не захочет терять.

Отличная статья.

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

Лайк за статью однозначно.

Книга Кормена, конечно, топчик. Но вот с чем не соглашусь - 2-3 недель не хватит. Алгоритмы являются непреодолимым барьером практических для всех программистов на всех собесах. А что такое вдруг?! Ведь каждый знает, что это этап собеса, но вот ненавидят этот этап и все тут! Прочитать пару сотен страниц кормена - мелочь какая по сравнению с книгами по всем фреймворкам собеса. Всего лишь 5% от общего объёма требуемых знаний. Тогда почему не уделять эти 2-3 недели? А все просто. 2-3 недели недостаточно. Любой фреймворк усваивается со скоростью чтения или просмотра Ютуб. А алгоритмы - не справочная информация, необходимо в голове формировать сложные связи и абстракции. Проще говоря, думать надо, а это уже злит испытуемого.

Ты ходишь по очень тонкому льду)) тебя тупо захейтят, заодно и меня. В 2024м алгоритмы уже давно под запретом. Тенденция продолжалась десяток лет и достигла апогея. Вообще надо скрывать свои знания, чтобы тебя не спалили и не накинулись токсики. Как вообще алгоритм может пригодиться, если о его существовании даже не знают?! Более того, зачастую фреймворковые программисты даже не способны идентифицировать проблему, чтобы начать хотя бы гуглить "как решить ХХХ".

ЗЫ провел опрос, алгоритмы ни разу не пригодились ни сантехнику, ни электрику, ни уборщику.

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

Подписываюсь под выводами статьи. Главное- держать фокус команды на продукте, а не на метриках.

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

Информация

В рейтинге
3 746-й
Откуда
Таганрог, Ростовская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Fullstack Developer, Chief Technology Officer (CTO)
Lead
People management
Project management
Company management
Startup management
Automation of processes
Building a team