Лаборатория Математики и Программирования Сергея Бобровского – Telegram
Лаборатория Математики и Программирования Сергея Бобровского
1.29K subscribers
1.19K photos
24 videos
931 links
ЛаМПовое с Бобровским
Download Telegram
Лучший стек 2024:

-- фреймворк: .NET
-- бэкенд: F#
-- асинхронщина: F#
-- фоновые/плановые задачи: F#
-- кэширование: F#
-- СУБД: PostrgeSQL
-- хостинг: где угодно (бессерверные контейнеры)
-- фронтенд (на самом деле SSR :) => HTML + Tailwind, и немного добавляем HTMX;
-- мобильные клиенты: просто берём веб-UI.
1🤔57👍2092💯1
До какой степени повышать уровень абстракций в своём коде?

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

Чем "выше" абстракции, тем меньше они про структуру программы (как, например, паттерны проектирования), и тем больше про бизнес-логику.

В конечном итоге, максимальный уровень абстракций выразится в полноценном DSL для вашей предметной области (тысячекратная компактность кода через метапрограммирование и DSL по Алану Кэю).

В прикладном плане, проще всего это сегодня делать на F#. Вы можете нагуглить реально полезные статьи "как делать DSL на F#" аж 10-летней давности! А из свежего, в F# 5 после реализации в этом году FS-1056, появились overloads of custom keywords in computation expressions -- ровно для продуктивного создания DSL.
3498👍7
Не люблю ругаться на конкретные ит-компании, всегда вхожу в положение, в ситуацию, время трудное. Права вообще никогда не качаю, с техподдержкой всегда общаюсь доброжелательно, и в целом стараюсь относиться позитивно. Но иногда степень пробивания дна превосходит все мыслимые пределы 🙈

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

Но блин от нас зависит максимум 2%. Лет 15 я хостился на Зеноне, изредка бывали проблемы с доступом, но критического никогда ничего не случалось, поэтому даже мыслей не было уйти от них. И вот 19 марта их купил Русоникс -- и началось вот это всё отстойное. Я думал, на переезде всё закончится, ага. Похоже это только начало.

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

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

Ещё одна подобная засада, и переезжаю нафиг на другого провайдера (из единичных оставшихся). Как хорошо было раньше, когда множество интернет-провайдеров, множество хостинг-провайдеров, реальная конкуренция и борьба за качество. А сейчас единообразное дно.

UPD. не работало 8-11, сейчас вроде пофиксили.

UPD2. Говорят, сегодня была эпическая атака кулхацкеров на много чего, возможно зацепило. Ну я уже много лет регулярно делаю сэйвы на несколько флешек, и всем рекомендую.
442👍16🤯8🫡8🤔7
Вдогонку: отрубился кабельный интернет. Я и роутер перегружал, и провода передёргивал, и драйверы переустановил, и сетевую плату посмотрел (хоть пыль сдул:) -- вроде всё норм. Решил, ну блин сдохла плата (если не материнка...). Перешёл на запасной вайфай соседского другого провайдера через репитер (беру только тп-линки). А оказалось, винда тайно поставила свежее обновление KB5044273, которое, пока с ним не перегрузишь, намертво отрубает езернет!
Ну сам виноват, давно надо было сервис windows update прибить.

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

РКН, забань наконец весь микрософт.
4😁66🔥9👍83
Гуру учат вас, как "правильно" писать код, но сермяга в том, что если ваш проект работает достаточно надёжно, достаточно быстро, и приносит деньги, никто не сможет вам ничего сказать.
351👍22🔥4🤯31
Существует тонкая грань между программированием и просто сидением за компьютером, как идиот.
142😁31👍62🔥2
В Шанхае заработала клиника для тех, у кого проблемы с математикой. Китайские учёные отмечают, что проблемы с математикой часто коррелируют с пониженной активностью теменной доли мозга (что нередко бывает при шизофрении). Лечить таких людей будут комплексным подходом (в том числе с помощью психиатров и специальных препаратов), все места быстро разобрали.

Я сторонник альтернативного подхода: надо больше принуждать заниматься всяческими рациональными/формальными темками.
4🤯39👍21😁13🔥64
Если кто-то топит с любыми аргументами, что удалёнка -- это плохо, это ваш враг 💯
4💯70👍18🔥83🤯2
Кодирование раньше: копирование и вставка.

Кодирование сейчас: промпт и вставка.

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


-- Гради Буч, октябрь'24
44718👍8🔥81
Существует прямая зависимость (по мнению ваших начальников) между тем, насколько громко работает ваша клавиатура, и тем, насколько хорошо вы умеете кодировать. Без шуток.
Неплохо также научиться 10-пальцевому методу (на русском), и когда мимо проходит начальник, очень быстро и громко фигачить код комментарии в коде. Реально работает, проверяйте. Боссы вас будут считать одним из наиболее продуктивных программистов.

P.S. Спрашивают, а какие это? Ну прежде всего механические конечно, Cherry MX или Kailh, можно также задавать звук нажатия для мультимедийных клавиатур, и по-моему даже, для обычных (скриптом AutoHotKey например)
4😁66🔥1473🤯3
Вообще-то Нобель завещал "математикам премию не давать" 😬

Впрочем, математики физиков троллили давным-давно. Про возможную оптимизацию алгебры Клини для регэкспов я недавно рассказывал 🤘
3👍42🤔13🔥53
В книге Стивена Клини "Математическая логика" (эквивалентность регулярных выражений и конечных автоматов и т.п.) упоминаются физические понятия в чисто математическом контексте ↑↑↑
2720🤔17👍5
Если вы не хотите использовать не просто функциональный, а function first язык (из чего его функциональность проистекает естественно), при этом прагматичный, с огромной экосистемой, с сообществом дружелюбных помощников, ощутимо меняющий программистское мышление в лучшую сторону...

ни в коем случае не берите F# !!1
541😁29👍10👌3💯2
Пятница: отдыхаем и расслабляемся.
😁68🤝5👍3😎3🔥1
Доказательное мнение (вдогонку): на удалёнке люди работают продуктивнее.
Покажите это своему менеджеру (ссылку, а не мем :).
😁6110🤔4👍1🔥1
— срочно! можешь оформить это тикетом в джире??
🤯40😁288👍2🐳2
Разработка программного обеспечения -- это тонкий баланс между глубоким пониманием принципов работы сложных систем и быстрым выполнением задач.

Проблема в том, что тут антагонистическое противоречие: эти вещи в 98% проектов противоречат друг другу.

Вот например на днях на гитхабе появились исходники игры Rogue Legacy, в которую двое пацанов вложили полтора года работы и 15 тысяч долларов. Сам код, ужасающий в своей кривости )))

Однако расходы парни отбили уже в первый час продаж, а всего заработали на этой игре более 11 миллионов долларов.
👍55🤔18🔥101