Pull to refresh
16
Виктор Латов@oeditusread⁠-⁠only

пишу много кода

7
Subscribers
Send message

Фраза «Программист пьет ртом.» сделала меня счастливым, даже когда я понял, что неверно её прочитал.

А вот решение этой задачи на языке программирования, которому 50 с лишним лет: https://habr.com/ru/articles/885668/

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

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

Весь этот выблев бесплатной старенькой LLM я, разумеется, читать не стал, но пока мотал страницу в комментарии, глаз зацепился за это:

Как калькулятор не убил математику — так и ИИ не убьёт мышление.

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

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

Ну и отлично. Результаты поиска по «рамадан» и всяким «иншалла»/«машалла» я бы вообще кешировал.

Кстати, а вы проверяли поиск «إن شاء الله» / «رمضان»? Там-то какие цифры? (Мне любопытно просто, если честно).

Выглядит отлично, поздравляю от всей души! Для первого проекта — вообще волшебно.

Пара советов:

  1. Топорный поиск через ILIKE на таком объёме данных будет мгновенным, поэтому я бы сначала делал в лоб, и если результатов вернулось достаточно (опечаток нет) — отдавал сразу, а иначе — уже пускался во все тяжкие с GIN

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

И еще «один синьёр с потенциально опасной точкой зрения».

Конечно, у matches! есть нюанс, он не позволяет захватывать значения из паттерна. То есть matches!(opt, Some(x)) скажет нам «да/нет», но не даст саму x. Если нужен x,то всё равно придётся использовать if let Some(x) = opt, или match.

Просто никогда, ни при каких обстоятельствах, не нужно делать два прохода (filtercount) когда можно обойтись одним (fold).

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

объект должен быть готов к использованию сразу после завершения конструктора

А если инициализация занимает час?

Там все 98% из-за эйджизма.

Год назад — около 10 минут. Сегодня — почти пять часов. Этот показатель удваивается примерно каждые семь месяцев.

На какой планете у нас год состоит из примерно сорока месяцев?

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

  2. Ну потому я и не написал «рефлексия», а написал «что-то типа рефлексии»; речь же про JEP, а не про наколеночную библиотеку, что мешает отрефлексировать всё компилятором-то? Например, развернуть в тот 25-строчный бойлерплейт, с которого всё началось. Я аспекты не случайно упомянул, там похожий принцип, всё в compile-time разворачивается.

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

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

Ну и да, просто любопытно: а в чем именно изменил мир сам Джобс?

Я очень давно не работал с джавой (со времен появления AspectJ, в который я даже коммитил что-то :), но у меня возникли два вопроса:

  • Почему Lens и Traversal — это разные сущности?

  • Почему нельзя использовать что-то типа рефлекшена и писать Lens.update(department, new Path("manager", "address", "street"), String::toUpperCase)?

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

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

Дык это же практически «хорошо заколоченный шуруп держится гораздо крепче плохо завинченного гвоздя».

Какой стек в результате выбрали?

Анна Каренина не даст соврать.

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

Information

Rating
Does not participate
Registered
Activity

Specialization

Бэкенд разработчик, Архитектор программного обеспечения
Ведущий
From 120,000 €
Elixir
Ruby
Высоконагруженные системы
Проектирование архитектуры приложений
Разработка программного обеспечения
Linux
RabbitMQ