Code review antipatterns
Understanding Algorithm Complexity Through 7 Simple Examples of Choosing a Book to Read
When we talk about computers and programming, we often encounter algorithms. Algorithms are like instructions that help computers perform…
Practices of Reliable Software Design
The side effect of being open to new way of writing software
It is ok to experiment. Usually good codebases need standards and rules to speed up collaboration and more in general to facilitate expansion. Some of those are enforced at the language or community level via formatter, linters. Others got introduced step by step from previous contributors.
Design Patterns
Design Patterns are typical solutions to commonly occurring problems in software design. They are blueprints that you can customize to solve a particular design problem in your code.
Graph Theory and its Applications: What Can Graphs Do for Your Software?
Essential concepts and practical applications
Plain Vanilla
An explainer for doing web development using only vanilla techniques.
How Airbnb Smoothly Upgrades React
Incrementally modernizing our frontend infrastructure to roll out the latest React features without downgrades
Systems Thinking
Thinking in systems is a trait of the greatest minds. Now, you can gain a new perspective, noticing and understanding the systems around you.
WebP: The WebPage compression format
I want to provide a smooth experience to my site visitors, so I work on accessibility and ensure it works without JavaScript enabled. I care about page load time because some pages contain large illustrations, so I minify my HTML. But one thing makes turning my blog light as a feather a pain in the ass.
You Don’t Know Ruby (Anymore!)
Caution: If you are a senior Ruby developer, this article may hurt your feelings.
Configuring: Progressive Web Applications (PWA)
Learn how to build a Progressive Web Application (PWA) with Next.js.
The web's clipboard, and how it stores data of different types
Exploring the web's clipboard APIs, their limitations, and their history.
We need visual programming. No, not like that.
Why do we keep building visual programming environments? Why do we never use them? What should we do instead?
Regexes Got Good: The History And Future Of Regular Expressions In JavaScript — Smashing Magazine
Although JavaScript regexes used to be underpowered compared to other modern flavors, numerous improvements in recent years mean that’s no longer true. Steven Levithan evaluates the history and present state of regular expressions in JavaScript with tips to make your regexes more readable, maintainable, and resilient.
Decoding a video with WebCodecs and @remotion/media-parser | Remotion | Make videos programmatically
parseMedia() is able to extract tracks and samples from audio and video in a format that is suitable for usage with WebCodecs APIs.
Ruby on Rails Guides
Using React Context in Combination With Server Components
Server Components
The Differences Between "export default xx" and "export {xx as default}"
A comprehensive guide to understanding the differences between export default and named exports in JavaScript
Flowcharts Syntax | Mermaid
Create diagrams and visualizations using text and code.
Exploring different ways to pass a function into a method in Ruby — doryfish — Bloggie
Hello~ today I will to share a post about different ways of passing functions in Ruby. There are many ways to pass code around in Ruby, so today I’m going to make a comparison between the 4 different ways. In this post, I will show the syntax of ...
Advanced Terminal Tips and Tricks
When I was first starting out in software engineering, it felt like there was a never-ending barrage of tooling to learn. After more than a decade in CLI environments, I still find myself constantly learning new features and fun facts - but it’s fairly rare that I learn something new that I end up using day-to-day. I wanted to share some things I learned at relatively late stages in the game that ended up being significant productivity boosters for me - perhaps some of them are well-known, but in the spirit of this XCKD, I hope that someone reading this might pick up something new.
Time, the Silent Exploit: The Unseen Enemy in Every Codebase
Provably Correct, Secure, and Leakage-Free Systems: From Application Specification to Circuit-Level Implementation — Thesis Defense
K2 is a new verification approach and framework that enables developers to build hardware security modules (HSMs) with high assurance through formal verification.
You Don't Know Undo/Redo
Look at the gif below. It shows a proof-of-concept implementation of collaborative undo-redo,...
The Silent Crisis in Open Source: When Maintainers Walk Away
Maintainer transitions can create a lot of challenges. That's why open source support through proactive measures like knowledge transfer and community engagement is so important.
New JavaScript Set methods | MDN Blog
New JavaScript Set methods are landing across browsers. Learn about sets, how you can use these methods to compare different sets, create new sets with specific properties, and more.
bliki: Value Object
Value objects are compared using only the values of their properties, having no conceptual identity
Modelling quantities - an exercise in designing value objects
Closing remarks
Primitive Obsession
Discover Primitive Obsession in code: recognize symptoms, understand implications, and learn effective fixes with value objects.