schmonz.com is a Fediverse instance that uses the ActivityPub protocol. In other words, users at this host can communicate with people that use software like Mastodon, Pleroma, Friendica, etc. all around the world.
This server runs the snac software and there is no automatic sign-up process.
Just a random evening thought I wanted to share.
One specific peculiarity of the software engineering discipline is the slow realization that "clever" code is sometimes a liability. I divided my rationalization in three stages.
Stage 1: You want to use every design pattern, abstraction and fancy trending framework you read about on Hacker News.
Stage 2: You realize you're the one who has to debug that mess at 3am six months from now.
Stage 3: You start optimizing for a fictional person. That person is a junior who hasn't had their first coffee yet and you want readability of code more than anything lol
Which is why I never quite believed in LOC as an impressive metric. For me, a good PR is as much about reducing 500 lines of legacy technical debt while keeping the system stable as it is about adding a new shiny feature. Anyone else feel this way?
#softwareengineering #cleancode #refactoring #programming #system #askfedi #legacy #software #technology
Just a random evening thought I wanted to share.
One specific peculiarity of the software engineering discipline is the slow realization that "clever" code is sometimes a liability. I divided my rationalization in three stages.
Stage 1: You want to use every design pattern, abstraction and fancy trending framework you read about on Hacker News.
Stage 2: You realize you're the one who has to debug that mess at 3am six months from now.
Stage 3: You start optimizing for a fictional person. That person is a junior who hasn't had their first coffee yet and you want readability of code more than anything lol
Which is why I never quite believed in LOC as an impressive metric. For me, a good PR is as much about reducing 500 lines of legacy technical debt while keeping the system stable as it is about adding a new shiny feature. Anyone else feel this way?
#softwareengineering #cleancode #refactoring #programming #system #askfedi #c #python #golang #kotlin #javascript #webdev #legacy #php #ruby #software #technology
What are control flags and why haven't you ditched them yet?
Read more here:
https://www.devleader.ca/2023/11/19/remove-control-flag-refactoring-how-to-simplify-logic/
Habr » 🤖 🌐
@habr@zhub.link
[Перевод] Гексагональная архитектура в Rust: отвязываем бизнес-логику от Solana
Представьте: вы строите сервис выдачи дипломов на Solana. Всё отлично, пока дело не доходит до тестов. Внезапно оказывается, что для проверки бизнес-логики нужно поднимать валидатор, искать тестовые токены и молиться на стабильность сети. Знакомая боль? В этой статье я покажу, как мы решили проблему, используя async-trait и dyn Trait. Мы превратили интеграционные тесты длиной в минуты в юнит-тесты, которые проходят за миллисекунды. Узнать решение
https://habr.com/ru/articles/983874/
#rust #solana #гексагональная_архитектура #блокчейн #unittesting #dependency_injection #axum #web3 #mocking #refactoring
Habr » 🤖 🌐
@habr@zhub.link
Январский рефакторинг: 7 дней, чтобы почистить Python веб‑проект
Январь - самое удобное время разобрать завалы в проекте. Пол‑команды ещё в отпусках, pull‑реквестов меньше, product owner'ы только вспоминают, что планировали делать в этом году - можно спокойно пройтись по коду и навести порядок. В этой статье пойдёт речь о нескольких косметических действиях, которые, с одной стороны, почти не затрагивают логику программы и не вызывают ненависти у тестировщиков, а с другой - делают код чуть приятнее и дают темы для обсуждения на бэкенд‑созвонах. Мы разложим импорты, перенесём логику из роутов в контроллеры, а из контроллеров - в репозитории и сервисы, избавимся от requirements.txt в пользу нормального менеджера зависимостей и включим mypy.
https://habr.com/ru/articles/983172/
#python #backend #refactoring #architecture #linter #mypy #litestar
"Extract Method" is one mof the most foundational refactoring techniques for us to use.
Read more here:
https://www.devleader.ca/2024/03/06/extract-method-refactoring-technique-in-c-what-you-need-to-know/
Refactoring – Not on the Backlog (2014)
https://ronjeffries.com/xprog/articles/refactoring-not-on-the-backlog/
#HackerNews #Refactoring #Backlog #SoftwareDevelopment #CodeQuality #AgileMethods
Refactoring code is a critical software engineering skill -- Can you do it?
Read more here:
https://www.devleader.ca/2024/02/29/refactoring-c-code-4-essential-techniques-simplified/
Leanpub book LAUNCH 🚀 The Other Half of Coding: What they Didn't Teach You by Max Guernsey, III
Watch here: https://youtu.be/lDwuiSwaCf4
#books #leanpublishing #selfpublishing #booklaunch #management #coding #programming #OOP #TDD #softwareengineering #refactoring
Leanpub book LAUNCH 🚀 The Other Half of Coding: What they Didn't Teach You by Max Guernsey, III
Watch here: https://youtu.be/lDwuiSwaCf4
#books #leanpublishing #selfpublishing #booklaunch #management #coding #programming #OOP #TDD #softwareengineering #refactoring
Habr » 🤖 🌐
@habr@zhub.link
MDUI: как отдать UI backend-разработчикам
Как сократить Time-to-Market в 7 раз и научить бэкенд-разработчиков собирать страницы за 15 минут? В этой статье я делюсь опытом внедрения Meta-Driven UI в ERP-системе. Расскажу, как я «душила» легаси с помощью Strangler Fig Pattern, внедрила FSD-архитектуру на Vue 3 и почему Render-функции оказались эффективнее обычных шаблонов.
https://habr.com/ru/articles/980684/
#vuejs #frontendразработка #MDUI #fsd #erpсистемы #refactoring
Our lovely countryside venue: https://www.miltonoxfordshire.co.uk
Tickets are first-come, first-served, so book yours before we sell out!
We organise this conference in the open, and you're very welcome to chat with the organisers to help, ask questions, give feedback, or simply to watch. You can reach us on the #ev_socratesuk slack channel (https://slack.softwarecrafters.org/), on mastodon, LinkedIn, BlueSky, or by commenting on this post.
Our lovely countryside venue: https://www.miltonoxfordshire.co.uk
Tickets are first-come, first-served, so book yours before we sell out!
We organise this conference in the open, and you're very welcome to chat with the organisers to help, ask questions, give feedback, or simply to watch. You can reach us on the #ev_socratesuk slack channel (https://slack.softwarecrafters.org/), on mastodon, LinkedIn, BlueSky, or by commenting on this post.
Leanpub Book LAUNCH 🚀 The Other Half of Coding: What they Didn't Teach You by Max Guernsey, III
Read & watch on the Leanpub Blog here:
#books #leanpublishing #selfpublishing #booklaunch #management #coding #programming #OOP #TDD #softwareengineering #refactoring
Leanpub book LAUNCH 🚀 The Other Half of Coding: What they Didn't Teach You by Max Guernsey, III
Watch here: https://youtu.be/lDwuiSwaCf4
#books #leanpublishing #selfpublishing #booklaunch #management #coding #programming #OOP #TDD #softwareengineering #refactoring
That’s your clue: refactor first.
(Special case of the general KFB wisdom “First make the change easy, then make the easy change.”)
Habr » 🤖 🌐
@habr@zhub.link
Технический долг в голове: Почему сеньоры выгорают на задачах для джунов, а пет-проекты умирают в бэклоге
В прошлой статье я рассказывал, как настроил личный iptables и перешел в режим Default Deny , чтобы отбиться от внешних DDoS-атак (коллег, пустых встреч и спама). Периметр я защитил, входящий трафик почистил. Uptime вырос. Казалось бы — живи и радуйся. Но я заметил странную вещь: снаружи тихо, а сервер все равно греется. Я заглянул внутрь контейнера и понял: проблема не во входящих пакетах. Проблема в архитектуре самого приложения . Парадокс: я могу спроектировать архитектуру, которая выдержит падение дата-центра. Я могу дебажить race condition в многопоточном приложении. Но когда мне нужно позвонить в страховую или выбрать отель для отпуска, я впадаю в ступор. Мой личный бэклог забит задачами типа «разобраться с налогами» и «начать бегать», которые висят там с 2019 года. Я переношу их из спринта в спринт, испытывая фоновое чувство вины. В какой-то момент я понял: это не лень. И это не «отсутствие мотивации». Это классический Technical Debt (Технический долг) , только не в репозитории, а в нейросети. И проценты по этому долгу я плачу самым дорогим ресурсом — своей когнитивной емкостью.
https://habr.com/ru/articles/973796/
#Технический_долг #Refactoring #Legacy_code #Прокрастинация #Саморазвитие #Таймменеджмент #Mental_Health #выгорание #личная_эффективность #психология_программирования
J'ai apprécié cet article de @jbrains. Quand on simplifie du code, paradoxalement il y a un risque de le rendre moins familier (ce n'est plus comme avant, ce n'est plus comme on a toujours fait). Ça peut être une raison d'accepter de ne pas simplifier. Mais si on ne prend jamais ce risque, on passe à côté d'opportunités de simplifications. Compromis... Je trouve intéressant d'avoir ça en tête collectivement.
=> https://blog.jbrains.ca/permalink/a-central-conflict-in-readable-code