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.
Stop writing confusing functions. For instance, use named parameters in TypeScript for clean, maintainable code. Learn more 👇
https://dev.to/pierre/named-arguments-function-typescript-4n4d
Unifying Our Mobile and Desktop Domains, by @krinkle (@wikimediafoundation):
https://techblog.wikimedia.org/2025/11/21/unifying-mobile-and-desktop-domains/
#refactoring #mobile #desktop #performance #seo #ux #casestudies #linklists
Đối mặt với code legacy? Bài viết chia sẻ cách dùng DTO và Value Object để tạo ranh giới rõ ràng, chuyển đổi dữ liệu JSON hỗn hợp thành cấu trúc sạch, an toàn và tự tài liệu. Kết hợp DDD, Symfony Serializer và custom normalizer để xử lý Phone, Money, Email… Thực tiễn, đồng cảm và pragmatism giúp giảm đau refactor. #refactoring #legacy #DTO #ValueObject #PHP #DDD #software #dev #code #pragmatic #lập_trình #công_nghệ
https://dev.to/clegginabox/refactoring-legacy-part-1-dtos-value-objects-2i30
🎉 Kết thúc series JavaScript Clean Code Part 7: Refactor giỏ hàng thực tế, thiết lập ESLint, Prettier, Husky pre‑commit và tests. Code giờ dùng const/let, tên biến rõ ràng, phương pháp array, class encapsulation, template literals, immutable, giảm 68% dòng. Áp dụng ngay để giảm lỗi, tăng tốc phát triển! #JavaScript #CleanCode #Refactoring #ESLint #Prettier #Testing #LậpTrình #MãSạch
Thay đổi cách viết điều kiện để code rõ ràng và dễ bảo trì hơn: dùng guard clauses, trả về sớm, tránh lồng if sâu. Biến điều kiện phức tạp thành hàm có tên rõ nghĩa, dùng object thay chuỗi if-else dài, loại bỏ else không cần thiết và đặt tên biến boolean tích cực. Code phẳng, dễ đọc, dễ test và ít bug hơn. #CleanCode #JavaScript #CodeStructure #RefactoringCode #LậpTrình #CodeSạch #Refactoring #LogicRõRàng
https://dev.to/sizan_mahmud0_e7c3fd0cb68/javascript-clean-code-mastery-part-6-code-structu
How to Successfully Migrate Your App With an AI Agent, by @blackgirlbytes (@opensource.block.xyz):
https://block.github.io/goose/blog/2025/11/17/migrate-app-with-ai-agent/
Thay thế việc nối chuỗi phức tạp bằng text block để cải thiện tính đọc code và dễ bảo trì. Sử dụng """ để tạo chuỗi đa dòng, loại bỏ escape sequence, giữ nguyên định dạng SQL/JSON. Hỗ trợ tốt trong Java, Kotlin, Python, JS và nhiều ngôn ngữ khác. #refactoring #codequality #textblock #javatips #lậptrình #tốimã #refactoring #cleancode
https://dev.to/mcsee/refactoring-036-replace-string-concatenations-with-text-blocks-3nop
Refactoring Needs Empathy (h/t Andrea Goulet), but it also needs Skills.
At #DevNexus in March, I'll be showing my favorite techniques for #Refactoring in #Java using IntelliJ IDEA. Even if you're an experienced coder, I'll bet you'll still learn a few new things to try out...
Rector - The Power of Automated Refactoring by Matthias Noback and Tomas Votruba is on sale on Leanpub! Its suggested price is $29.00; get it for $26.10 with this coupon: https://leanpub.com/sh/IeE3xeVg matthiasnoback@mastodon.social #Refactoring #Php
Mỗi chủ nhật, tôi dành thời gian “tái cấu trúc” những dòng code cũ — dần dần loại bỏ rác, chuẩn hóa tên, tách hàm, đơn giản logic, cập nhật phụ thuộc. Kết quả sau vài tháng: ứng dụng chạy mượt hơn, bảo trì nhanh hơn và ít lỗi. Tạo thói quen nhỏ đều đặn để giảm nợ kỹ thuật, không cần sprint “cứu hỏa”. #refactoring #clean_code #webdev #css #javascript #python #laptrinh #frontend #backend #cntt
How Senior Engineers Can Use AI for Real Impact, by (not on Mastodon or Bluesky):
Writing condition-heavy logic in #Java? This article shows how RecordPatterns turn messy type-checks into expressive, deconstructed switches—ideal for rethinking class hierarchies & responsibilities.
@manojnp breaks it down: https://javapro.io/2025/01/15/record-patterns-building-on-java-records/
Refactoring a Form to a Signal Form, by @timdeschryver.dev:
https://timdeschryver.dev/blog/refactoring-a-form-to-a-signal-form
Chúng ta dành nhiều thời gian đọc code hơn viết code, nhưng lại ít được dạy cách đọc hiệu quả. Bài viết chia sẻ 3 kỹ thuật quan trọng: nhận biết code cần refactor (nếu phải đọc 2 lần), thấu hiểu khi xem code của người khác và coi đọc code là cách tốt nhất để nâng cao kỹ năng lập trình. Đọc code giúp bạn giỏi hơn!
#CodeReading #CodingTips #SoftwareDevelopment #Programming #Refactoring #KỹNăngLậpTrình #ĐọcCode #PhátTriểnPhầnMềm #LậpTrình
Một lập trình viên chia sẻ hành trình refactor code và cách xử lý tình huống "oh shit" với Git Rebase! Từ tách logic config sang module riêng, gom message help/version vào utils, thay số ảo bằng constexpr, đến việc dùng rebase -i để gộp commit lộn xộn thành một commit sạch đẹp. Bài học: luôn tạo branch khi refactor và kiểm tra kỹ trước khi merge! 💻 #Refactoring #GitRebase #CleanCode #LapTrinhVien #CodeSach
https://dev.to/elsad_humbetli_0971c995ce/refactoring-code-git-rebase-2kpm
New #Java #refactoring video: I'm not completely happy with some names, so I change them to "honest & complete" - That makes them much longer and more verbose, but at least they say what the objects do now...
PeerTube: https://videos.devteams.at/w/n8TDBBWWPJxKaySi7yArxC
YouTube: https://youtu.be/i0ULT8iE9Xk
Some more #Java #refactoring: First, I simplify some unit tests, then I add a common interface for some objects that are all stages of a process. Feedback welcome!
Video on PeerTube: https://videos.devteams.at/w/orkDdvXUez84cdLysUAgfk
Or if you prefer YouTube: https://youtu.be/s6E1dSFHGxs
Integrating CSS Cascade Layers to an Existing Project, by @smashingmag:
https://www.smashingmagazine.com/2025/09/integrating-css-cascade-layers-existing-project/
Câu chuyện refactor ứng dụng Java của PVS-Studio: Từ code rối rắm với static methods, Singletons, đến tích hợp DI bằng Guice, làm sạch style theo Google Java Style, và xây dựng module annotation mới hỗ trợ taint analysis & JSON user-defined. Kiến trúc modular, dễ mở rộng hơn!
#Java #Refactoring #DependencyInjection #Guice #LậpTrìnhJava #CảiTiếnCode #PhânTíchTĩnh
https://dev.to/pvsdev/how-we-integrate-best-practices-in-java-3ja3
After almost a week of refactoring and experimenting with several different approaches, I've updated my Zig nD SIMD vector library to be compatible with the latest Zig 0.15.1, and at the same time cleaned up some internals.
The solution I settled on is a mix of techniques proposed by others, and was needed due to the removal of the struct/namespace-merging syntax in the new Zig version, which this library heavily relies on. I don't like that the new source code is now more than 2x larger and involves a huge amount of duplication to address the many special cases of supported operations for different vector sizes and types. I might still take another pass to eliminate those (by using `@compileError()` for unsupported cases), but that'd be an implementation detail downstream users don't have to care about. I tried AOT code generation as well, but the special case handling made this feel less maintainable...
UPDATE: The only breaking change is the handling of vector swizzles. I had to remove the hundreds of named swizzle functions and replaced them with a single (comptime optimized) `.swizzle(vec, pattern)`, e.g. `.swizzle(vec, "xxyy")`...
If you're interested, the new code is here:
https://github.com/thi-ng/zig-thing/blob/main/src/vectors.zig
The readme contains details about the many supported operations:
https://github.com/thi-ng/zig-thing/blob/main/doc/vectors.md
Installation instructions in the main repo readme:
https://github.com/thi-ng/zig-thing/tree/main