The Real Approach to Curating Web Development Tricks Yearly
A lot of people treat "Web Development Tricks" as a list of random tips scraped from forums. It's not. The Yearly version is a curated, battle-tested set of techniques that actually move the needle for shipping real projects. Here's how I approach it and what I've actually found useful after running this system for several years. The core idea is simple: each year, I maintain a personal running list of techniques, patterns, and shortcuts that have solved real problems in production. I don't write everything down—I only keep what survived contact with actual users and real deployment pipelines. The filter is brutal. Most tricks die within six months when you try them under pressure.
Web Development Tricks Yearly: How to Build Your Own List
Start by picking a single tracking file. I use a markdown document stored alongside my projects with three sections: proven techniques, maybe-later ideas, and definitely-not-this-time failures. The "maybe" pile is where most lists die. I clean it out quarterly. Only techniques that have been used on at least two separate projects make it into the final list. When I find something worth keeping, I write it down immediately with the context. Not just "use CSS Grid here" but the exact problem it solved, the browser support requirements, the gotchas, and a minimal code example. I spent three hours debugging a Flexbox alignment issue on an iPad a few years ago because I didn't write down that Safari had a bug with nested flex containers and `align-items: stretch` at the time. I should have documented that. I did after. The yearly review process takes about two to three hours. I go through every technique on the list and ask: does this still work in the current landscape? Has anything replaced it? Is the overhead still worth it? I cut roughly 30 to 40 percent of the list each year. That's normal. It means the list is actually being filtered by reality rather than stored as a graveyard of good intentions.
Here's a technique that made my current list and stayed there after two reviews: using `@layer` in CSS for specificity management. I picked it up about two years ago when I was working on a project that pulled in three different component libraries, and the cascade was completely unmanageable. `@layer` solved that in about ten minutes. But it wasn't until I used it on a second project that I knew it was worth keeping. The first project could have been a fluke. The second confirmed it.
Get the Full Details

What Most People Miss About This Process
The biggest mistake I see is treating trick lists as comprehensive references. They're not. A good yearly list should be small enough to review in an afternoon and specific enough to apply immediately. If yours is longer than twenty entries, it's probably full of things you read about but never actually used. Cut it down. Another common error is recording the solution without recording the problem. "Use React.memo" is not a useful entry. "React.memo prevented a re-render on a 200-item list that was bottlenecking the render cycle" is useful. The problem context tells you when to reach for the trick again. Without it, you'll either overuse it or forget why it existed in the first place. I also keep a separate section for emerging patterns I'm watching. These aren't on the main list yet, but I'm tracking them because they solve problems I hit regularly. Edge functions, for example, were in my "watching" section for about a year before they made it onto the main list. That's a reasonable timeline. Some things never graduate. That's fine.
There's a practical edge case that's worth mentioning here. Last year I was working on a project that needed to load a large dataset on the client side—roughly 50,000 rows—and the initial render was taking six seconds on a mid-range phone. I tried virtual scrolling, which is the standard answer. It brought it down to about two seconds, which is better but still unacceptable for our use case. The workaround I ended up using was a combination of Web Workers for the sorting and filtering operations plus a simplified DOM structure that only rendered visible rows. The worker approach cut the main thread blocking time significantly, and the simplified DOM reduced garbage collection pressure. It took about a day to implement properly, but the trade-off was worth it. I didn't write this down initially because it felt too project-specific. I was wrong. Three months later, a similar problem came up on another project and I already had the pattern documented. That's exactly what this system is for.
Practical Implementation Details
For tracking, I use a plain text file with YAML frontmatter. Each entry has a date, the technique name, the problem it solves, browser compatibility notes, and a link to the original source or proof of concept. The format looks like this in practice: date: 2024-03-15 This takes about three minutes to fill out per entry. The time investment is small enough that you'll actually do it consistently. Most people skip the documentation part because it feels like homework. Don't skip it. Your future self will be grateful when you're debugging a CSS issue at 11 PM and remember why you chose a particular approach.
technique: CSS @layer for cascade management
problem: Specificity wars from multiple component libraries
compatibility: All modern browsers, not IE
source: MDN documentation plus personal testing
notes: Works well with PostCSS nesting plugin

For the yearly review, I set aside a Saturday morning with no other obligations. I go through each entry, test it if needed, and decide to keep, update, or delete. I've found that the delete step is the hardest but also the most valuable. Deleting a technique means you're being honest about whether it actually helped. Keeping something because it sounds clever isn't the same thing. One thing I don't recommend is trying to share your list publicly early on. A public list creates pressure to make it look impressive rather than useful. Your first two or three years of lists should be completely private. The value comes from using them, not showing them off. A private list that saves you five hours a month is worth far more than a public list that gets stars on GitHub but nobody actually uses.
Limits and What This Doesn't Solve
A yearly trick list is not a substitute for learning fundamentals. If you don't understand how the browser render pipeline works, no amount of CSS tricks will fix a performance problem that's caused by layout thrashing. The list is a tool for experienced developers who already know the basics and want to optimize their workflow. It won't help you understand why something is broken in the first place. It also doesn't scale well if you work across very different technology stacks. A developer who does React on one project and WordPress on another will end up with a fragmented list that's hard to navigate. In that case, maintaining separate lists per stack is more practical, even if it means managing multiple documents. The biggest limitation is time. If you're billing hours or have a demanding day job, spending two hours a year on a trick list might not feel worth it. That's a fair assessment. The return on investment is highest for developers who ship multiple projects per year and want to avoid repeating the same mistakes. If you're mostly maintaining existing codebases, the benefit is smaller.
I've also seen people get stuck in analysis paralysis—constantly adding new tricks but never deploying them. The list grows to forty or fifty entries and then becomes unusable because nothing matches the actual problem in front of you. The cutoff of twenty entries on the main list exists for this reason. A shorter list forces you to be selective, and selectivity is what makes the list useful. If you do decide to build your own yearly list, start small. Pick three techniques from your recent work and document them properly. See how that feels. If it takes less than an hour and you find yourself referencing those entries within a week, you'll know the system is working for you. From there, you can expand the scope and eventually commit to the yearly review cadence. Most people quit before they get to the second year because they never experienced the payoff of actually using their own documented work. Make sure you're past that point before you judge whether this approach is worth it.
