Year of revision. Year of contrast.
2020 reminds me of The Dress: some see it black & blue, others see it white & gold.
For me, it was a year of home, family, outside. Year of closer friends and fewer acquaintances. Year of obvious answers we disagree about. Year of “be patient” and “I’ve waited long enough.” Year of privilege, inequality, and “Oh yeah, that happened too.”
I only have one goal for 2021: make people smile.
Happy New Year.
Jump to: Personal, Books, Music, Code
Personal
I forget where I read it, but I think of looking “back” now more like looking forward: you can see the past, you can’t see the future. It’s like we have our face to the past and our back to the future; we walk forward into the past and backward into the future.
That’s not much of an introduction, just where my heads at tonight.
From Plan to Pandemic
In January we were planning for a full year. I traveled to Texas, came back, and all was normal, bustling activity. February we started game nights at the house again—then a tornado wrecked the neighborhood (literally). Meanwhile the news trickled in…
On March 12th Red Ventures sent everyone home early. Two days later we got a message:
“Effective immediately, all Red Ventures employees will be working remotely until further notice.”
You know the rest, you lived it too.
Readjusting
My family had it easy. We had options, we could adjust—we could afford to quarantine. We turned the craft room into my office, finished kindergarten over Zoom, came up with a new house schedule. We picked up new hobbies, grew mustaches, rode bikes. We decorated the house for quiet birthdays and looked forward to summer.
My brother’s wedding was in May. That was a special time… We drove to Florida to be with family, then hung out with long-unseen friends.
Settling In
In June COVID picked up again. At work, it started to show. We had to be there for each other, to act more like a small community than just coworkers. I’m lucky to have such a supportive team at RV. (Thank you all, you’re the best.)
So we doubled down on home life. We reorganized & remodeled. Brianne worked on her garden. Ruby got her own room. I moved into the music room, got a new chair, and started reading more. Game nights went virtual.
Accepting the New Normal
Virtual school started in August, Jackson in 1st grade and Ruby tagging along (since her preschool closed). Brianne took on more roles (mom, teacher, and playmate), juggling hats with the day’s demands. And everyone had to learn together, all at once—teachers, parents, and students—how to make the system work. (Thank you, moms and teachers, for your tremendous strength and patience. Y’all are champions.)
School over Zoom obviously isn’t perfect, but we’ve come a long, long way from where we started—and it’s what we have right now. (Biggest improvement: breakout sessions for the kids to meet each other, just talk, and make friends.)
Meanwhile, I dug in at work to find my bearings. Without a commute, I could spend the morning with the kids, make breakfast, see everyone at lunch, help out during breaks, and be done and ready to play again by 5:30pm. Having my own room has been huge (and noise-cancelling headphones): I can focus alone and finish my work in time for everything else—and I’ve finished so much more this year. It’s wild.
The focus and freedom I have at home has made me more productive than I ever was in the office. And while it sucks not seeing people in person, taking time to schedule 1-on-1s with everyone has made a huge difference. I’ll keep doing that, and looking for more ways to stay connected and personal.
Do I miss the office? I miss seeing people in person, for sure—having chance encounters and long catch-ups. But being home, watching my family grow, that’s where my heart is right now. That’s my new normal.
Holidays, Elections, and New Horizons
Moving into fall, I finally got a new profile picture (after 5 years). I also put out some open source projects, dug into Core Web Vitals, reported some browser bugs, and gave a bunch of workshops at RV.
Then we had this holy-war of a presidential election… Few topics are as divisive and soul-sucking. I’m still scratching my head over “what happens next?” We have a new president-elect, sure, but we’re still us. We still have all this pent up tension with nowhere to go. What do we do with that? Whatever it is, can we do it together?
If I learned anything in 2020, it’s that you can still end a Facebook debate with “Love you too!”—and mean it.
As winter came, Brianne found a cabin for us and our close friends to get away for a week—just us, away from the rest of the world. That was the most calm I felt all year; refreshed. Coming back, I felt like giving. This idea—everybody needs a break, everybody needs a laugh—started to creep up on me, and that became my holiday theme: play.
Christmas was small, remote. We mailed gifts, dropped off cookies, stayed with family, and FaceTimed friends. We watched the Jim Carrey Grinch movie (twice) and I gave silly gifts: kale candy canes, screaming goats, goofy t-shirts, pickle cotton candy.
It felt like what we needed, a reminder that the world is still good. Despite all the bad we’ve seen, there’s still good—there’s hope.
On New Year’s Eve my sister-in-law and her husband welcomed their newborn baby boy into the world. That’s what 2021 should be about: bringing life into the world. Life, healing, and hope.
What’s Next?
I watched my kids grow up this year: losing teeth, getting fillings, writing letters (“momy I am sore for not lisnin”), taking videos of themselves, playing with power tools…
I learned that, as much as I want to be a writer, I’m much more of a talker and a doer—I like conversations and workshops. (Maybe in 2021 I’ll find a way to shift more of that to stuff I can share with the rest of you here, online.)
Overall, I’m happy with 2020.
In 2021, I’m going to follow my interests, play more, and write when I feel like it—but above all else, make people smile. 🤓
Below you’ll see all the books I read this year, the music I listened to, and some code I fiddled with.
Books
Here are all the books I read this year, in the order I finished them.
-
Domain-Driven Design by Eric Evans
How to distill real world business needs into useful software.
Thanks to the lessons from this book, my day job’s code base was supple enough to bend to the new requirements of a COVID world… It’s a long, demanding read, but well worth it for developers serious about their craft.
- Beware the Master Plan
- “When we set out to write software, we never know enough… Crucial discoveries always emerge during the design/implementation effort. Very specific, unanticipated problems always arise… You just have to accept the opportunity when it arises, change your strategy, and refactor.”
- “Don’t attempt to be comprehensive. Just address the most serious concerns and leave the rest to be handled on a case-by-case basis.”
- “Progress comes from lots of learning about the domain, lots of talking, and lots of trial and error.”
- Modeling Out Loud
- “Play with the model as you talk about the system… Find easier ways to say what you need to say, and then take those new ideas back down to the diagrams and code.”
- Intention-Revealing Interfaces
- “Speak in terms of intentions, rather than means… Describe events and actions, but not how they are carried out… Pose the question, but don’t present the means by which the answer shall be found out.”
- “When a function is presented through an intention-revealing interface, a developer can use it without understanding the detail of its implementation.”
- Obvious, Predictable, and Expressive
- “The design… allowed us to [produce] code that begins to read like a conceptual definition of the business transaction, rather than a calculation.”
- Before: “George’s team’s stuff is changing, so we’re going to have to change our stuff that talks to it.”
After: “The Transport Network model is changing, so we’re going to have to change the translator for the Booking context.”
- Refactoring Toward Deeper Insight
- “This ease of extension did not come because she anticipated the change. Nor did it come because she made a design so versatile it could accommodate any conceivable change. It happened because in the previous refactoring, the design was aligned with underlying concepts of the domain.”
- “Don’t become paralyzed trying to bring about a breakthrough. The possibility usually comes after many modest refactorings. Most of the time is spent making piecemeal improvements, with model insights emerging gradually during each successive refinement.”
P.S. Chapter 8, “Breakthrough,” is by far my favorite chapter.
- Beware the Master Plan
-
One by Richard Bach
“Wrong turns are as important as right turns. More important, sometimes.”
I read this book because I found this quote and I wanted to know more about it. Turned out the book is a delightful sci-fi: a couple keeps finding different versions of themselves in parallel universes, trying to teach or save them, only to find, well… you can read it too if you’re curious enough.
-
Tao Te Ching by Lao Tzu
Beautiful translation, simple. I’ve read a few versions now and this is the best one I’ve found. (Reads like The Message version of the Bible, if you’re familiar.)
Chapter 8:
“The supreme good is like water, which nourishes all things without trying to. It is content with the low places that people disdain. Thus it is like the Tao. In dwelling, live close to the ground. In thinking, keep to the simple. In conflict, be fair and generous. In governing, don’t try to control. In work, do what you enjoy. In family life, be completely present. When you are content to be simply yourself and don’t compare or compete, everybody will respect you.”
Chapter 11:
“We join spokes together in a wheel, but it is the center hole that makes the wagon move. We shape clay into a pot, but it is the emptiness inside that holds whatever we want. We hammer wood for a house, but it is the inner space that makes it livable. We work with being, but non-being is what we use.”
Other highlights:
- “The more you know, the less you understand.,”
- “In the pursuit of knowledge, every day something is added. In the practice of the Tao, every day something is dropped.”
- “A good traveler has no fixed plans and is not intent upon arriving. A good artist lets his intuition lead him wherever it wants. A good scientist has freed himself of concepts and keeps his mind open to what is.”
- “When you have names and forms, know that they are provisional. When you have institutions, know where their functions should end. Knowing when to stop, you can avoid any danger.”
- “Can you love people and lead them without imposing your will?”
- “… creating without possessing, acting without expecting, guiding without interfering.”
- “The Master doesn’t talk, he acts. When his work is done, the people say, ‘Amazing: we did it, all by ourselves!’”
- “Do your work, then step back. The only path to serenity.”
-
Maxims and Reflections by Johann Wolfgang von Goethe
Thoughts from the great 19th century author. Lots to chew on.
- “Tell me with whom you associate, and I will tell you who you are.”
- “An intelligent man finds almost everything ridiculous, a wise man hardly anything.”
- “The significance of the most harmless words and actions grows with the years.”
- “An old man loses one of the greatest of human privileges: he is no more judged by his peers.”
- “Love of truth shows itself in this, that a man knows how to find and value the good in everything.”
- “The most foolish of all errors is for clever young men to believe that they forfeit their originality in recognising a truth which has already been recognised by others.”
- “The discerning man who acknowledges his limitations is not far off perfection.”
-
Talking to Strangers by Malcolm Gladwell
Powerful, painful, but hopeful still. How we default to truth, mismatch demeanor and character, misunderstand context and more…
“The death of Sandra Bland is what happens when a society does not know how to talk to strangers.”
- Puzzle One: “Why can’t we tell when the stranger in front of us is lying to our face?
- Puzzle Two: “How is it that meeting a stranger can sometimes make us worse at making sense of that person than not meeting them?”
“Our strategies for dealing with strangers are deeply flawed, but they are also socially necessary.”
“What is required of us is restraint and humility… There are clues to making sense of a stranger. But attending to them requires care and attention.”
-
Victory: 100 Great Military Commanders by Nigel Cawthorne
Short snippets of military commanders through history, some worth looking into more. A very dry read, but a useful starting point.
- Belisarius: Time and again, winning with less. “With just 8,000 men, Belisarius held Rome against a force of over 50,000 Goths.”
- Gustavus II of Sweden: “At the Battle of Lützen… Gustavus was cut down. But his army was so well trained that they did not retreat or surrender at the news of the death of their leader. They rallied and attacked, earning Gustavus one final, posthumous victory.”
- Lord Horatio Nelson: One-eyed, one-armed badass. “[They] charged on to the San Josef using the San Nicolas as a stepping stone. Nelson took both ships, and this move was aftewards called ‘Nelson’s Patent Bridge for boarding first rates.’”
- James Wolfe: “Mad, is he? Then I hope he will bite some of my other generals.” —George II
- Erwin Rommel: The Desert Fox. Respected by his enemies. “With 42 Panzers and 2,500 men, he took 100,000 prisoners and destroyed 450 tanks.” Implicated in a plot to assassinate Hitler. Died with honor.
-
The Secret Lives of Color by Kassia St. Clair
Fascinating look into the wild world of colors. Incredible things we take for granted.
- Orange: “The black boxes on aircraft, which record flight information, are, in fact, orange, in the hope this will make them easier to find in the event of a crash.”
- Pink: “Just a few scant generations ago the situation was completely different. In an article on baby clothes in the New York Times in 1893 the rule stated was that you should ‘always give pink to a boy and blue to a girl.’”
- Ivory: “Western wedding dresses were generally colorful until Queen Victoria wore ivory satin trimmed with British lace in 1840.”
- Nude: “Since 2012 Angélica has been working on a ‘chromatic inventory’ of human skin tone. The ongoing Humanæ project is now composed of over 2,500 portraits of different people from around the world.”
- Mummy: “Bitumen—and by extension mummies—had been used as a medicine from the first century A.D. Ground-up mummy, or ‘mummia,’ was applied topically or mixed into drinks to swallow, and it seemed there was almost nothing it could not cure.”
- Sepia: “Although now squid ink is most often found lending seafood risotto the glossy black luster of a raven’s wing, sepia (the ink of the cuttlefish) has long been used as a pigment for writers and artists.”
- Taupe: “[Taupe] is actually a French word, meaning ‘mole.’ However, while the color of a mole was, by broad consensus, ‘a deep gray on the cold side,’ taupe was all over the place—the only thing consistently agreed upon was that it was generally browner than a mole had a right to be.”
- Tyrian Purple: “Getting the color to adhere and permeate cloth involved a long and foul-smelling process. The liquid harvested from the shellfish glands was placed in a vat of stale urine (for the ammonia) and allowed to ferment for 10 days before the cloth was added.”
- Cochineal: “Beetles are still being harvested today to produce the cochineal used by the cosmetics and food industries. It is found in everything from M&M’s to sausages, red velvet cupcakes to Cherry Coke (to soothe the squeamish it is usually hidden under the far more innocuous label E120).”
-
Genius by James Gleick
Biography of Richard Feynman. From childhood radio tinkering, to quantum physics, to the atomic bomb, to the Challenger disaster. Enlightening, inspiring, intensely human.
Two of my favorite stories:
Names Don’t Constitute Knowledge:
“You can know the name of that bird in all the languages of the world, but when you’re finished, you’ll know absolutely nothing whatever about the bird. You’ll only know about humans in different places and what they call the bird. So let’s look at the bird and see what it’s doing—that’s what counts.”
The Mystery of the Lawn Sprinkler:
Physicists at Princeton debated over a thought experiment. What would happen if you took a rotating lawn sprinkler, placed it under water, and made it suck water in instead of spewing it out? Would it spin in the same direction? Or would it spin in reverse?
Feynman got sick of talking and made a prototype. He bent a piece of tubing, ran a rubber hose through it, and stuck it in a glass water bottle. When he hooked it up to an air valve and turned it on, nothing happened. The inverse sprinkler stood still. He increased the pressure until the bottle exploded (and got him banished from the lab).
Answer: “It does not turn at all… In the normal version, water sprays forth in organized jets… But in the inverse case, when water is sucked in, there are no jets. The water is not organized. It enters the nozzle from all directions and therefore applies no force at all.”
Other highlights:
- “I can live with doubt and uncertainty and not knowing. I think it’s much more interesting to live not knowing than to have answers which might be wrong.”
- “No tricks or fancy calculations would suffice, Feynman said. The only way to solve the problem would be to guess the outline, the shape, the quality of the answer.”
- “Learn by trying to understand simple things in terms of other ideas—always honestly and directly. What keeps the clouds up, why can’t I see stars in the daytime, why do colors appear on oily water, what makes the lines on the surface of water being poured from a pitcher, why does a hanging lamp swing back and forth—and all the innumerable little things you see all around you. Then when you have learned what an explanation really is, you can then go on to more subtle questions.”
P.S. Try crushing wintergreen Life Savers in the dark (see Life Saver Lightning and Triboluminescence for details).
-
Fooled by Randomness by Nassim Nicholas Taleb
Reshaping how I think about the world. Learning how to spot luck and asymmetry.
“Luck is democratic and hits everyone regardless of original skills.”
“Rare events explain more and more of the world we live in, but at the same time remain as counterintuitive to us as they were to our ancestors.”
“A population entirely composed of bad managers will produce a small amount of great track records… [This] depends far more on the number of people who started in the investment business… rather than on their ability to produce profits. It also depends on the volatility.”
- The Skewness Issue: “It does not matter how frequently something succeeds if failure is too costly to bear.”
- The Affect Heuristic: “What emotions are elicited by events determine their probability in your mind.”
- Survivorship Bias: “Those who have failed do not show up in the sample, thus making him look as if he were not doing well at all.”
- Attribution Bias: “You attribute your successes to skills, but your failures to randomness.”
- Randomness Does Not Look Random: “A random series of runs need not exhibit a pattern to look random; as a matter of fact, data that is perfectly patternless would be extremely suspicious and appear to be man-made… Real randomness does not look random!”
- The Scaling Property of Randomness: “Success may be high at larger scales, but looks painfully average (or worse) at smaller scales… The closer he observes his performance, the more pain he will experience owing to the greater variability at a higher resolution.”
- Asymmetric Odds: “Asymmetric odds means that probabilities are not 50% for each event, but that the probability on one side is higher than the probability on the other. Asymmetric outcomes mean that the payoffs are not equal.”
- Gambling With the Wrong Dice: “It is far more important to figure out what dice we are using when gambling than to develop sophisticated computations of outcomes and run the risk of having, say, dice with nothing but 6s.”
See also: the Birthday Paradox, Data Snooping, and Superstitious Pigeons.
-
The Black Swan by Nassim Nicholas Taleb
Learning to be “convex to uncertainty”: benefitting from randomness more than being hurt by it.
Randomness comes in different kinds, some you can predict and others you can’t. Black Swans are unpredictable events with extreme consequences that seem explainable after the fact.
This book picks up where Fooled by Randomness left off to build a framework for dealing with wild randomness and inequality in our modern world.
“It is much easier to deal with the Black Swan problem if we focus on robustness to errors rather than improving predictions.”
- The Turkey Problem: “Consider a turkey that is fed every day. Every single feeding will firm up the bird’s belief that it is the general rule of life to be fed every day by friendly members of the human race… On the afternoon of the Wednesday before Thanksgiving, something unexpected will happen to the turkey. It will incur a revision of belief.”
- Gambling vs Reality: “In the casino you know the rules, you can calculate the odds, and the type of uncertainty we encounter there, we will see later, is mild, belonging to Mediocristan… In real life you do not know the odds; you need to discover them, and the sources of uncertainty are not defined.”
- Barbell Strategy: “Instead of having medium risk, you have high risk on one side and no risk on the other. The average will be medium risk but constitutes a positive exposure to the Black Swan.”
- Being a Fool in the Right Places: “Do not try to avoid predicting—yes, after this diatribe about prediction I am not urging you to stop being a fool. Just be a fool in the right places.”
“The idea is simply to let human mistakes and miscalculations remain confined, and to prevent their spreading through the system, as Mother Nature does.”
The Ten Principles for a Black-Swan-Robust Society:
- What is fragile should break early, while it’s still small.
- No socialization of losses and privatization of gains.
- People who were driving a school bus blindfolded (and crashed it) should never be given a new bus.
- Don’t let someone making an “incentive” bonus manage a nuclear plant—or your financial risks.
- Compensate complexity with simplicity.
- Do not give children dynamite sticks, even if they come with a warning label.
- Only Ponzi schemes should depend on confidence. Governments should never need to “restore confidence.”
- Do not give an addict more drugs if he has withdrawal pains.
- Citizens should not depend on financial assets as a repository of value and should not rely on fallible “expert” advice for their retirement.
- Make an omelet with the broken eggs.
-
The Bed of Procrustes by Nassim Nicholas Taleb
Short, insightful, brain-splitting thoughts to chew on (slowly).
In Greek mythology, Procrustes invited people to stay at his estate, then fit them “perfectly” into a bed by cutting or stretching their limbs. Procrustrean beds are situations where we oversimplify.
“We humans, facing limits of knowledge… resolve the tension by squeezing life and the world into crisp commoditized ideas, reductive categories, specific vocabularies, and prepackaged narratives, which, on the occasion, has explosive consequences.”
- “In nature we never repeat the same motion; in captivity (office, gym, commute, sports), life is just repetitive-stress injury. No randomness.”
- “Most mistakes get worse when you try to correct them.”
- “Religion isn’t so much about telling man that there is one God as about preventing man from thinking that he is God.”
- “Most feed their obsessions by trying to get rid of them.”
- “My only measure of success is how much time you have to kill.”
- “Most modern efficiencies are deferred punishment.”
- “Knowledge is reached (mostly) by removing junk from people’s heads.”
- “Studying neurobiology to understand humans is like studying ink to understand literature.”
- “Someone from your social class who becomes poor affects you more than thousands of starving ones outside of it.”
- “To understand how something works, figure out how to break it.”
- “General principle: the solutions (on balance) need to be simpler than the problems.”
- “Failure-resistant is achievable; failure-free is not.”
- “The only valid political system is one that can handle an imbecile in power without suffering from it.”
- “In the medical and social domains, treatment should never be equivalent to silencing symptoms.”
- “The weak shows his strength and hides his weaknesses; the magnificent exhibits his weaknesses like ornaments.”
- “Magnificence is defined by the intersection of reluctant praise by your enemies and criticism by your friends, greatness by their union.”
- “Wisdom isn’t about understanding things (and people); it is knowing what they can do to you.”
- “They think that intelligence is about noticing things that are relevant (detecting patterns); in a complex world, intelligence consists in ignoring things that are irrelevant (avoiding false patterns).”
-
Antifragile by Nassim Nicholas Taleb
Fragile things break, robust things endure. But what things improve with error, disorder, and randomness? Now we have a word for it: antifragile.
“Antifragility is beyond resilience or robustness. The resilient resists shocks and stays the same; the antifragile gets better.”
This simple concept explains so much, and reorients how I think about pretty much everything. There’s so much to share, but here are my two biggest takeaways:
- Fragility > Risk: “It is far easier to figure out if something is fragile than to predict the occurrence of an event that may harm it. Fragility can be measured; risk is not measurable… The idea is to focus on fragility rather than predicting and calculating future probabilities.”
- Helpful Disorder: “Depriving systems of stressors, vital stressors, is not necessarily a good thing, and can be downright harmful… We have been fragilizing the economy, our health, political life, education, almost everything… by suppressing randomness and volatility.”
“We can almost always detect antifragility (and fragility) using a simple test of asymmetry: anything that has more upside than downside from random events (or certain shocks) is antifragile; the reverse is fragile.”
Other highlights:
- “‘Not being a turkey’ starts with figuring out the difference between true and manufactured stability.”
- “We tend to over-intervene in areas with minimal benefits (and large risks) while under-intervening in areas in which intervention is necessary, like emergencies.”
- “What should we control? As a rule, intervening to limit size… concentration, and speed are beneficial in reducing Black Swan risks.”
- “After the occurrence of an event, we need to switch the blame from the inability to see an event coming… to the failure to understand (anti)fragility, namely, ‘why did we build something so fragile to these types of events?’ Not seeing a tsunami or an economic event coming is excusable; building something fragile to them is not.”
- “It means letting children play a little bit, not much more than a little bit, with fire and learn from injuries, for the sake of their own future safety. It also means letting people experience some, not too much, stress, to wake them up a bit. But, at the same time, they need to be protected from high danger—ignore small dangers, invest your energy in protecting them from consequential harm. And only consequential harm.”
- “You don’t have to be right that often. All you need is the wisdom to not do unintelligent things to hurt yourself (some acts of omission) and recognize favorable outcomes when they occur.”
Glossary:
- Naive Interventionism: “Intervention with disregard to iatrogenics. The preference, even obligation, to ‘do something’ over doing nothing. While this instinct can be beneficial in emergency rooms or ancestral environments, it hurts in others in which there is an ‘expert problem.’”
- Expert Problem: “Expert problems (in which the expert knows a lot but less than he thinks he does) often bring fragilities, and acceptance of ignorance the reverse.”
- Green Lumber Fallacy: “Mistaking the source of important or even necessary knowledge—the greenness of lumber—for another, less visible from the outside, less tractable one. How theoreticians impute wrong weights to what one should know in a certain business or, more generally, how many things we call ‘relevant knowledge’ aren’t so much so.”
- Agency Problem: “Situation in which the manager of a business is not the true owner, so he follows a strategy that cosmetically seems to be sound, but in a hidden way benefits him and makes him antifragile at the expense (fragility) of the true owners or society.”
- Principle of Subsidiarity: “Things should be handled by the smallest possible unit that can manage them with efficacy.”
- Rational Optionality: “Not being locked into a given program, so one can change his mind as he goes along based on discovery or new information.”
Music
Here’s a list of the albums I listened to most this year, in the order I first listened to them.
-
Scream Through the Walls by As Cities Burn
They’re back. Post-hardcore.
-
Lover by Noah Gundersen
Beautiful, sweet, somber.
-
99.9% by KAYTRANADA
Beats for days. On loop.
-
The Weather Below by Sister Sparrow
Bluesy, feel-good rock. Make’m dance.
-
Gold by Sister Sparrow
Bigger than before. New sounds.
-
Hill Climber by Vulfpeck
Gateway drug to The Beautiful Game, Mr Finish Line, and The Joy of Music…
-
As You Please by Citizen
Mood rock.
-
Tearing At The Seams by Nathaniel Rateliff & The Night Sweats
Open air, love-the-music, rock for the whole family.
-
Low – EP by TRACE
Electronic art. (Follow with Low & other singles.)
-
Verses by Lastlings
Ethereal, driving. On loop.
-
Control by Pedro the Lion
Piercing, heart-breaking indie rock.
-
Playback by Power Glove
Arcade electronic jams.
-
Random Access Memories by Daft Punk
Kings of electronic. Disco masterpiece.
-
The ArchAndroid by Janelle Monáe
Perfection.
-
Riot! by Paramore
Pop punk at its finest.
-
Love is Ain’t Dead by ’68
Dirty noise. Bam.
-
Futures by Jimmy Eat World
Emo glory days.
Code
To close, here’s a collection of code stuff I did this year.
Tools
Workshops
Browser Bugs
- First Contentful Paint ignores opacity: 0 in some situations
- Cumulative Layout Shift ignores opacity: 0 (fixed in Chrome 89)
- Firefox Bug: CSS Scroll Snap “Jump” During JS Smooth Scroll
- Safari Reader Mode Rejects
<code>
Elements (work in progress)
Experiments
- 🏗 CreditCards.com’s Grid v6 (Modern) vs Grid v7 (IE Support)
- 🦸♂️ CSS-Only Fix for Full Height Heroes
- 🖥 Fullscreen Scroll Snap
- 🤔 Doing React Without React
- 🤔 Weird
border-radius
Examples
- CSS Custom Properties
- How SVG colors inherit from their parent
- How
display: contents
can mimic the behavior of a CSS subgrid - How to set style
!important
with JavaScript - Basic IntersectionObserver
- Basic File Upload
- Testing Automatic Browser aspect-ratio
- Full list of HTML5 text-level elements
Today I Learned
- 🌓 Dark & Light Mode Logo
- 🔥 How not to use percentages for height in a flex container
- 💡 Manual Form Validation
- 🎠 Simple React Carousel (also with
fetch()
) - ⚡️ Optimizing SVGs with
<pattern>
- 💡 Viewport Width Behavior in Flex vs Block Containers