Decades ago, an old friend told me "I became a coffee expert, I learned everything there is to learn about beans, the ways to prepare them, the chemistry that goes into it, and now I can only enjoy a cup of coffee prepared by the most expensive machines from the most expensive beans. The shit part is that I enjoy it just as much as I enjoyed my shitty supermarket coffee back when I didn't know anything about coffee."
That advice has stuck with me, and I try to have the least taste I can. I use $20 headphones and a $200 TV because I can't tell what "good" is, and I enjoy music and movies as much as my friends with $600 headphones and $3k TVs do.
I'll offer a counter-anecdote and suggest this advice isn't necessarily ironclad. I've used the same pair of $20 headphones for decades (replacing them with the same model when they die), or else laptop/TV speakers. A couple of years ago I got $200 headphones included with a new phone purchase. The $200 headphones were amazing. I got to listen to all of my favorite music with a new perspective. But I still use the $20 ones on a daily basis because the $200 ones hurt my ears with prolonged usage. The $20 ones are fine. The nice ones didn't diminish my enjoyment of them at all. And every now and then I break out the $200 ones for a treat.
Just don't become a snob. I think people tie their identity to the expensive junk they purchase and develop a sense of ego around it, of being better than the peasants, and that's why they become unable to enjoy the "lesser" experience.
What I love about learning a topic thoroughly is that I can then pick apart the "expert wisdom" into what actually matters. That usually results in me getting better but very pragmatic results.
Coffee is a great example, I worked through the whole stack, tried everything I had access to until eventually I weeded out what matters most to me.
Good beans, good milk, and just enough prep. I tried no prep, all the prep, and then just enough prep. Good beans not perfect beans. Good milk but whatever is available.
I do the same with everything, cars, bicycles, sim racing equipment, computers, software etc.
I never enjoyed shitty coffee. I never enjoyed shitty chocolate or chocolate flavored things like cakes.
Until I was 30-something I thought I just didn't like coffee or chocolate.
Then one day I had actually proper coffee, and I discovered that good coffee isn't just some imperceptably theoretically better version of regular coffee that snobs are basically just faking being sophisticated for show. They are two entirely different things.
Same even more so for chocolate. 99% of chocolate products you come into contact with are garbage. Actual chocolate is like an entirely different product. It's not a better version of the usual thing. I ate it and thought "Oh. Ok THIS must be why chocolate ever became this huge thing in the first place. Hundreds of years ago before all the industrial process and market forces produced all the "chocolate" I ever tasted in my life, what they had was this, actual chocolate. Of course they loved it."
To restate the point, I was never happy with the regular version in the first place. I assumed "I don't like coffee" or chocolate, the same way I don't like cigarettes. Turns out I love them both.
And it's possible to continue to enjoy the results of having discovered and grown some taste in some area indefinitely without diminishing returns or anything like that. I'm not much of a sweets person so I still don't buy a lot of chocolate or chocolate things like cookies etc, but we have a Trade subscription and get a new and different bag from some random indipendant roaster every 2 or 3 weeks and it's great. I don't love every single bag but I at least find them all interesting and I do love the overall high level of quality basically all the time. I'm not now overall poorer for having discovered good coffee. Life is better. And what else is there?
I only ask because specifically for chocolate and coffee, I would consider the US baseline to be exceedingly average, even terrible. Even "okay" chocolate and coffee from other countries better known for food will blow it out of the water.
The US does do excellent coffee, and excellent chocolate, but you have to seek it out. In a country like Italy or Australia the default, okay stuff is better. If an Australian couldn't tell the difference between good and great coffee I'd see why.
> Then one day I had actually proper coffee, and I discovered that good coffee isn't just some imperceptably theoretically better version of regular coffee that snobs are basically just faking being sophisticated for show. They are two entirely different things.
I know what you mean, but it's important to be mindful of the fact that enjoying coffee is way more than the quality of the coffee in the cup. I think for most there's a whole ritual around having a coffee which renders the actual coffee a minor detail around everything. You can see this even in coffee brewing snobs, where they use extremely specialized tools and equipment to perform a coffee brewing cerimonies that rival religious ones. Sometimes the coffee itself is just the pretext, but the goal is different.
No, I've tried cigarettes, which is all I needed for that sentence, something I don't like.
I guess it's a natural question given the rest, and expensive cigars might indeed be different than cheap cigarrettes, but it's irrelevant, since the point was not that no matter what you don't like you might still like the good version.
The point was only that discovering the good version of something did not leave me worse than before because I used to enjoy something abundant and now I can only enjoy something scarce.
It's a bit like Feynman on flowers too. You don't have to be ignorant of the biological workings of a flower to appreciate it's mere outward properties exactly the same way as the layperson does. I still love a box mac & cheese even though I thoroughly appreciate far better home or chef made mac & cheese.
Yeah, that's a horrible way to enjoy life. By your reasoning, you should subsist on protein blocks and watch paint dry for entertainment. By lowering the bar to the absolute lowest threshold, you'll classify everything as enjoyable.
The pareto principle holds strong. Just put 20% of the effort in and you reap 80% of the results.
I think that's mostly true above a certain threshold, but where that threshold lies, is probably different for different people.
The <1$ earphones you get on an airplane sound terrible. I can understand what the actors in movies are saying but that's about it. I can't hear or experience the music.
The $20 headphones my kids have are a good step up. For me headphones/speakers in the $100 range make me _feel_ more when listening to music. But I don't need to go more expensive. That's where my threshold is for music.
I recently tried to play a bit of tennis, which I've already stopped. My friend was appalled when I proudly announced that my tennis racket costed $15. "But we are in tech!" he cried. But for a couple of games, I know I won't be able to tell the difference between a $15 one and a $150 one (I know because I've played tennis in the past).
And true to my predictions, I no longer play tennis and I'm only $15 poorer. I don't know the name for this, but the fact that I avoided wasting $150 and only "wasted" $15 into something I knew might be temporary also feels very satisfying.
Absolutely the right choice. I do triathlons and your comment makes me think of all the people who turn up, do an Ironman and leave the sport after. Or people who sign up for a marathon, do it, then never run again.
Meanwhile there are shorter events you can do on much less training and cheaper equipment to see if you’ll like it before investing in the extreme end of the sport. If you run a 10k and hate every step, you’ve saved yourself a lot of time, pain and money.
This is how I have it with my guitar. It's a simple Ibanez Gio from a starter kit, probably coming in at 150 Euros - 200 Euros or so, with another 40 Euros spent on a guitar tech to set it up properly.
I'll replace it once I know how it is holding me back. At least that's the plan I've had for the last 4-5 years. But it has low action, fairly low-noise pickups, holds tuning. So no need so far.
I just look around in the most expensive street in my city for posts online or offline of people selling rackets that have maybe 2 hours of use on them. Then you can usually get 150$+ rackets for $15 as these folks threat $150 as I threat $15. Some of them are just given away to charity shops etc.
I think you have to “aestheticize” the cheap stuff in a way that doesn’t add value purely on price. In other words, you aren’t just picking the absolute best quality of a thing, you’re picking it for some specific aesthetic reason that puts it above the more expensive one.
To put that into more concrete terms: I really like dark roast black coffee. There’s something about the bitterness and presentation that reminds me of coffee’s history, the variety of people drinking it, etc. and thus it is more appealing to me than the “high quality” light roasts with subtle flavors available in the expensive cafes.
Another example are diners. If you become such a gourmand that you only eat at Michelin restaurants and disparage anywhere “normal”, I think you miss out on the real culture and quality of diner food, which is a unique phenomenon.
I think it's possible to get a careful dark roast, but often "dark roast" coffee mainly tastes like burned toast. It's still warm and caffeinated, but it's not really that enjoyable. There's a reason so many people make this kind of coffee very watered down or drown it in cream and sugar. Maybe it feels historically connected to cowboys brewing coffee in a sock over a campfire or whatever, but is that connection really so valuable?
I just prefer the taste and it reminds me more of Turkish coffee, which is my favorite way of preparation. And also black coffee reminds me of various cultural things like diners, detective fiction, etc. Like this quote from Phoenix Wright, the game:
“Blacker than a moonless night. Hotter and more bitter than hell itself… that is coffee.”
Lighter roast coffee just isn’t a thing I generally enjoy, to me it feels like a different drink, an over-complicated consumer product, not the kind of thing one would write quotes like the one above about.
A bit like grilling vs. sous vide with meat. Grilling has a whole culture to it, whereas sous vide feels soulless and overly technical, even if it produces great flavors.
At some point I think there's almost an inverse relationship with how much time you spend researching a product and how much you enjoy it. I fell in to this hole with gaming monitors. At the top end, no product has it all, no product is without flaws. So then you start getting frustrated that you can't find one that has the right HDMI version, freesync, 240hz, 4k, USB-C with decent power delivery, etc. And what you buy is something quite expensive but every flaw frustraights you.
While if you just ignore most of that and buy something mid tier, you feel quite happy because it works pretty well and you didn't spend too much on it. The moment you start scrolling the subreddit for the product you've gone too far and need to disengage.
I definitely suffer from this "do enough research until I find flaws that I then can't un-see".
When my older kid wanted a gaming monitor, he suggested a specific model because it was on sale and he could afford it. I took that opportunity to do some research solo that night, find a few alternatives, research each deeply and then suggest that we "look together at 2 or 3 different models", compare the features, and talked through whether it really mattered if one was $100 more than the other given the likely useful lifespan of a monitor.
He ended up with a monitor that he's really happy with, we got some time together bonding over a shared interest, and he doesn't have to know all the flaws I saw in it. (It's also barely mid-tier, which is congruent with your advice.)
Yeah for sure do enough research to avoid something awful, but as soon as you get to the reddit comments that are like "Nah don't buy that it's junk, buy this one" and "this one" is twice the price, it's probably best to ignore. And certainly best to avoid doing any more research or reading forums/reddit after the purchase is made.
Ah, but it can give you such fun projects. Go, hunt down your headphones’ frequency response, cancel it out in PulseEffects (if that’s what it is called this release…), then adjust to the Harman Curve…
This is the way I am with hiking and biking. I genuinely enjoy them, but I have a tendency to really get into the weeds with things I'm interested in and ruining the fun.
I purposely just go for hikes for the sake of it, and refuse to give in and buy anything other than a generic bike, even though a part of me really wants __ hardware. If I buy it, that will be the point of no return for becoming a bike nerd and I'll start caring about stuff I don't want to care about.
Now computers, I've learned a million ways to hate them, and learn new ways to hate them every day. Not with bikes, though :)
I do the same, although my reasoning probably slightly differs. I hate the idea that I'll mangle a pastime as "primitive" as hiking or biking into some technology optimization problem. People did this stuff way back with perfectly simple gear and were entirely happy enough.
Sure, I could probably be a bit faster or go on a bit longer if I had better gear. But I could also achieve that by just getting into a better shape. With this level of commitment the gear is not the limiting factor. If I can't go faster with this bike, then I don't deserve to go faster with a fancier one, god dammit.
My work is very complicated and technical, so I get some satisfaction from keeping my hobbies ascetic.
Lucky you! You didn’t fall into that trap and just enjoy the best experience you could get without overoptimizing for it. I fell into the musical instruments trap for a bit but luckily I got out of it and play with what I have.
I messed up in that domain when it comes to music software, it's tweaks all the way down, amazing that it works at all. I make do with cheap MIDI controllers, but spend hours cracking VSTs I already bought so I can run them in Linux.
Typing this out makes me realize its not even about the music anymore, but the tweaks. Let this be a warning
I am in the 20$ dollars headphones and 200$ TV bucket too. But for different reasons.
The point of the video/movie/song etc. is the content not the fidelity, there is a level of fidelity that allows 99 per cent of the enjoyment of the content. That level of fidelity typically costs 20$ for headphones and 200$ for tvs.
1080p and mp3s are good enough. The point is to see what's happening on the screen and to hear without noise.
> That advice has stuck with me, and I try to have the least taste I can. I use $20 headphones and a $200 TV because I can't tell what "good" is, and I enjoy music and movies as much as my friends with $600 headphones and $3k TVs do.
Thank you for sharing this observation. It resonated with me in a surprising way. Finding something that's "good enough" is such a blessing.
I'm with you with the TV - HD is usually enough, but audio needs to be at least reasonable. $20 headphones is too cheap, even from a longevity perspective.
If noise at all bothers you, decent ANC is a game-changer and worth spending more. I never tried it until I picked up a next cheap pair with it, and it's even better with a good pair.
For coffee, I get beans from a local roaster, like $14 per pound nowadays. I like the taste and it is nice to support someone local. Then I put it through a ~$200 Flair espresso machine. It is a manual press, so it has become a fun project/ritual. Plus, Americano is or espresso tastes better than coffee (and IMO mine is better than the coffee shop… a lot cheaper at this point I guess, too).
If your friend keeps mastering coffee he'll learn to appreciate what Folgers or Starbucks is doing again. He'll also learn to suggest the coffee that will make someone happiest, or help them the most, in a wider variety of situations. It's nice to retain youthful oblivious in some categories, though. We can't learn everything anyway. It's often enough just to know how to avoid expensive mistakes.
Not to criticize your friend, but it isn't as if things following his path is sn inevitable law of nature.
Coincidentally I went from being an Audio consumer to a person that developes audio hard- and software, and mixes music in my spare time and deals with live sound in acoustically challenging rooms in my work (to keep things short, I do/did even more).
While I certainly spent some money on audio equipment, I can't say that you need infinitly expensive stuff to enjoy it. For me it went exactly the opposite way. Where as a teenager I thought you need all that expensive stuff to make and listen to music on a high level, I now know what matters and what doesn't.
There is a point beyond which things don't matter factually, because they are beyond the limits of human perception. Audiophiles then trick themselves into hearing the atoms that make up the wire, when every measurement doesn't show anything.
One of my mics I prefer most on floor drums is a modified Pyle Karaoke mic I got from Amazon for 30 bucks and added a cheap transformer into. My headphones are maybe 200 bucks (and half of that was paid for reliability, not for sound quality). I got a second pair for closer to 1200 bicks, but thst is just for retouche work where I need to hear the faintest background noises, I actually prefer the sound of the cheaper ones.
I am still amazed by most recordings I was amazed by when I started on my journey. In fact more so now.
We don't need to inevitably turn everything into a stage to show off our own mental superiority. Especially in the audiophile realm these people claim to hear things that they wouldn't be able to pick out reliably in a properly conducted double-randomized blind test. And everything else is basically worthless since you then just measure a persons ability to fool themselves.
Recently my assistant who just started out in the field came for advice. She wanted to spend some money on a mic and audio interface. And I recommended her one for a quarter of the price she planned on spending since it basically had the same measurements and better software support. As for mics I told her to test my mics with that interface and she should use that test to figure out what she wants. Originally she wanted to spend good money on getting an expensive studio mic, in the test my old dynamic Sennheiser MD21 that I got from ebay won. She got the same for cheap from there as well.
Don't get me wrong, I will be the first to hear bad acoustics, missaligned speakers, a dying loudspeaker suspension, a overdriven amplification system, a missed buffer deadline, a bad mix, a bad recording, phase issues, etc. It is my job to notice. But that doesn't mean I can't enjoy the music running over such a system as much as I did before I knew all that. In fact I might even enjoy it more.
I too have this fear sometimes, and for example never want to learn anything about wine, but it's not always the case.
A friend and I have bonded over appreciating the "shit" things, like white bread toast and hotel coffee and I think that's quite a good habit to instill. I love coffee and will hunt out the best spots in any city for a single-origin V60 on ice, but I am equally content in a diner when the only option is literally just "coffee".
Also studying art & practicing photography has made the world a much more beautiful place. Some of my best pictures have been taken in places that are usually considered unphotogenic.
To quote Reggie Watts:
Listen, invest two hundred dollars in a pair of good headphones
Take care of ′em, put 'em in your ears, listen to the music
Listen to how it′s supposed to be recorded
You're missing, I swear to God, forty to fifty percent
Of the music that's in there in the first place
So if you wanna go back and listen to
The shit that you thought you liked
You might even like it more, motherf*er
This did inspire me to get better headphones and I have no regrets! I think some parts of the aversion to getting too fancy come from the reasonable ideas of: not wanting to lower your floor, avoiding the hedonic treadmill, and not wanting to increase your burn. This kind of does make sense for coffee: a lot of coffees you get will be out of your control and increasing the fanciness of your coffee is an ongoing expense. For headphones though they're all moot. I can't remember the last time I wore someone else's headphones, and it's just a pretty small once off payment (these have lasted me 5 years). I would strongly recommend upgrading in this department.
As for TVs, I rewatched Alien on my friend's new LG OLED and it was absolutely stunning. I am looking forward to getting a new place and having a nice set up like that. Again just a once off thing.
And just for balance, my computer monitor which I use all the time has an annoying flickering issue that I have just been putting up with for a long time.
Work gave me a 5k monitor to use at home. I set it up dual monitor with my cheap-o monitor. Had to upgrade that as it looked awful. But now maybe better for my eyes?
When the Apple Air, with the M1 chip came out, I upgraded, because the charging port on med 2013 MacBook Pro was failing. It never occurred to me that my old laptop had terrible performance, it felt just fine. The comparison of the two made me not wanting to go back. Monitors feel like much the same, once you had a high DPI monitor, it's hard to go back.
I did look at the website of the local IT refurbishing company yesterday, and you can build a completely workable office/development machine (including monitor) for less than I paid for my current 4K display.
In some sense I am a little sad that I didn't just go down the route of refurbished hardware for 20% of the cost, but my eyes probably appreciates it.
You're describing the hedonic treadmill. But I think you are missing something.
The thing is it does feel good to fix things and upgrade. The treadmill just says your baseline reverts back to where it was. So yeah you're just as happy with the expensive TV as you were with the shitty one, but it did feel good to upgrade, if only for a little while.
So the key is to introduce tiny upgrades and often. If you blow your budget for the whole year on a TV then you only get to be happier once. If you tinker and introduce tiny, sustainable upgrades you can be happier every day.
The sustainable part is important. You can only afford something if you can buy it twice. Don't ever take out a loan to buy anything (apart from a house).
There must have been something that drove him to coffee expert level.
For me, I get dissatisfied and then reach for something nicer and nicer until I hit a limit. I'm just very skeptical he'd still love cheap instant coffee. He was climbing a sort of dopamine ladder. Then he ran out of rungs to climb. Now he has to move to a new thing. Life is almost nothing but impermanence and dissatisfaction. Its a little odd to think you could somehow beat the system. The person who finishes the dopamine ladder would never have been happy staying at the most bottom rung, which was disintegrating for them hence pushing them along to the highest rung. Short of becoming a very serious practitioner in things like meditation and other monastic-type things to fight these urges, this is just a really tough thing to get away from.
Now job, new book, new video game, new movie, new friend, etc. We're almost always doing this in some way.
Maybe those examples are things you don't have good discernment with. For me, I can instantly tell when I have quality headphone speakers. I can hear a fuller range of music than cheap ones. Its almost always obvious and cheap ones are almost always annoying. I have yet to go deeper into audiophone territory and I might never, but I have affordable headphones with really nice speakers inside and I wont go any less quality than this. So maybe for you, you can't tell or don't value it, but there are probably other things you do focus on.
There are certainly diminishing returns but good coffee is objectively better than some pre ground supermarket stuff. Part of it is recognizing what's a good value more than what's the best and most expensive.
I imagine your friend is talking about specific coffee preparations like "espresso" because, for example, there are hundreds of years of traditional Arabic coffee that continue to be appreciated for generations. Your friend reminds me of this movie scene in Mulholland Drive[1].
On the other hand, a part of becoming an expert in some field should be getting to be _realistic_. Learn not to deceive yourself.
I can give you an example from my experience. I got annoyed by my dull knives, so at first I went and bought really expensive knives, the ones made of hardened high-carbon steel that start rusting if you look at them dirtily. And I spent hours reading reviews before buying them. That's probably the "most expensive cup of coffee" stage.
Then I stumbled upon a Youtube channel that explained how to sharpen knives properly. So I bought $70 worth of diamond sharpening stones and re-sharpened my old IKEA knives. And they started working almost as well as my set of ultra-expensive knives, but they are far more practical. The expensive knife set is now a display piece in my kitchen.
Another revelation for me was that past a certain point, there's really not that much difference in the quality of sushi. It's just rice and sliced fish. Sure, there are individual variations between chefs in rice-to-fish ratio, maybe some special soy sauce here and there, but these are all just matters of personal taste. So I now just enjoy sushi for its taste. And instead of a looking for reservations in expensive restaurants, I just drop by my local sushi place and just ask the chef to add a bit more wasabi to the rice.
I've watched like 3 hours of his videos on sharpening because he's pragmatic, approachable, and scientific, and now I actually understand how to sharpen a knife and why it works.
That's not a bad rule of thumb, but it's also easier to get dry, poorly seasoned rice, mushy fish, overdone or poorly done sauce and toppings combinations, and >1 day old uni than I'd really like at a lot of places.
Your advice makes sense when your local options are good enough, but I don't think you're actually arguing that quality doesn't matter -- only that beyond a certain point the additional discernment isn't valuable.
I deliberately avoided cultivating a taste in coffee and wine after having acquired a taste for good whisky. For exactly the same reason you mention: I knew my utility from drinking coffee/wine would stay constant, but the time and money cost of acquiring them would significantly increase.
> I have come to understand that there are two kinds of people, those who do things only if it helps them achieve a goal, and those who do things just because.
I think in this age of vibe coding where anyone can code anything, the discriminating factor between two developers, at a technical level, just comes down to "good taste" (lots of other more important factors, too, like a good human to work with).
And like the author, I agree that taste is acquired through tinkering and trying to be able to discern the qualities of one approach or one design over another. You can't have good taste in anything without having tried lots of variants in that domain -- wine, sushi, furniture, color, style, etc. Having this quality now is more important than ever for senior devs and mid-level devs that want to reach the next level.
When anyone can vibe code, it is the ones with "good taste" in the design of systems that will thrive. Anyone can use an agent and code fast; few will be able to do it fast and well and build systems that do not eventually collapse under the weight of their own tangled mess.
How to acquire it? Have a folder called `sandbox` and just build small projects in there and try new ideas, new techniques, new libraries you come across. Used a particularly interesting package? Go check out the GitHub repo and see how they did it; learn something new. Good taste can be acquired; it just surprises me how few devs actually care to seek it.
Having a distinctive style is also going to become increasingly rare in the age of LLMs. I see it with people at work already. They have no style. They learn very little. They get something to work but have no ability to discern whether it is a “good way” of doing it or simply “a way” of doing it. They have little interest in how or why things are built. I get the sense that they have little or no enjoyment or interest in deep understanding.
As a concrete example I just reviewed a PR for a feature that someone wanted to add to a flask app. It had a ton of terraform code, an aws api gateway, a lambda, etc. then on the flask app frontend they added a page with a call to this new API. I asked why they didn’t just add a route to the flask app. Blank stare response.
Distinctive style is actually bad. You want your code to be uniform, readers should not be unable to tell who wrote what.
Otherwise you run into the danger of having parts that are peculiar and or obscure to everyone except the one who wrote them. That's if you are lucky, if you are unlucky the person who wrote them won't be able to decode them either.
Obviously there’s a line to draw somewhere so that your code doesn’t end up looking like a YouTube comment section or have half of its API with Spanish names. And if by style you mean that overly “clever” or dense code without detailed comments and formatting for readability ought to made digestible by those who lack context about the why/what of it, or that “dangerous” or unsafe practices like rust’s unsafe/python’s exec/C++ UB ought to be only permitted in exceptional situations, sure.
Everything else is so inconsequential that it truly pains me to see people spending hundreds or even thousands of dollars of their time having to indent, comment, or space things in a certain way just to get CI to pass or merge a PR.
I don’t give a fuck that Jeff wants to use 4-space tabs and I cannot tell you how much I resent spending tens of thousands of dollars of Google’s time pleasing the fucking Go linter or trying to figure out errors like “ERROR: const/var” that I can’t turn off because some master artisan truly finds it meaningful and important to make me declare const blocks before var blocks, and their OCPD and fulltime bikeshedding is more important than whatever actual work I’m trying to do to get them paid.
> Everything else is so inconsequential that it truly pains me to see people spending hundreds or even thousands of dollars of their time having to indent, comment, or space things in a certain way just to get CI to pass or merge a PR.
I generally agree with that sentiment, but the solution is to use automated formatting and lint fixing.
I as a mostly python developer have my gripe with mypy. The powers that be decided all code must pass mypy which means I have to spend hours of their money typing out trivially inferable types because myph can't infer the type of the empty dictionary I just defined when just two lines below I proceed to initialize it. Or it can't infer the return type of my function that returns true in half the return statements and false in the others.
If I wanted to write down types I would use another language. And if I didn't want duck typing I would write somekind of ML. In short I would never write out the types because that's compiler work. But nooooo All the cool kids use mypy and typescript so we have to as well.
You say that, but sufficiently advanced automated formatting and fixing can be its own kind of footgun. The unsung heroes behind making absolutely sure my code passed Go linting also enabled an automatic formatter that would constantly remove imports immediately after adding them, because they were now imported and not used.
However a normal person might actually handle auto formatting in their CICD still requires spending a decent amount of upfront time and ongoing maintenance on running scripts/containers that convert true tabs into 4-spaces tabs. Most of the time, anything that’s fully automatically formattable into something that passes linting is so trivially superficial like reordering or replacing or spacing out things, so if it’s necessary for anything more important than that I’d be questioning things.
I can actually see value in encouraging explicit types for most of the kind of stuff I work on, but I’d never choose Python for them to begin with because of that. LLMs make some of this stuff a lot easier to handle in one shot, but the ceremony and constant implication that you can’t be trusted to good work without being forced to wear a monkey backpack with a leash just wear you down when you run into them consistently over long periods of time.
Within a module, yes. But it's ok for one module to be different from another because, you know, they are different modules that do different things (the difficult part is deciding what level your modules are split at, of course).
“He didn’t process information in any conventional sense. He didn’t read. He didn’t really even skim. Some believed that for all practical purposes he was no more than semi-literate.”
I used to resonate with the word "taste" as a distinguishing factor between good and bad quality, but a comment on HN some months ago about one of the many blog posts that talks about taste really nailed it:
"Taste" is just the degree to which two people value the same things.
When someone is rated as having "good taste" it just means that the person rating them values a lot of the same qualities.
The more I thought about it, the more that applies everywhere: Food, wine, clothes, architecture, software design, etc.
I would argue that taste is the ability to reason about one's own preferences.
A person who doesn't consider themself to have a taste in music and listens casually won't really be able to reason about why they like the music they do other than "I like the band" or "I like the song."
A person with taste in music is going to have listened to a larger variety, be able to speak passionately about it, and justify why they like and dislike particular music.
One is a boneheaded consumer, one is a fanatic.
Similarly with wine, you can't claim you've got taste when you've been drinking only red your whole life.
Software is a bit different from music or wine because taste can mean “has the right function and attention to detail and aesthetic and interface and data model and conforms to my expectations and has a certain kind of API and has documentation with actual examples and uses the right JavaScript framework and”, whereas taste in wine can mean “has a blend of flavors that I particularly like” and taste in music can mean “pushes the boundaries of its genre and introduces genuinely new sounds”. Most but not all of what we want out of software is about function and utility and intuitive UX.
But wine and music and other subjective consumption-hobbies that enable snobbery are much less grounded in practicality and tend to become arenas for novelty/pure experimentation (charitably) or countersignaling and identity-building (uncharitably). So you end up with situations where the people who “have good taste” consistently associate themselves with music that sounds legitimately bad to regular listeners or never gets popular enough to be recognizable because it’s about being better than casual music listeners more than it is about the music to them. Or, proclaiming that no taste preferences for icecream products are worthy of respect unless they come from someone that regularly consumes pistachio ice cream - it’s not about the ice cream to them.
That’s why we can say “this UI needs to be collapsible and expanded by default” about software - we want it to be a certain way. The type of people who relish in their taste in music and ice cream don’t tend to say things like “maybe cut the bridge 10 seconds and add some kind of duet with reverb” or “it used too much nitrate fertilizer for loamy soil and ended up kind of woody (for ice cream)” because they want themselves to be a certain way.
I don’t dispute that. What I’m saying is that functional and even non-functional taste in software tends to be grounded in how it can more effectively serve our needs. In a way that’s actually a more profound kind of creativity and taste than something that tries to just look cool.
OTOH music and anything else snob-adjacent aren’t grounded in serving our direct needs to some other end the same way software tends to be, so to them “taste” could be reducible to just a favorite flavor or becomes a kind of status/value/oneupmanship. The products are consumed directly as ends unto themselves so people who have strong opinions on their comparative tastefulness care about that for different reasons than they do software.
I struggle with the music one. I listen to a lot of different music, used see live music at least once a week, and have some strong opinions. I still struggle to explain music to others or why I enjoy certain artists/songs.
It is like the details don't register in a usable way, where one of my good friends will tell me he likes a band because of the guitar tone or the drummer's technique or something else that I struggle to explain or even pick out of the music. I wish I could explain my preference better.
Taste has nothing to do with your awareness of your preference, and cannot exist in a social vacuum.
Taste has everything to do with others opinions of your preference: If your preferences, on display, are enough to bring many others to agree that your preferences are similar to their preferences, you have good taste.
If your preferences, when encountered, are enough to bring others preferences into alignment with yours, you have excellent taste. If you can recognise what is the new hotness before anyone else does, you have even better taste. You don't have to be able to justify it, you just have to know it.
You don't need to be aware of this to be happening. You can have incredible taste while just sitting around and doing your own thing.
You can have incredible taste in only red wine without ever tasting white. You can have good taste in only hip-hop and not jazz, or in impressionist art and not abstract expressionism, or any other number of things.
If I know that your recommendation for a category is going to be good, then I know you have good taste.
I think a distinction can be made between bad taste and different tastes.
One of the greatest developers I've worked with, who I learned a lot from and respect immensely, has extremely different tastes in software from me. To the point where I wouldn't say I think he has good taste.
But, his work still has a distinct style and intention. I can tell anytime I come across libraries he had a hand in. I understand what the code is doing and why is is correct, even when I disagree with it.
And I think that is what is important. When working with more junior people, I'll ask them why they did things a certain way and will generally me be with a "well, idk" of some variant of path dependence.
I think developing that intentionality as a developer is important. Which does come with some amount of aesthetic, and I think taste is a defensible metaphor.
I understood “taste” here to mean opinions. It’s not “good taste” it’s just “some taste”. IMO there are many ways to express taste that are not tinkering, such as preferentially selecting things and my personal favourite, complaining :) Nevertheless I think he means opinions rather than some universally good taste.
> 2. How well you're able to understand the medium and identify the differences between things.
Combining these two ideas: Taste is the ability to understand the topic/craft/medium well enough to have a strong opinion about what good is, and usually that opinion is similar to other well experienced practitioners.
In software engineering it's the ability to recognize an elegant solution that avoids pitfalls that the observer may have experienced in the past.
In other fields it might be that someone with good taste can better understand and appreciate the process or journey to get to whatever $thing is being evaluated, and they appreciate the $thing more because they can empathize more fully with the creator, compared to a layman.
This is the second article I've seen on taste here. It seems to me the author's definition of "tinkering" is primarily describing hyperfocused, repetitive behaviors found in neurodivergent individuals, potentially even a complex form of stimming. I think this is unrelated to taste.
I think good taste in engineering comes down to a mix of skill and knowledge. It isn't just about how you can reach a goal, but rather about having a solid internal map of the world and an understanding of which parts of the map you are unfamiliar with. To those lacking knowledge, the map can deceptively appear much smaller. Skill allows you to effectively find your way to the places you know you can go. With knowledge and skill, taste comes naturally. Those with bad taste, I've found, are those with limited knowledge of the vast universe of tools available and/or the lack of skill needed to utilize those tools effectively.
I don't know if taste is the correct word here but I agree with the spirit of the article, especially the parts on tinkering being a form of practice. Play (in the form of enjoyable tinkering) is such a powerful motivator in learning. In saying that I've found two big limitations with this style of play-based learning:
1. It can easily devolve into meaningless tweaking (see author's point about touching dotfiles) which can still be satisfying but not very impactful.
2. It's hard to maintain motivation when something stops being fun. This is where external motivators like bosses, clients and scoreboards (e.g. Advent of Code) are actually valuable...
I've spent an inordinate time tuning my home nas to what I want to do. e.g. NPM reverse proxy with all kinds of docker apps and configuring it securely made me appreciate how tough cyber security is. My latest venture was to create several docker images for whatever environment I want: VsCode Remote SSH server, a docker image with a custom LLM, sync thing for obsidian notes across all devices
My goal is to de Google with home nas hosting a bunch of services. I want to take all my Dropbox photos and recreate what Google memories does using off the shelf AI tools on my nas. Then email and finally maps with great PoI data.
Probably not all of what I did is a differentiator that put my learning beyond mediocrity. But a good yard stick is if what I built is useful to someone and even better if one would pay me for something.
Some of the worse engineers I've ever interacted with had too strong of a "taste" for what they felt were right and were completely unable or unwilling to work outside of that. Developing a superiority complex because you think you have "taste" is a great way to torpedo your team.
Coding for others is not art, it does not have much meaning in of itself. Your users won't marvel at your choice of language or your usage of design patterns - they care about how the end product looks and works.
In a world like that where you have to work in a team, why you ever wear your inflexibility as a badge of pride? The ones who are the most useful are the ones who can code any way, any how, and can plugin anywhere - "taste" be damned. If you want to be a net positive on the teams you work on, stop thinking it's about you, because it's not.
It absolutely is, and I think it's what separates good from bad and junior from senior devs.
Most devs can produce an artifact that more or less works. But one that has an internal consistency others can understand and extend, one which accurately captures the problem as it exists and ways it will likely change, is much more of an art form.
A big part of that is knowing which situations are worth making a stand. Every you write code or leave feedback, your doing it for your team current and future.
Nothing that you talked about pertains to art. Writing good code does not mean you're making art.
You shouldn't strive for internal consistency with yourself, you should strive for external consistency with the other developers in your team. If someone reads your code and immediately knows it was you, you probably aren't doing a good job.
And that's the difference. If you are doing a good job as a software engineer, no one should notice you. If you're making good art, everyone should see you. And that is the difference between devs who think they're good, and devs who are truly good.
Code can be art but not all code should or even could be art. Like there is just zero utility or elegance in formatting your bash script with pretty comments and some elegant data model if it’s just something you run to manually pull metrics from a staging environment or whatever.
I see code more like rocks, nails, planks, tape, shards of broken glass, and a pile of signs that say things like RADIOACTIVE - DO NOT ENTER. If you need to do something cool with that stuff you probably do need to create something that looks pretty interesting and elegant in spite of your choice in building materials. But sometimes you just need to take a NO TRESPASSING sign and tape it to a plank that you jam into a pile of rocks. Don’t need to find a hammer if you don’t use nails, only need it up for a day, just one of a hundred things on your plate to do something of bigger scope and impact - just make sure the rocks are big enough to keep the plank standing, leave and forget about it.
Spot on! The real difference between having great taste and just thinking you do lies in understanding the user's needs deeply. Good design isn’t just about looking pretty; it’s about nailing that value. And yeah, it’s no walk in the park!
> Your users won't marvel at your choice of language or your usage of design patterns - they care about how the end product looks and works.
Yeah, but if the patch is unreadable slop, some tasteful choices that make the code more maintainable will make features and bugfixes come faster for users and number go up for the business.
Unreadable slop and "tasteful" choices are independent of each other. You can make "tasteful choices" that makes code unreadable (I know from experience).
Readability also has some level of objectiveness to it. There's only so many ways you can abstract a concept, and so many ways you can express logic.
In that sense, readability has way more to do with skill in abstraction, than taste. In fact picking bad abstraction layers or expressing logic in odd manners because of taste is a great way to write unreadable slop.
It sent me back in time, very nostalgic. I even took a few minutes to sit and enjoy the moment and remember what it was like to explore the internet on a pixelated CRT in the 90s.
Yours. I can't explain your frustration then, or why the author's intent escaped you. If you use Firefox there's a little reader-mode icon in the address bar you may find convenient.
I love it too. Appears to be accomplished with this CSS, which you can tinker with by finding the :after element at the bottom of the <body> tag in browser devtools:
i figured that's what it was, but i didnt know how to find it in the browser tools but i missed the "after" part, so yeah it's in the "pseudo-elements". nice!
I'm a VSCode user and when I hear people talk about neovim and it customizability or its productivity, I think to myself "VSCode is also very customizable and there's a lot of ways to get a lot of productivity out of it, why would I use neovim?".
Surely there's something I'm missing? Does it help you stay more in the flow or something? Is it because it's faster? Maybe it's because it's an editor you can easily use while ssh'd into a remote machine? Please enlighten me!
Most of the things I do with Neovim I could probably also do with VS Code (not sure about autocommands and macros though, I haven't used Code in years). I don't use a mouse much, I have a very keyboard-centric workflow. I was a Code user for years, but did most everything else in the terminal. I figured I would give it a try and I ended up just liking it. I like to tinker. I like to tweak my configuration. I like how I can set autocommands for things, pipe text into Vim and manipulate it, or record a quick macro for some repetitive task. I like that there are "Vim keymap" plugins for things like Firefox, so learning basic Vim keys has helped me outside of Vim. I like that I keep discovering new things Vim can do (and then promptly forgetting them most of the time, but still). I also like to spend 2 hours writing something to automate something that saves me two seconds.
It's absolutely not for everyone, though it looks like some of the pre-built configs (NvChad, LaZyVim, etc.) are decent enough of the box now that you don't need to go on the endless-customization journey if you don't want to. To me though, that's the appeal: tinkering, tweaking, refining. Generally when people ask if they should use Vim, I tell them probably not but try it for a few weeks and see if it clicks in your brain. I had a great VSCode setup, everything worked great, I was productive, but something about Vim just made more sense to me once I got over the hump of modes and all the keymaps you need to turn into muscle memory.
Edit: I also like that I can do abominations like:
("def" @keyword (#set! conceal "ƒ"))
("if" @keyword (#set! conceal "?"))
("unless" @keyword (#set! conceal "¿"))
("else" @keyword (#set! conceal "∶"))
("elsif" @keyword (#set! conceal "⁇"))
("case" @keyword (#set! conceal "⟨?"))
("when" @keyword (#set! conceal "→"))
("begin" @keyword (#set! conceal "⌊"))
to make Ruby look absolutely insane. Is it useful? No. Do people hate it when I share my screen? Yes.
I'll second the enjoyable parts of Neovim shared above, and add a few more of my own:
- vi uses most of the same default keybindings, which is available across most distros (in busybox). Meaning I can use the same keybindings in a docker container, appliance server, etc.
- With the conform[1] plugin, I can add any CLI code/text formatters that might not be available as a vscode extension. As long as it takes a file/stdin and outputs a file/stdout.
I don't want to sound like "advising", because long-term recommendations often carry the personal weight with them- whatever I tell you worked (or didn't) for me had an effect on me - it's never guaranteed to have any implications on someone else's life.
But here's what I learned after a long time trying different things and what's worked.
Don't try to find objective reasons for making big shifts in your workflow - be that a change of your major tool, language, technique, or paradigm. What I mean is: don't try to decide if any concrete tool would be good for you. Instead, try to understand the big underlying idea behind the tool. Once you comprehend the abstraction, choosing a concrete implementation of that idea wouldn't really matter - you can carry the big idea with you regardless of one concrete implementation.
In practice, here's what I mean: the idea of vim-navigation is absolutely beautiful, pragmatic, and fantastic, and it's positively worth every minute of the initial learning curve. It's really not that hard - it only requires just a bit of dedication and discipline. I honestly don't understand programmers who choose to be in this field, yet outright reject the mere idea of it after trying it for like six minutes.
Just go with it - you probably will hate me, everyone else in this thread, and yourself for a few days, but then it will grok. Once you have a good understanding of its tenets, you could easily take it to whichever medium you choose to stay in and it doesn't even have to be neovim.
Neovim might be great for you, and maybe not even as a concrete tool to achieve defined goals, but even as a head-start medium to understand the 'big idea' of vim-navigation.
Finally, whenever picking up a new thing, maybe don't try to find elevator pitches. After the initial acquaintance - Wikipedia, GitHub pages, etc. - google instead: "Why does [that thing] suck..." and maybe try instead to find compelling reasons to remain skeptical. Trying to remain unconvinced may help you find perspectives for why a certain idea is a matter of fact might be a good one to have in your pocket.
If you dislike the terminal or aren’t comfortable there, you should try using the vim keybinds for VSCode. They’ll get you most of the way there, and the rest is a lot of customization to get things how you like. The vim motions are the best part! They take a while to get used to, but they’re incredibly convenient.
In the end, it's still just a text editor. Don't expect that you will get things done n times faster than in vscode without extra effort added.
> I'm a VSCode user and when I hear people talk about neovim and it customizability
I think it's more customizable than vscode, but you need to learn some lua or vimscript to customize it. Back then I tried to create some custom keybindings in vscode and realized you can't add new ones, only modify what exists. While (n)vim provides you with out-of-the-box flexibility and more if you use something like LazyVim.
> Is it because it's faster?
What I retroactively like about (n)vim is that, after the initial learning cost, it turns out the default nvim keybindings are transferable to many UNIX tools (less/more, man, journalctl, etc). It feels much more comfortable to write some code in nvim, open up a terminal, and then `man X` without mentally switching the keybindings.
> Maybe it's because it's an editor you can easily use while ssh'd into a remote machine?
Actually, rather than nvim itself, it's more like vim is already preinstalled in many popular server distros. It's sometimes a huge time saver in cases where you're unable to install additional packages to edit some config/code/text files, just type `vim`/`vi` and you're good to go.
I did convert myself from a minimal vscode setup (disabled everything & only LSP extensions) to LazyVim nvim a few months ago. I had to tweak my .config/nvim, relearn Lua again, and read the manual. It took me about a week to settle things down and get used to basic nvim bindings.
After another week of suffering trying to fix JDTLS (Java LSP) integration, I'm enjoying my nvim setup. Unlike vscode sync which requires you to login, I could just git clone my `.config/nvim` and I'm good to go.
I used vim for decades and the sensation is that I can hold the code in my hands and manipulate it directly. Other editors feel like I’m wearing thick gloves, can’t move correctly.
but it’s like learning to play the piano, it only feels natural after years of practice
nowadays I’m faster with Cursor so it doesn’t matter as much
For one, you don't have to figure out how to remove whatever random AI UI element and integration MS decided to introduce and turn on by default every update.
I used to tinker with fonts, colors, etc but as I’ve gotten older I just accept the defaults in most things. You can waste any number of hours on that stuff and in the end it makes very little difference.
Fonts are like my dotfiles, I fucked with fonts.conf a decade+ ago and have just lived with that since then.
So I get to be very particular, but also not have to care about tweaking, I did all the work back when I had time for that.
I will argue that if you stare at a screen for hours a day, might as well make it pleasant with good hinting/anti-aliasing/features and a professional font instead of Dejavu Sans lol
I wish this viewpoint were more common/well-known. Somehow people get it in their head that people are tinkering with all their stuff constantly and never working, but just as TFA says, you'll have configs that haven't changed in over 6 months and are customized to your liking so you can work more efficiently and comfortably. Get a new PC? rsync configs over, or git clone your dotfiles repo or whatever. The work you put in doesn't disappear.
Feeling the same. I used to have a highly customised Liunx setup, then I got a macbook from work and hated everything that was different from what my linux desktop did. But eventually you just get over it and realise it's all fine and works. Being unfamiliar with something is different from it being bad.
I maintain a personal dotfiles repo on github, and when I start at a new job etc, I just git clone my dotfiles repo and then run ./setup.sh and everything is set up nicely with my fonts, colors, and stuff. It didn't take much effort at all and I get to use what I like. And I haven't tweaked my dotfile in years.
If you don't want to tinker, don't! But it's absurd to suggest that it's only something for children to enjoy. (30 should not be considered near the end of your life btw.) Please don't tell others they should feel bad about learning for fun because they're adults.
Tinkering with fonts is the only way to get fonts that improve legibility by replacing ambiguous glyphs with unabiguoius. ie programmer fonts. Every day it boggles my mind that password managers use fonts that don't distinguish 1Il| 0O etc. cut & paste does not help when you need to speak them into a phone or type them into some other device. Same applies to simple part numbers, serial numbers etc, just all data.
Something I say about complainers applies here:
In the entire history of the world not one thing has ever gotten better by accepting something as it is.
Go ahead and never tinker, but don't delude yourslef it's a virtue. It's merely something you're free to do because it doesn't actively harm anyone else.
The fact that the author went out his way and styled it very uniquely displays that he does have taste :) It is just that your taste is different. Like another commenter pointed out, I liked the style (though I hated the pixelated font to begin with)
Once one gets over the infatuation phase one realizes how subjective taste really is. I thihk there are some common points though that one can tell someone has refined taste without necessarily liking it
Funny part is he points out at the end that it's highly subjective...
I actually really liked the look of the blog. It gave me a retro vibe, which is obviously what he was going for. But I'm also reading on my phone. Maybe the choice was more annoying on a larger screen.
As a person who doesn't do much tinkering the thing I dislike about this article is it doesn't really get across to me why the author likes tinkering so much or why I should either. Not saying that the article is bad but I was curious about the author's mindset and felt he didn't talk more about the appeal of tinkering.
> is it doesn't really get across to me why the author likes tinkering so much or why I should either
It's literally stated in the second paragraph: "It’s how I learn." You can learn how the things around you work by tinkering with them.
Of course, you can then ask why someone would want to learn things, or why they enjoy learning, and I honestly don't know how to explain that, but I feel like it's the sort of thing that shouldn't need to be asked.
If you're going to make changes, make big changes. Learn to squat 100kg. Finish a triathlon. Learn intermediate Chinese. These are all impactful goals you can hit in a year, worth way more than colors and fonts.
I’m starting to believe that taste in code isn’t something you’re born with. It’s something you build after getting burned by your own mistakes again and again. I used to think some code just looked nice, but now I can explain why it works.
How did you develop your sense of taste in code? Any stories or lessons worth sharing?
I don't think "taste" in UI-adjacent things is important.
Tinkering habit is kind of important as even small interactions help to build an internal model of how things work, how to operate them, etc. And this model might generalize.
What exactly does "taste" mean in this context? Taste is about artistic quality. Aesthetics is generally a tertiary concern when it comes to software or hardware tinkering. That assumes it's a concern at all.
And while I'm talking about artistic quality on HN, I have to take some obligatory potshots at the website in question. When I have to use Safari's reader mode to see what you wrote, something has gone terribly wrong.
I know everyone is busy but the author provides the definition explicitly:
> And what I mean by taste here is simply the honed ability to distinguish mediocrity from excellence. This will be highly subjective, and not everyone’s taste will be the same, but that is the point, you should NOT have the same taste as someone else.
Concisely, discernment.
So your comment about “artistic quality” may apply. But from your ends sentence It seems you equate “artistic quality” to aesthetics , and I don’t think that’s what the author intended.
> This will be highly subjective, and not everyone’s taste will be the same, but that is the point, you should NOT have the same taste as someone else.
Lost me here. If tastes don't converge in the limit, then there's no point and you're just justifying a hobby.
In my day, we'd say that as kids we'd take apart all our toys to see how they worked. We didn't necessarily call the end goal "taste"; it was to understand how things work, and to learn which results require which trade-offs.
Unpopular opinion here probably but:
Tinkering is also a great habit to be disappointed and unhappy.
I love software and programming, but the apologetic requirements that can come from users mean adding a lot of complexity to software, that leads to many bugs and very slow programs. Everything has a cost attached.
> In fact, the last meaningful change to my config was 6 months ago.
I know that's supposed to convey restraint, but it seems too much fiddling to me. But I've been using Vim for decades, so I only touch my .vimrc when something breaks.
Reminds me of the Steve Jobs biography. He was a notorious tinkerer. He obsessed over the design of Macintosh, the NeXT step cube, and a bunch of other products.
He also valued taste a lot. It seemed like the worst insult Jobs could have for someone was to say they had no taste. Other insults may have used stronger language, but it always felt that him saying someone had no taste was to say they were worthless and he had no respect for them as a human being.
No he definitely tinkered. Yes, his primary tinkering mechanism was "having others execute his vision," but like if that's not tinkering then neither is editing config files like the article author mentions, because you're directing other peoples code into configuration.
There's one story from Macintosh era where he spent weeks harassing one engineer over the calculator app: "it looks too bloated, it looks afwul, these lines are terrible.." until the engineer got fed up and said "here this is the Macintosh Calculator App: Steve Edition. You get to pick your font, your layout, your color theme." And Steve sat there for hours literally tinkering on a calculator app until he got what he wanted.
He tried to get Paul Rand to change the colors on the NeXT logo--who promptly directed Steve to go have s*x with himself.
There was one point in the Apple Store's inception where they had basically reached done, and Steve decides that he didn't like a certain aspect of it, which was essentially going to require them to redo the entire thing. So he did, and they started from scratch. I think it might have been the Carrara marble floors but I can't remember for certain.
I'm not saying I have immense respect for the guy as a human being, but he was absolutely a notorious tinkerer--a complete menace of one.
If anyone's wondering, author makes no attempt to demonstrate the veracity of the title, he just talks about being a tinkerer and why it's important to have taste nowadays, and lets the reader make the connection.
edit: I lied, the connection is that if you don't try many things, you won't know what's good and what's bad, and if you don't tinker, you won't try many things.
My coworkers are shocked and confused that I own/use a sewing machine and see at as some legacy old timey thing. It's true that you certainly don't need to own one anymore and you won't save any money making your own clothes. But you can modify and make loads of custom cool stuff that are impossible to buy new.
I've got a few things I made that just bring a lot of joy knowing it's the exact thing I wanted which you can't buy, and couldn't justify paying someone else to make either.
Except "taste before skill" is a well known issue and source of frustration for starting artists: They can already see what's good and they know what they want to do, but they don't yet have skill in measure with their taste and get locked in a feeling of inadequacy. They resolve that if they stick with it. So, taste looong before skill.
So...
> If you don't tinker, you don't have taste
> Acquiring good taste comes through using various things, discarding the ones you don’t like and keeping the ones you do. if you never try various things, you will not acquire good taste.
Agreed, although I'd characterize it as more closely related to curiosity. Some people can select particular items that make themselves look good or are high-quality for example, but are surprisingly some of the least curious people, whereas I don't think the same can be said of tinkerers. People lacking this type of curiosity get frustrated easily if you want to discuss ideas or hypotheticals, nebulous intangible problem solving etc..; they want the right answer and an authority to point to. People with this type of curiosity want to discover why it might or might not be true regardless of whether it's a solved problem for others. The former type of person wants to look up what the viewpoints are like before they agree to go on a hike, getting frustrated when they're not there yet, and the latter just wants to hike and see what it's all about, enjoying the process.
Consequently, maybe taste can be acquired by impersonation or purchased, but could be more superficial than taste acquired through deep iterative tinkering and repetition. Much like someone watching a youtube video that tells them so and so is the correct way to do something, therefore it is, and it may be true, but they didn't necessarily learn that organically or in a way that they could analytically discuss.
Incidentally, the person without this type of curiosity is extremely dull to engage in conversation with from the perspective of the curious person, and in the reverse the curious person would seem to be wasting the incurious person's time because they aren't getting to the point and there's no tangible benefit in the conversation.
Incurious people seem like they're the typical tourist or the consumer, eliminating as much inconvenience as possible but not necessarily interested the exploration of the what or why of either the problem or solution, making it hard to identify where the depth is. Good at delegating, but terrible managers.
I feel like this is true as ever, yet the current environment seems to be going towards the opposite, I.e. not about taste but just doing as much as possible, as much hours, as many responsibilities, just shipping out slop as fast as you can, don't waste time on stuff, all about being a 1000x AI engineer etc..
You don't have interesting taste if you write articles like this.
People are just figuring out taste matters for product, so at this pace in 10 years they'll figure out that having novel tastes that aren't just a distillation of the echo chamber you live in matters just as much.
I love tinkering but I'm very minimalist as far as tooling is concerned. I don't like to use too many tools. I only use tools to automate activities that I do frequently. I don't try to micromanage and automate every aspect of my existence. Some stuff is better left uncounted and unplanned.
A lot of other people who like tinkering seem to have a kind of obsession with using all the latest gadgets to solve the tiniest problems. IMO, there's a point when you're so into automation that you end up looking for problems to use your tools on. You end up introducing new problems into your life, just so you can solve them using your tool of choice. Your life becomes like a Rube Goldberg machine.
> GitHub desktop rather than the cli (at the very least)
I keep hearing this same "GitHub Desktop bad, git cli good" take, but I just don't see how the cli can compete terms of things like being able to go through each changed file, see a clean visual representation of all my changes, and to choose exactly what lines I want to commit just by clicking on them.
I despise the word "taste" for preferring specific software and workflows. Why are you selecting for aesthetic experience over usefulness?
I do get satisfaction from the results of my work, not through the mechanical process of arriving there. Tools are useful or not and this is the category by which I decide to use them or not.
Is the author doing that over usefulness or doing that in addition to usefulness? Some people would also enjoy the journey with the tool, along with the results. Just because someone enjoys the 'taste' of the tool doesn't mean that they don't care about usefulness.
Also usefulness is very subjective too depending on the context and scope.
Can the aesthetic experience improve usefulness? A million years ago I had an MP3 player with all of my mp3s on it. I listened to it every now and then. But when the iPod came out, and I put my same MP3 library on there, I listened to it all the time because it was super nice to use and interact with
It's hard to take seriously anyone who unironically says "there are two kinds of people".
That, and the judgmental humblebrag tone leads me to believe the author is young. I suggest they focus more on learning than writing these vapid articles.
Decades ago, an old friend told me "I became a coffee expert, I learned everything there is to learn about beans, the ways to prepare them, the chemistry that goes into it, and now I can only enjoy a cup of coffee prepared by the most expensive machines from the most expensive beans. The shit part is that I enjoy it just as much as I enjoyed my shitty supermarket coffee back when I didn't know anything about coffee."
That advice has stuck with me, and I try to have the least taste I can. I use $20 headphones and a $200 TV because I can't tell what "good" is, and I enjoy music and movies as much as my friends with $600 headphones and $3k TVs do.
It changes. Previously, I wouldn’t watch h264 videos that had wrong encoding settings (bad deblock, 2pass, bad crf). Now I don’t really care.
When I cared, I cared about movies as well. It’s just the energy of caring. Now I don’t find movies interesting at all.
I'll offer a counter-anecdote and suggest this advice isn't necessarily ironclad. I've used the same pair of $20 headphones for decades (replacing them with the same model when they die), or else laptop/TV speakers. A couple of years ago I got $200 headphones included with a new phone purchase. The $200 headphones were amazing. I got to listen to all of my favorite music with a new perspective. But I still use the $20 ones on a daily basis because the $200 ones hurt my ears with prolonged usage. The $20 ones are fine. The nice ones didn't diminish my enjoyment of them at all. And every now and then I break out the $200 ones for a treat.
Just don't become a snob. I think people tie their identity to the expensive junk they purchase and develop a sense of ego around it, of being better than the peasants, and that's why they become unable to enjoy the "lesser" experience.
What I love about learning a topic thoroughly is that I can then pick apart the "expert wisdom" into what actually matters. That usually results in me getting better but very pragmatic results.
Coffee is a great example, I worked through the whole stack, tried everything I had access to until eventually I weeded out what matters most to me.
Good beans, good milk, and just enough prep. I tried no prep, all the prep, and then just enough prep. Good beans not perfect beans. Good milk but whatever is available.
I do the same with everything, cars, bicycles, sim racing equipment, computers, software etc.
I never enjoyed shitty coffee. I never enjoyed shitty chocolate or chocolate flavored things like cakes.
Until I was 30-something I thought I just didn't like coffee or chocolate.
Then one day I had actually proper coffee, and I discovered that good coffee isn't just some imperceptably theoretically better version of regular coffee that snobs are basically just faking being sophisticated for show. They are two entirely different things.
Same even more so for chocolate. 99% of chocolate products you come into contact with are garbage. Actual chocolate is like an entirely different product. It's not a better version of the usual thing. I ate it and thought "Oh. Ok THIS must be why chocolate ever became this huge thing in the first place. Hundreds of years ago before all the industrial process and market forces produced all the "chocolate" I ever tasted in my life, what they had was this, actual chocolate. Of course they loved it."
To restate the point, I was never happy with the regular version in the first place. I assumed "I don't like coffee" or chocolate, the same way I don't like cigarettes. Turns out I love them both.
And it's possible to continue to enjoy the results of having discovered and grown some taste in some area indefinitely without diminishing returns or anything like that. I'm not much of a sweets person so I still don't buy a lot of chocolate or chocolate things like cookies etc, but we have a Trade subscription and get a new and different bag from some random indipendant roaster every 2 or 3 weeks and it's great. I don't love every single bag but I at least find them all interesting and I do love the overall high level of quality basically all the time. I'm not now overall poorer for having discovered good coffee. Life is better. And what else is there?
Are you from the US by chance?
I only ask because specifically for chocolate and coffee, I would consider the US baseline to be exceedingly average, even terrible. Even "okay" chocolate and coffee from other countries better known for food will blow it out of the water.
The US does do excellent coffee, and excellent chocolate, but you have to seek it out. In a country like Italy or Australia the default, okay stuff is better. If an Australian couldn't tell the difference between good and great coffee I'd see why.
> Then one day I had actually proper coffee, and I discovered that good coffee isn't just some imperceptably theoretically better version of regular coffee that snobs are basically just faking being sophisticated for show. They are two entirely different things.
I know what you mean, but it's important to be mindful of the fact that enjoying coffee is way more than the quality of the coffee in the cup. I think for most there's a whole ritual around having a coffee which renders the actual coffee a minor detail around everything. You can see this even in coffee brewing snobs, where they use extremely specialized tools and equipment to perform a coffee brewing cerimonies that rival religious ones. Sometimes the coffee itself is just the pretext, but the goal is different.
> I assumed "I don't like coffee" or chocolate, the same way I don't like cigarettes.
So have you tried Cuban cigars?
No, I've tried cigarettes, which is all I needed for that sentence, something I don't like.
I guess it's a natural question given the rest, and expensive cigars might indeed be different than cheap cigarrettes, but it's irrelevant, since the point was not that no matter what you don't like you might still like the good version.
The point was only that discovering the good version of something did not leave me worse than before because I used to enjoy something abundant and now I can only enjoy something scarce.
It's a bit like Feynman on flowers too. You don't have to be ignorant of the biological workings of a flower to appreciate it's mere outward properties exactly the same way as the layperson does. I still love a box mac & cheese even though I thoroughly appreciate far better home or chef made mac & cheese.
Yeah, that's a horrible way to enjoy life. By your reasoning, you should subsist on protein blocks and watch paint dry for entertainment. By lowering the bar to the absolute lowest threshold, you'll classify everything as enjoyable.
The pareto principle holds strong. Just put 20% of the effort in and you reap 80% of the results.
I think that's mostly true above a certain threshold, but where that threshold lies, is probably different for different people.
The <1$ earphones you get on an airplane sound terrible. I can understand what the actors in movies are saying but that's about it. I can't hear or experience the music.
The $20 headphones my kids have are a good step up. For me headphones/speakers in the $100 range make me _feel_ more when listening to music. But I don't need to go more expensive. That's where my threshold is for music.
I recently tried to play a bit of tennis, which I've already stopped. My friend was appalled when I proudly announced that my tennis racket costed $15. "But we are in tech!" he cried. But for a couple of games, I know I won't be able to tell the difference between a $15 one and a $150 one (I know because I've played tennis in the past).
And true to my predictions, I no longer play tennis and I'm only $15 poorer. I don't know the name for this, but the fact that I avoided wasting $150 and only "wasted" $15 into something I knew might be temporary also feels very satisfying.
Absolutely the right choice. I do triathlons and your comment makes me think of all the people who turn up, do an Ironman and leave the sport after. Or people who sign up for a marathon, do it, then never run again.
Meanwhile there are shorter events you can do on much less training and cheaper equipment to see if you’ll like it before investing in the extreme end of the sport. If you run a 10k and hate every step, you’ve saved yourself a lot of time, pain and money.
Yeah, I played with a $15 racket for years. I only got a $150 one when I could tell the difference between them.
This is how I have it with my guitar. It's a simple Ibanez Gio from a starter kit, probably coming in at 150 Euros - 200 Euros or so, with another 40 Euros spent on a guitar tech to set it up properly.
I'll replace it once I know how it is holding me back. At least that's the plan I've had for the last 4-5 years. But it has low action, fairly low-noise pickups, holds tuning. So no need so far.
I just look around in the most expensive street in my city for posts online or offline of people selling rackets that have maybe 2 hours of use on them. Then you can usually get 150$+ rackets for $15 as these folks threat $150 as I threat $15. Some of them are just given away to charity shops etc.
I think you have to “aestheticize” the cheap stuff in a way that doesn’t add value purely on price. In other words, you aren’t just picking the absolute best quality of a thing, you’re picking it for some specific aesthetic reason that puts it above the more expensive one.
To put that into more concrete terms: I really like dark roast black coffee. There’s something about the bitterness and presentation that reminds me of coffee’s history, the variety of people drinking it, etc. and thus it is more appealing to me than the “high quality” light roasts with subtle flavors available in the expensive cafes.
Another example are diners. If you become such a gourmand that you only eat at Michelin restaurants and disparage anywhere “normal”, I think you miss out on the real culture and quality of diner food, which is a unique phenomenon.
Hopefully that made sense.
I think it's possible to get a careful dark roast, but often "dark roast" coffee mainly tastes like burned toast. It's still warm and caffeinated, but it's not really that enjoyable. There's a reason so many people make this kind of coffee very watered down or drown it in cream and sugar. Maybe it feels historically connected to cowboys brewing coffee in a sock over a campfire or whatever, but is that connection really so valuable?
I just prefer the taste and it reminds me more of Turkish coffee, which is my favorite way of preparation. And also black coffee reminds me of various cultural things like diners, detective fiction, etc. Like this quote from Phoenix Wright, the game:
“Blacker than a moonless night. Hotter and more bitter than hell itself… that is coffee.”
Lighter roast coffee just isn’t a thing I generally enjoy, to me it feels like a different drink, an over-complicated consumer product, not the kind of thing one would write quotes like the one above about.
A bit like grilling vs. sous vide with meat. Grilling has a whole culture to it, whereas sous vide feels soulless and overly technical, even if it produces great flavors.
At some point I think there's almost an inverse relationship with how much time you spend researching a product and how much you enjoy it. I fell in to this hole with gaming monitors. At the top end, no product has it all, no product is without flaws. So then you start getting frustrated that you can't find one that has the right HDMI version, freesync, 240hz, 4k, USB-C with decent power delivery, etc. And what you buy is something quite expensive but every flaw frustraights you.
While if you just ignore most of that and buy something mid tier, you feel quite happy because it works pretty well and you didn't spend too much on it. The moment you start scrolling the subreddit for the product you've gone too far and need to disengage.
I definitely suffer from this "do enough research until I find flaws that I then can't un-see".
When my older kid wanted a gaming monitor, he suggested a specific model because it was on sale and he could afford it. I took that opportunity to do some research solo that night, find a few alternatives, research each deeply and then suggest that we "look together at 2 or 3 different models", compare the features, and talked through whether it really mattered if one was $100 more than the other given the likely useful lifespan of a monitor.
He ended up with a monitor that he's really happy with, we got some time together bonding over a shared interest, and he doesn't have to know all the flaws I saw in it. (It's also barely mid-tier, which is congruent with your advice.)
Yeah for sure do enough research to avoid something awful, but as soon as you get to the reddit comments that are like "Nah don't buy that it's junk, buy this one" and "this one" is twice the price, it's probably best to ignore. And certainly best to avoid doing any more research or reading forums/reddit after the purchase is made.
I know friends who describe a product more by its specs rather than whether they like it.
I prefer to just ask for a recommendation. Looking at specs is often just a money sinkhole to me.
Ah, but it can give you such fun projects. Go, hunt down your headphones’ frequency response, cancel it out in PulseEffects (if that’s what it is called this release…), then adjust to the Harman Curve…
Yep, the traveller's curse.
This is the way I am with hiking and biking. I genuinely enjoy them, but I have a tendency to really get into the weeds with things I'm interested in and ruining the fun.
I purposely just go for hikes for the sake of it, and refuse to give in and buy anything other than a generic bike, even though a part of me really wants __ hardware. If I buy it, that will be the point of no return for becoming a bike nerd and I'll start caring about stuff I don't want to care about.
Now computers, I've learned a million ways to hate them, and learn new ways to hate them every day. Not with bikes, though :)
I do the same, although my reasoning probably slightly differs. I hate the idea that I'll mangle a pastime as "primitive" as hiking or biking into some technology optimization problem. People did this stuff way back with perfectly simple gear and were entirely happy enough.
Sure, I could probably be a bit faster or go on a bit longer if I had better gear. But I could also achieve that by just getting into a better shape. With this level of commitment the gear is not the limiting factor. If I can't go faster with this bike, then I don't deserve to go faster with a fancier one, god dammit.
My work is very complicated and technical, so I get some satisfaction from keeping my hobbies ascetic.
Hiking and biking as your “I’ll love the inexpensive options” hobbies. Did you intentionally pick the maximum test of will or something?
Lucky you! You didn’t fall into that trap and just enjoy the best experience you could get without overoptimizing for it. I fell into the musical instruments trap for a bit but luckily I got out of it and play with what I have.
I messed up in that domain when it comes to music software, it's tweaks all the way down, amazing that it works at all. I make do with cheap MIDI controllers, but spend hours cracking VSTs I already bought so I can run them in Linux.
Typing this out makes me realize its not even about the music anymore, but the tweaks. Let this be a warning
I am in the 20$ dollars headphones and 200$ TV bucket too. But for different reasons.
The point of the video/movie/song etc. is the content not the fidelity, there is a level of fidelity that allows 99 per cent of the enjoyment of the content. That level of fidelity typically costs 20$ for headphones and 200$ for tvs.
1080p and mp3s are good enough. The point is to see what's happening on the screen and to hear without noise.
> That advice has stuck with me, and I try to have the least taste I can. I use $20 headphones and a $200 TV because I can't tell what "good" is, and I enjoy music and movies as much as my friends with $600 headphones and $3k TVs do.
Thank you for sharing this observation. It resonated with me in a surprising way. Finding something that's "good enough" is such a blessing.
I'm with you with the TV - HD is usually enough, but audio needs to be at least reasonable. $20 headphones is too cheap, even from a longevity perspective.
I don't mind buying new $20 headphones every two years! I guess the latest SoundPeats I got were around $40, though.
If noise at all bothers you, decent ANC is a game-changer and worth spending more. I never tried it until I picked up a next cheap pair with it, and it's even better with a good pair.
For coffee, I get beans from a local roaster, like $14 per pound nowadays. I like the taste and it is nice to support someone local. Then I put it through a ~$200 Flair espresso machine. It is a manual press, so it has become a fun project/ritual. Plus, Americano is or espresso tastes better than coffee (and IMO mine is better than the coffee shop… a lot cheaper at this point I guess, too).
If your friend keeps mastering coffee he'll learn to appreciate what Folgers or Starbucks is doing again. He'll also learn to suggest the coffee that will make someone happiest, or help them the most, in a wider variety of situations. It's nice to retain youthful oblivious in some categories, though. We can't learn everything anyway. It's often enough just to know how to avoid expensive mistakes.
Not to criticize your friend, but it isn't as if things following his path is sn inevitable law of nature.
Coincidentally I went from being an Audio consumer to a person that developes audio hard- and software, and mixes music in my spare time and deals with live sound in acoustically challenging rooms in my work (to keep things short, I do/did even more).
While I certainly spent some money on audio equipment, I can't say that you need infinitly expensive stuff to enjoy it. For me it went exactly the opposite way. Where as a teenager I thought you need all that expensive stuff to make and listen to music on a high level, I now know what matters and what doesn't.
There is a point beyond which things don't matter factually, because they are beyond the limits of human perception. Audiophiles then trick themselves into hearing the atoms that make up the wire, when every measurement doesn't show anything.
One of my mics I prefer most on floor drums is a modified Pyle Karaoke mic I got from Amazon for 30 bucks and added a cheap transformer into. My headphones are maybe 200 bucks (and half of that was paid for reliability, not for sound quality). I got a second pair for closer to 1200 bicks, but thst is just for retouche work where I need to hear the faintest background noises, I actually prefer the sound of the cheaper ones.
I am still amazed by most recordings I was amazed by when I started on my journey. In fact more so now.
We don't need to inevitably turn everything into a stage to show off our own mental superiority. Especially in the audiophile realm these people claim to hear things that they wouldn't be able to pick out reliably in a properly conducted double-randomized blind test. And everything else is basically worthless since you then just measure a persons ability to fool themselves.
Recently my assistant who just started out in the field came for advice. She wanted to spend some money on a mic and audio interface. And I recommended her one for a quarter of the price she planned on spending since it basically had the same measurements and better software support. As for mics I told her to test my mics with that interface and she should use that test to figure out what she wants. Originally she wanted to spend good money on getting an expensive studio mic, in the test my old dynamic Sennheiser MD21 that I got from ebay won. She got the same for cheap from there as well.
Don't get me wrong, I will be the first to hear bad acoustics, missaligned speakers, a dying loudspeaker suspension, a overdriven amplification system, a missed buffer deadline, a bad mix, a bad recording, phase issues, etc. It is my job to notice. But that doesn't mean I can't enjoy the music running over such a system as much as I did before I knew all that. In fact I might even enjoy it more.
I too have this fear sometimes, and for example never want to learn anything about wine, but it's not always the case.
A friend and I have bonded over appreciating the "shit" things, like white bread toast and hotel coffee and I think that's quite a good habit to instill. I love coffee and will hunt out the best spots in any city for a single-origin V60 on ice, but I am equally content in a diner when the only option is literally just "coffee".
Also studying art & practicing photography has made the world a much more beautiful place. Some of my best pictures have been taken in places that are usually considered unphotogenic.
To quote Reggie Watts:
Listen, invest two hundred dollars in a pair of good headphones Take care of ′em, put 'em in your ears, listen to the music Listen to how it′s supposed to be recorded You're missing, I swear to God, forty to fifty percent Of the music that's in there in the first place So if you wanna go back and listen to The shit that you thought you liked You might even like it more, motherf*er
This did inspire me to get better headphones and I have no regrets! I think some parts of the aversion to getting too fancy come from the reasonable ideas of: not wanting to lower your floor, avoiding the hedonic treadmill, and not wanting to increase your burn. This kind of does make sense for coffee: a lot of coffees you get will be out of your control and increasing the fanciness of your coffee is an ongoing expense. For headphones though they're all moot. I can't remember the last time I wore someone else's headphones, and it's just a pretty small once off payment (these have lasted me 5 years). I would strongly recommend upgrading in this department.
As for TVs, I rewatched Alien on my friend's new LG OLED and it was absolutely stunning. I am looking forward to getting a new place and having a nice set up like that. Again just a once off thing.
And just for balance, my computer monitor which I use all the time has an annoying flickering issue that I have just been putting up with for a long time.
Work gave me a 5k monitor to use at home. I set it up dual monitor with my cheap-o monitor. Had to upgrade that as it looked awful. But now maybe better for my eyes?
When the Apple Air, with the M1 chip came out, I upgraded, because the charging port on med 2013 MacBook Pro was failing. It never occurred to me that my old laptop had terrible performance, it felt just fine. The comparison of the two made me not wanting to go back. Monitors feel like much the same, once you had a high DPI monitor, it's hard to go back.
I did look at the website of the local IT refurbishing company yesterday, and you can build a completely workable office/development machine (including monitor) for less than I paid for my current 4K display.
In some sense I am a little sad that I didn't just go down the route of refurbished hardware for 20% of the cost, but my eyes probably appreciates it.
You're describing the hedonic treadmill. But I think you are missing something.
The thing is it does feel good to fix things and upgrade. The treadmill just says your baseline reverts back to where it was. So yeah you're just as happy with the expensive TV as you were with the shitty one, but it did feel good to upgrade, if only for a little while.
So the key is to introduce tiny upgrades and often. If you blow your budget for the whole year on a TV then you only get to be happier once. If you tinker and introduce tiny, sustainable upgrades you can be happier every day.
The sustainable part is important. You can only afford something if you can buy it twice. Don't ever take out a loan to buy anything (apart from a house).
There must have been something that drove him to coffee expert level.
For me, I get dissatisfied and then reach for something nicer and nicer until I hit a limit. I'm just very skeptical he'd still love cheap instant coffee. He was climbing a sort of dopamine ladder. Then he ran out of rungs to climb. Now he has to move to a new thing. Life is almost nothing but impermanence and dissatisfaction. Its a little odd to think you could somehow beat the system. The person who finishes the dopamine ladder would never have been happy staying at the most bottom rung, which was disintegrating for them hence pushing them along to the highest rung. Short of becoming a very serious practitioner in things like meditation and other monastic-type things to fight these urges, this is just a really tough thing to get away from.
Now job, new book, new video game, new movie, new friend, etc. We're almost always doing this in some way.
Maybe those examples are things you don't have good discernment with. For me, I can instantly tell when I have quality headphone speakers. I can hear a fuller range of music than cheap ones. Its almost always obvious and cheap ones are almost always annoying. I have yet to go deeper into audiophone territory and I might never, but I have affordable headphones with really nice speakers inside and I wont go any less quality than this. So maybe for you, you can't tell or don't value it, but there are probably other things you do focus on.
This is the curve of mastery.
I think there's a saying that you learn decades of music so that you can forget it and just play - fairly similar things here
You learn things to the point of mastery. Mastery proves all the ways things won't work, leaving you with what will.
And often what will work are the fundamentals.
well, you don't "forget it" and play. you internalize it to the point you don't need to actively think about it but its still there influencing you
No, it's the hedonic treadmill.
There are certainly diminishing returns but good coffee is objectively better than some pre ground supermarket stuff. Part of it is recognizing what's a good value more than what's the best and most expensive.
I imagine your friend is talking about specific coffee preparations like "espresso" because, for example, there are hundreds of years of traditional Arabic coffee that continue to be appreciated for generations. Your friend reminds me of this movie scene in Mulholland Drive[1].
[1] https://www.youtube.com/watch?v=aVI-Jew-iHo
On the other hand, a part of becoming an expert in some field should be getting to be _realistic_. Learn not to deceive yourself.
I can give you an example from my experience. I got annoyed by my dull knives, so at first I went and bought really expensive knives, the ones made of hardened high-carbon steel that start rusting if you look at them dirtily. And I spent hours reading reviews before buying them. That's probably the "most expensive cup of coffee" stage.
Then I stumbled upon a Youtube channel that explained how to sharpen knives properly. So I bought $70 worth of diamond sharpening stones and re-sharpened my old IKEA knives. And they started working almost as well as my set of ultra-expensive knives, but they are far more practical. The expensive knife set is now a display piece in my kitchen.
Another revelation for me was that past a certain point, there's really not that much difference in the quality of sushi. It's just rice and sliced fish. Sure, there are individual variations between chefs in rice-to-fish ratio, maybe some special soy sauce here and there, but these are all just matters of personal taste. So I now just enjoy sushi for its taste. And instead of a looking for reservations in expensive restaurants, I just drop by my local sushi place and just ask the chef to add a bit more wasabi to the rice.
Knives are a great example. Any chance it was this guy?
https://youtu.be/pagPuiuA9cY
I've watched like 3 hours of his videos on sharpening because he's pragmatic, approachable, and scientific, and now I actually understand how to sharpen a knife and why it works.
Yup, this guy. I highly recommend this channel to anyone who wants to learn to sharpen the knives.
It's not at all hard once you understand the idea!
That's not a bad rule of thumb, but it's also easier to get dry, poorly seasoned rice, mushy fish, overdone or poorly done sauce and toppings combinations, and >1 day old uni than I'd really like at a lot of places.
Your advice makes sense when your local options are good enough, but I don't think you're actually arguing that quality doesn't matter -- only that beyond a certain point the additional discernment isn't valuable.
I deliberately avoided cultivating a taste in coffee and wine after having acquired a taste for good whisky. For exactly the same reason you mention: I knew my utility from drinking coffee/wine would stay constant, but the time and money cost of acquiring them would significantly increase.
And like the author, I agree that taste is acquired through tinkering and trying to be able to discern the qualities of one approach or one design over another. You can't have good taste in anything without having tried lots of variants in that domain -- wine, sushi, furniture, color, style, etc. Having this quality now is more important than ever for senior devs and mid-level devs that want to reach the next level.
When anyone can vibe code, it is the ones with "good taste" in the design of systems that will thrive. Anyone can use an agent and code fast; few will be able to do it fast and well and build systems that do not eventually collapse under the weight of their own tangled mess.
How to acquire it? Have a folder called `sandbox` and just build small projects in there and try new ideas, new techniques, new libraries you come across. Used a particularly interesting package? Go check out the GitHub repo and see how they did it; learn something new. Good taste can be acquired; it just surprises me how few devs actually care to seek it.
Having a distinctive style is also going to become increasingly rare in the age of LLMs. I see it with people at work already. They have no style. They learn very little. They get something to work but have no ability to discern whether it is a “good way” of doing it or simply “a way” of doing it. They have little interest in how or why things are built. I get the sense that they have little or no enjoyment or interest in deep understanding.
As a concrete example I just reviewed a PR for a feature that someone wanted to add to a flask app. It had a ton of terraform code, an aws api gateway, a lambda, etc. then on the flask app frontend they added a page with a call to this new API. I asked why they didn’t just add a route to the flask app. Blank stare response.
Distinctive style is actually bad. You want your code to be uniform, readers should not be unable to tell who wrote what.
Otherwise you run into the danger of having parts that are peculiar and or obscure to everyone except the one who wrote them. That's if you are lucky, if you are unlucky the person who wrote them won't be able to decode them either.
Obviously there’s a line to draw somewhere so that your code doesn’t end up looking like a YouTube comment section or have half of its API with Spanish names. And if by style you mean that overly “clever” or dense code without detailed comments and formatting for readability ought to made digestible by those who lack context about the why/what of it, or that “dangerous” or unsafe practices like rust’s unsafe/python’s exec/C++ UB ought to be only permitted in exceptional situations, sure.
Everything else is so inconsequential that it truly pains me to see people spending hundreds or even thousands of dollars of their time having to indent, comment, or space things in a certain way just to get CI to pass or merge a PR.
I don’t give a fuck that Jeff wants to use 4-space tabs and I cannot tell you how much I resent spending tens of thousands of dollars of Google’s time pleasing the fucking Go linter or trying to figure out errors like “ERROR: const/var” that I can’t turn off because some master artisan truly finds it meaningful and important to make me declare const blocks before var blocks, and their OCPD and fulltime bikeshedding is more important than whatever actual work I’m trying to do to get them paid.
> Everything else is so inconsequential that it truly pains me to see people spending hundreds or even thousands of dollars of their time having to indent, comment, or space things in a certain way just to get CI to pass or merge a PR.
I generally agree with that sentiment, but the solution is to use automated formatting and lint fixing.
I as a mostly python developer have my gripe with mypy. The powers that be decided all code must pass mypy which means I have to spend hours of their money typing out trivially inferable types because myph can't infer the type of the empty dictionary I just defined when just two lines below I proceed to initialize it. Or it can't infer the return type of my function that returns true in half the return statements and false in the others.
If I wanted to write down types I would use another language. And if I didn't want duck typing I would write somekind of ML. In short I would never write out the types because that's compiler work. But nooooo All the cool kids use mypy and typescript so we have to as well.
You say that, but sufficiently advanced automated formatting and fixing can be its own kind of footgun. The unsung heroes behind making absolutely sure my code passed Go linting also enabled an automatic formatter that would constantly remove imports immediately after adding them, because they were now imported and not used.
However a normal person might actually handle auto formatting in their CICD still requires spending a decent amount of upfront time and ongoing maintenance on running scripts/containers that convert true tabs into 4-spaces tabs. Most of the time, anything that’s fully automatically formattable into something that passes linting is so trivially superficial like reordering or replacing or spacing out things, so if it’s necessary for anything more important than that I’d be questioning things.
I can actually see value in encouraging explicit types for most of the kind of stuff I work on, but I’d never choose Python for them to begin with because of that. LLMs make some of this stuff a lot easier to handle in one shot, but the ceremony and constant implication that you can’t be trusted to good work without being forced to wear a monkey backpack with a leash just wear you down when you run into them consistently over long periods of time.
A drive to simplicity and elegance can be a distinctive style.
I wouldn't get caught up in the word "distinctive" to the detriment of losing the larger point about creators being thoughtful and opinionated.
I think you're conflating the look and feel of the website/app with the code itself
I don't think so, the parent is taking about the code.
Within a module, yes. But it's ok for one module to be different from another because, you know, they are different modules that do different things (the difficult part is deciding what level your modules are split at, of course).
The Daily WTF is going to enter a new era soon.
(For those not familiar https://thedailywtf.com/)
I know exactly that blank stare response.
Very sad to me because the building and solving puzzles is the fun part.
Exactly. The best writers all have one thing in common: they’re voracious readers.
“Not all readers are leaders, but all leaders are readers,” said Truman…
Apparently not all 'leaders' ...
~ Michael Wolff, Fire and Furyhttps://www.theatlantic.com/politics/archive/2018/01/america...
Mostly unrelated, but XKCD is relevant here I think [0]. Taste doesn't just require a broad perspective; a broad view of a category produces taste.
[0] https://xkcd.com/915/
I used to resonate with the word "taste" as a distinguishing factor between good and bad quality, but a comment on HN some months ago about one of the many blog posts that talks about taste really nailed it:
"Taste" is just the degree to which two people value the same things.
When someone is rated as having "good taste" it just means that the person rating them values a lot of the same qualities.
The more I thought about it, the more that applies everywhere: Food, wine, clothes, architecture, software design, etc.
I would argue that taste is the ability to reason about one's own preferences.
A person who doesn't consider themself to have a taste in music and listens casually won't really be able to reason about why they like the music they do other than "I like the band" or "I like the song."
A person with taste in music is going to have listened to a larger variety, be able to speak passionately about it, and justify why they like and dislike particular music.
One is a boneheaded consumer, one is a fanatic.
Similarly with wine, you can't claim you've got taste when you've been drinking only red your whole life.
Software is a bit different from music or wine because taste can mean “has the right function and attention to detail and aesthetic and interface and data model and conforms to my expectations and has a certain kind of API and has documentation with actual examples and uses the right JavaScript framework and”, whereas taste in wine can mean “has a blend of flavors that I particularly like” and taste in music can mean “pushes the boundaries of its genre and introduces genuinely new sounds”. Most but not all of what we want out of software is about function and utility and intuitive UX.
But wine and music and other subjective consumption-hobbies that enable snobbery are much less grounded in practicality and tend to become arenas for novelty/pure experimentation (charitably) or countersignaling and identity-building (uncharitably). So you end up with situations where the people who “have good taste” consistently associate themselves with music that sounds legitimately bad to regular listeners or never gets popular enough to be recognizable because it’s about being better than casual music listeners more than it is about the music to them. Or, proclaiming that no taste preferences for icecream products are worthy of respect unless they come from someone that regularly consumes pistachio ice cream - it’s not about the ice cream to them.
That’s why we can say “this UI needs to be collapsible and expanded by default” about software - we want it to be a certain way. The type of people who relish in their taste in music and ice cream don’t tend to say things like “maybe cut the bridge 10 seconds and add some kind of duet with reverb” or “it used too much nitrate fertilizer for loamy soil and ended up kind of woody (for ice cream)” because they want themselves to be a certain way.
There's plenty of room for creativity, and therefore taste, when developing software that meets functional requirements.
I don’t dispute that. What I’m saying is that functional and even non-functional taste in software tends to be grounded in how it can more effectively serve our needs. In a way that’s actually a more profound kind of creativity and taste than something that tries to just look cool.
OTOH music and anything else snob-adjacent aren’t grounded in serving our direct needs to some other end the same way software tends to be, so to them “taste” could be reducible to just a favorite flavor or becomes a kind of status/value/oneupmanship. The products are consumed directly as ends unto themselves so people who have strong opinions on their comparative tastefulness care about that for different reasons than they do software.
I struggle with the music one. I listen to a lot of different music, used see live music at least once a week, and have some strong opinions. I still struggle to explain music to others or why I enjoy certain artists/songs.
It is like the details don't register in a usable way, where one of my good friends will tell me he likes a band because of the guitar tone or the drummer's technique or something else that I struggle to explain or even pick out of the music. I wish I could explain my preference better.
What music do you listen to?
Taste is fashion, baby.
Taste has nothing to do with your awareness of your preference, and cannot exist in a social vacuum.
Taste has everything to do with others opinions of your preference: If your preferences, on display, are enough to bring many others to agree that your preferences are similar to their preferences, you have good taste. If your preferences, when encountered, are enough to bring others preferences into alignment with yours, you have excellent taste. If you can recognise what is the new hotness before anyone else does, you have even better taste. You don't have to be able to justify it, you just have to know it.
You don't need to be aware of this to be happening. You can have incredible taste while just sitting around and doing your own thing.
You can have incredible taste in only red wine without ever tasting white. You can have good taste in only hip-hop and not jazz, or in impressionist art and not abstract expressionism, or any other number of things.
If I know that your recommendation for a category is going to be good, then I know you have good taste.
There are two definitions of taste:
1. How good or bad something is relative to some standard.
2. How well you're able to understand the medium and identify the differences between things.
I think a distinction can be made between bad taste and different tastes.
One of the greatest developers I've worked with, who I learned a lot from and respect immensely, has extremely different tastes in software from me. To the point where I wouldn't say I think he has good taste.
But, his work still has a distinct style and intention. I can tell anytime I come across libraries he had a hand in. I understand what the code is doing and why is is correct, even when I disagree with it.
And I think that is what is important. When working with more junior people, I'll ask them why they did things a certain way and will generally me be with a "well, idk" of some variant of path dependence.
I think developing that intentionality as a developer is important. Which does come with some amount of aesthetic, and I think taste is a defensible metaphor.
I understood “taste” here to mean opinions. It’s not “good taste” it’s just “some taste”. IMO there are many ways to express taste that are not tinkering, such as preferentially selecting things and my personal favourite, complaining :) Nevertheless I think he means opinions rather than some universally good taste.
Haha, "complaining" reminded me of someth that made me laugh a few years back, along the lines of:
I'd like to refine this a bit because I agree, but in a slightly different way.
> I understood “taste” here to mean opinions.
Good taste is the ability to have nuanced and specific opinions.
This comment https://news.ycombinator.com/item?id=45740478 said it well:
> 2. How well you're able to understand the medium and identify the differences between things.
Combining these two ideas: Taste is the ability to understand the topic/craft/medium well enough to have a strong opinion about what good is, and usually that opinion is similar to other well experienced practitioners.
In software engineering it's the ability to recognize an elegant solution that avoids pitfalls that the observer may have experienced in the past.
In other fields it might be that someone with good taste can better understand and appreciate the process or journey to get to whatever $thing is being evaluated, and they appreciate the $thing more because they can empathize more fully with the creator, compared to a layman.
I agree with you. But taste is a skill that should be learned. People who have better taste can select better stuff by their skill.
I feel this is kind of missing the point that was being made. “Better” is subjective.
If taste is being learned, who is the teacher? Are you learning about your own tastes or adopting the tastes of the teacher?
Who has better taste, the user of spaces or tabs? There is no right answer, just those who agree with you and those who don’t.
Some tastes are acquired.
This is the second article I've seen on taste here. It seems to me the author's definition of "tinkering" is primarily describing hyperfocused, repetitive behaviors found in neurodivergent individuals, potentially even a complex form of stimming. I think this is unrelated to taste.
I think good taste in engineering comes down to a mix of skill and knowledge. It isn't just about how you can reach a goal, but rather about having a solid internal map of the world and an understanding of which parts of the map you are unfamiliar with. To those lacking knowledge, the map can deceptively appear much smaller. Skill allows you to effectively find your way to the places you know you can go. With knowledge and skill, taste comes naturally. Those with bad taste, I've found, are those with limited knowledge of the vast universe of tools available and/or the lack of skill needed to utilize those tools effectively.
I don't know if taste is the correct word here but I agree with the spirit of the article, especially the parts on tinkering being a form of practice. Play (in the form of enjoyable tinkering) is such a powerful motivator in learning. In saying that I've found two big limitations with this style of play-based learning:
1. It can easily devolve into meaningless tweaking (see author's point about touching dotfiles) which can still be satisfying but not very impactful. 2. It's hard to maintain motivation when something stops being fun. This is where external motivators like bosses, clients and scoreboards (e.g. Advent of Code) are actually valuable...
I've spent an inordinate time tuning my home nas to what I want to do. e.g. NPM reverse proxy with all kinds of docker apps and configuring it securely made me appreciate how tough cyber security is. My latest venture was to create several docker images for whatever environment I want: VsCode Remote SSH server, a docker image with a custom LLM, sync thing for obsidian notes across all devices
My goal is to de Google with home nas hosting a bunch of services. I want to take all my Dropbox photos and recreate what Google memories does using off the shelf AI tools on my nas. Then email and finally maps with great PoI data.
Probably not all of what I did is a differentiator that put my learning beyond mediocrity. But a good yard stick is if what I built is useful to someone and even better if one would pay me for something.
Some of the worse engineers I've ever interacted with had too strong of a "taste" for what they felt were right and were completely unable or unwilling to work outside of that. Developing a superiority complex because you think you have "taste" is a great way to torpedo your team.
Coding for others is not art, it does not have much meaning in of itself. Your users won't marvel at your choice of language or your usage of design patterns - they care about how the end product looks and works.
In a world like that where you have to work in a team, why you ever wear your inflexibility as a badge of pride? The ones who are the most useful are the ones who can code any way, any how, and can plugin anywhere - "taste" be damned. If you want to be a net positive on the teams you work on, stop thinking it's about you, because it's not.
> Coding for others is not art.
It absolutely is, and I think it's what separates good from bad and junior from senior devs.
Most devs can produce an artifact that more or less works. But one that has an internal consistency others can understand and extend, one which accurately captures the problem as it exists and ways it will likely change, is much more of an art form.
A big part of that is knowing which situations are worth making a stand. Every you write code or leave feedback, your doing it for your team current and future.
Nothing that you talked about pertains to art. Writing good code does not mean you're making art.
You shouldn't strive for internal consistency with yourself, you should strive for external consistency with the other developers in your team. If someone reads your code and immediately knows it was you, you probably aren't doing a good job.
And that's the difference. If you are doing a good job as a software engineer, no one should notice you. If you're making good art, everyone should see you. And that is the difference between devs who think they're good, and devs who are truly good.
Code can be art but not all code should or even could be art. Like there is just zero utility or elegance in formatting your bash script with pretty comments and some elegant data model if it’s just something you run to manually pull metrics from a staging environment or whatever.
I see code more like rocks, nails, planks, tape, shards of broken glass, and a pile of signs that say things like RADIOACTIVE - DO NOT ENTER. If you need to do something cool with that stuff you probably do need to create something that looks pretty interesting and elegant in spite of your choice in building materials. But sometimes you just need to take a NO TRESPASSING sign and tape it to a plank that you jam into a pile of rocks. Don’t need to find a hammer if you don’t use nails, only need it up for a day, just one of a hundred things on your plate to do something of bigger scope and impact - just make sure the rocks are big enough to keep the plank standing, leave and forget about it.
Spot on! The real difference between having great taste and just thinking you do lies in understanding the user's needs deeply. Good design isn’t just about looking pretty; it’s about nailing that value. And yeah, it’s no walk in the park!
> Your users won't marvel at your choice of language or your usage of design patterns - they care about how the end product looks and works.
Yeah, but if the patch is unreadable slop, some tasteful choices that make the code more maintainable will make features and bugfixes come faster for users and number go up for the business.
Unreadable slop and "tasteful" choices are independent of each other. You can make "tasteful choices" that makes code unreadable (I know from experience).
Readability also has some level of objectiveness to it. There's only so many ways you can abstract a concept, and so many ways you can express logic.
In that sense, readability has way more to do with skill in abstraction, than taste. In fact picking bad abstraction layers or expressing logic in odd manners because of taste is a great way to write unreadable slop.
I’d like to tinker with that font, it burns my eyes to try and read the words styled like that, maybe that’s the intent?
Not gonna lie, but I liked the vibe, maybe that's what author meant by different tastes :p
It sent me back in time, very nostalgic. I even took a few minutes to sit and enjoy the moment and remember what it was like to explore the internet on a pixelated CRT in the 90s.
I suspect it's a generational gap.
I’m in my mid 40’s, and have been using computers since the mid ‘80s. What generation are you from?
Yours. I can't explain your frustration then, or why the author's intent escaped you. If you use Firefox there's a little reader-mode icon in the address bar you may find convenient.
I imagine the intent is to simulate the look of an old CRT monitor
i am the author! apologies, i will be adding a toggle to disable the scanline effect
the entire page has horizontal lines washed over it
At the wrong refresh rate so did my monitor at one point.
i am fascinated with that effect and turned off every CSS rule on the page I could find but did not identify how you make that effect
I love it too. Appears to be accomplished with this CSS, which you can tinker with by finding the :after element at the bottom of the <body> tag in browser devtools:
i figured that's what it was, but i didnt know how to find it in the browser tools but i missed the "after" part, so yeah it's in the "pseudo-elements". nice!
Could someone here pitch me on neovim?
I'm a VSCode user and when I hear people talk about neovim and it customizability or its productivity, I think to myself "VSCode is also very customizable and there's a lot of ways to get a lot of productivity out of it, why would I use neovim?".
Surely there's something I'm missing? Does it help you stay more in the flow or something? Is it because it's faster? Maybe it's because it's an editor you can easily use while ssh'd into a remote machine? Please enlighten me!
Most of the things I do with Neovim I could probably also do with VS Code (not sure about autocommands and macros though, I haven't used Code in years). I don't use a mouse much, I have a very keyboard-centric workflow. I was a Code user for years, but did most everything else in the terminal. I figured I would give it a try and I ended up just liking it. I like to tinker. I like to tweak my configuration. I like how I can set autocommands for things, pipe text into Vim and manipulate it, or record a quick macro for some repetitive task. I like that there are "Vim keymap" plugins for things like Firefox, so learning basic Vim keys has helped me outside of Vim. I like that I keep discovering new things Vim can do (and then promptly forgetting them most of the time, but still). I also like to spend 2 hours writing something to automate something that saves me two seconds.
It's absolutely not for everyone, though it looks like some of the pre-built configs (NvChad, LaZyVim, etc.) are decent enough of the box now that you don't need to go on the endless-customization journey if you don't want to. To me though, that's the appeal: tinkering, tweaking, refining. Generally when people ask if they should use Vim, I tell them probably not but try it for a few weeks and see if it clicks in your brain. I had a great VSCode setup, everything worked great, I was productive, but something about Vim just made more sense to me once I got over the hump of modes and all the keymaps you need to turn into muscle memory.
Edit: I also like that I can do abominations like:
("def" @keyword (#set! conceal "ƒ"))
("if" @keyword (#set! conceal "?"))
("unless" @keyword (#set! conceal "¿"))
("else" @keyword (#set! conceal "∶"))
("elsif" @keyword (#set! conceal "⁇"))
("case" @keyword (#set! conceal "⟨?"))
("when" @keyword (#set! conceal "→"))
("begin" @keyword (#set! conceal "⌊"))
to make Ruby look absolutely insane. Is it useful? No. Do people hate it when I share my screen? Yes.
I'll second the enjoyable parts of Neovim shared above, and add a few more of my own: - vi uses most of the same default keybindings, which is available across most distros (in busybox). Meaning I can use the same keybindings in a docker container, appliance server, etc. - With the conform[1] plugin, I can add any CLI code/text formatters that might not be available as a vscode extension. As long as it takes a file/stdin and outputs a file/stdout.
[1] https://github.com/stevearc/conform.nvim
If you like using VSCode and are productive in it, keep on using it.
The big advantage of vim/neovim is that you can do everything in the keyboard and it can be very efficient. It is also lightweight.
However the learning curve is massive IME. I don't like either and pay for Jetbrains tooling.
I don't want to sound like "advising", because long-term recommendations often carry the personal weight with them- whatever I tell you worked (or didn't) for me had an effect on me - it's never guaranteed to have any implications on someone else's life.
But here's what I learned after a long time trying different things and what's worked.
Don't try to find objective reasons for making big shifts in your workflow - be that a change of your major tool, language, technique, or paradigm. What I mean is: don't try to decide if any concrete tool would be good for you. Instead, try to understand the big underlying idea behind the tool. Once you comprehend the abstraction, choosing a concrete implementation of that idea wouldn't really matter - you can carry the big idea with you regardless of one concrete implementation.
In practice, here's what I mean: the idea of vim-navigation is absolutely beautiful, pragmatic, and fantastic, and it's positively worth every minute of the initial learning curve. It's really not that hard - it only requires just a bit of dedication and discipline. I honestly don't understand programmers who choose to be in this field, yet outright reject the mere idea of it after trying it for like six minutes.
Just go with it - you probably will hate me, everyone else in this thread, and yourself for a few days, but then it will grok. Once you have a good understanding of its tenets, you could easily take it to whichever medium you choose to stay in and it doesn't even have to be neovim.
Neovim might be great for you, and maybe not even as a concrete tool to achieve defined goals, but even as a head-start medium to understand the 'big idea' of vim-navigation.
Finally, whenever picking up a new thing, maybe don't try to find elevator pitches. After the initial acquaintance - Wikipedia, GitHub pages, etc. - google instead: "Why does [that thing] suck..." and maybe try instead to find compelling reasons to remain skeptical. Trying to remain unconvinced may help you find perspectives for why a certain idea is a matter of fact might be a good one to have in your pocket.
> the 'big idea' of vim-navigation
What is the 'big idea'?
If you dislike the terminal or aren’t comfortable there, you should try using the vim keybinds for VSCode. They’ll get you most of the way there, and the rest is a lot of customization to get things how you like. The vim motions are the best part! They take a while to get used to, but they’re incredibly convenient.
Thanks! I've also heard this advice before elsewhere.
Also question: is there much of a reason to switch to neovim after learning vim motions in vscode?
In the end, it's still just a text editor. Don't expect that you will get things done n times faster than in vscode without extra effort added.
I think it's more customizable than vscode, but you need to learn some lua or vimscript to customize it. Back then I tried to create some custom keybindings in vscode and realized you can't add new ones, only modify what exists. While (n)vim provides you with out-of-the-box flexibility and more if you use something like LazyVim. What I retroactively like about (n)vim is that, after the initial learning cost, it turns out the default nvim keybindings are transferable to many UNIX tools (less/more, man, journalctl, etc). It feels much more comfortable to write some code in nvim, open up a terminal, and then `man X` without mentally switching the keybindings. Actually, rather than nvim itself, it's more like vim is already preinstalled in many popular server distros. It's sometimes a huge time saver in cases where you're unable to install additional packages to edit some config/code/text files, just type `vim`/`vi` and you're good to go.I did convert myself from a minimal vscode setup (disabled everything & only LSP extensions) to LazyVim nvim a few months ago. I had to tweak my .config/nvim, relearn Lua again, and read the manual. It took me about a week to settle things down and get used to basic nvim bindings.
After another week of suffering trying to fix JDTLS (Java LSP) integration, I'm enjoying my nvim setup. Unlike vscode sync which requires you to login, I could just git clone my `.config/nvim` and I'm good to go.
I used vim for decades and the sensation is that I can hold the code in my hands and manipulate it directly. Other editors feel like I’m wearing thick gloves, can’t move correctly.
but it’s like learning to play the piano, it only feels natural after years of practice
nowadays I’m faster with Cursor so it doesn’t matter as much
So you use Cursor now? Do you at least still use vim motions there?
Used to use VSCode. There was a point in time where it felt clunky on Wayland due to electron.
Neovim worked the same just about everywhere and I could choose my terminal. Especially with tiling, for me it's just feels better.
For one, you don't have to figure out how to remove whatever random AI UI element and integration MS decided to introduce and turn on by default every update.
I used to tinker with fonts, colors, etc but as I’ve gotten older I just accept the defaults in most things. You can waste any number of hours on that stuff and in the end it makes very little difference.
Fonts are like my dotfiles, I fucked with fonts.conf a decade+ ago and have just lived with that since then.
So I get to be very particular, but also not have to care about tweaking, I did all the work back when I had time for that.
I will argue that if you stare at a screen for hours a day, might as well make it pleasant with good hinting/anti-aliasing/features and a professional font instead of Dejavu Sans lol
I wish this viewpoint were more common/well-known. Somehow people get it in their head that people are tinkering with all their stuff constantly and never working, but just as TFA says, you'll have configs that haven't changed in over 6 months and are customized to your liking so you can work more efficiently and comfortably. Get a new PC? rsync configs over, or git clone your dotfiles repo or whatever. The work you put in doesn't disappear.
I wish I could tinker with the font on this website. It flickers as it scrolls and does my head in!
It's the scanline effect, here's three lines of JS to disable it from the developer console
And from an accessibility standpoint, default fonts and colors are very safe as well. They tend to be easier to see and process.
I still tinker as I get older, except instead of fonts I'm buying a dual monitor setup with a 6-foot standing desk.
My life hack for switching fonts - buy a Berkeley Mono license so I cannot possibly use any other font bc I’d be wasting money. Nice font too.
Feeling the same. I used to have a highly customised Liunx setup, then I got a macbook from work and hated everything that was different from what my linux desktop did. But eventually you just get over it and realise it's all fine and works. Being unfamiliar with something is different from it being bad.
I maintain a personal dotfiles repo on github, and when I start at a new job etc, I just git clone my dotfiles repo and then run ./setup.sh and everything is set up nicely with my fonts, colors, and stuff. It didn't take much effort at all and I get to use what I like. And I haven't tweaked my dotfile in years.
^^^ this, with life coming more to the ending part you start to value your time that you got left
tinkering is good when you're < 30 or maybe even < 25
> No time spent learning, is time wasted.
From TFA.
If you don't want to tinker, don't! But it's absurd to suggest that it's only something for children to enjoy. (30 should not be considered near the end of your life btw.) Please don't tell others they should feel bad about learning for fun because they're adults.
Tinkering is good no matter how old you are, this is weird gatekeeping
Or in this case, tinkering with fonts simply reduces legibility.
Tinkering with fonts is the only way to get fonts that improve legibility by replacing ambiguous glyphs with unabiguoius. ie programmer fonts. Every day it boggles my mind that password managers use fonts that don't distinguish 1Il| 0O etc. cut & paste does not help when you need to speak them into a phone or type them into some other device. Same applies to simple part numbers, serial numbers etc, just all data.
Something I say about complainers applies here:
In the entire history of the world not one thing has ever gotten better by accepting something as it is.
Go ahead and never tinker, but don't delude yourslef it's a virtue. It's merely something you're free to do because it doesn't actively harm anyone else.
The irony of an article about taste displaying little of it.
The fact that the author went out his way and styled it very uniquely displays that he does have taste :) It is just that your taste is different. Like another commenter pointed out, I liked the style (though I hated the pixelated font to begin with)
Once one gets over the infatuation phase one realizes how subjective taste really is. I thihk there are some common points though that one can tell someone has refined taste without necessarily liking it
Funny part is he points out at the end that it's highly subjective...
I actually really liked the look of the blog. It gave me a retro vibe, which is obviously what he was going for. But I'm also reading on my phone. Maybe the choice was more annoying on a larger screen.
I just came here to say I think the blog design had a really cool look, it brought me back to my early days plugging away on old Apple IIes and IBMs.
As a person who doesn't do much tinkering the thing I dislike about this article is it doesn't really get across to me why the author likes tinkering so much or why I should either. Not saying that the article is bad but I was curious about the author's mindset and felt he didn't talk more about the appeal of tinkering.
> is it doesn't really get across to me why the author likes tinkering so much or why I should either
It's literally stated in the second paragraph: "It’s how I learn." You can learn how the things around you work by tinkering with them.
Of course, you can then ask why someone would want to learn things, or why they enjoy learning, and I honestly don't know how to explain that, but I feel like it's the sort of thing that shouldn't need to be asked.
If you're going to make changes, make big changes. Learn to squat 100kg. Finish a triathlon. Learn intermediate Chinese. These are all impactful goals you can hit in a year, worth way more than colors and fonts.
Web designers with good taste in colors and fonts often make more money than weightlifters, triathletes, and the average Chinese speaker.
Nobody who is raising children is able to do those things in a year.
Raising a child well is also an impactful goal.
Millions of people with children do those things every year.
Increasingly many aren't raising children either. I'm trying to move to a saner country.
I’m starting to believe that taste in code isn’t something you’re born with. It’s something you build after getting burned by your own mistakes again and again. I used to think some code just looked nice, but now I can explain why it works.
How did you develop your sense of taste in code? Any stories or lessons worth sharing?
I don't think "taste" in UI-adjacent things is important.
Tinkering habit is kind of important as even small interactions help to build an internal model of how things work, how to operate them, etc. And this model might generalize.
The best object for comparison you all are missing here are camera lenses.
What exactly does "taste" mean in this context? Taste is about artistic quality. Aesthetics is generally a tertiary concern when it comes to software or hardware tinkering. That assumes it's a concern at all.
And while I'm talking about artistic quality on HN, I have to take some obligatory potshots at the website in question. When I have to use Safari's reader mode to see what you wrote, something has gone terribly wrong.
I know everyone is busy but the author provides the definition explicitly:
> And what I mean by taste here is simply the honed ability to distinguish mediocrity from excellence. This will be highly subjective, and not everyone’s taste will be the same, but that is the point, you should NOT have the same taste as someone else.
Concisely, discernment.
So your comment about “artistic quality” may apply. But from your ends sentence It seems you equate “artistic quality” to aesthetics , and I don’t think that’s what the author intended.
That's on me, I missed that.
If you could indulge me a bit, the author in me wants to be pedantic about this. :)
In my defense, changing the definition of a term at the end of the article is begging to be misunderstood.
> This will be highly subjective, and not everyone’s taste will be the same, but that is the point, you should NOT have the same taste as someone else.
Lost me here. If tastes don't converge in the limit, then there's no point and you're just justifying a hobby.
Wrong. ;P
In my day, we'd say that as kids we'd take apart all our toys to see how they worked. We didn't necessarily call the end goal "taste"; it was to understand how things work, and to learn which results require which trade-offs.
Unpopular opinion here probably but: Tinkering is also a great habit to be disappointed and unhappy. I love software and programming, but the apologetic requirements that can come from users mean adding a lot of complexity to software, that leads to many bugs and very slow programs. Everything has a cost attached.
> In fact, the last meaningful change to my config was 6 months ago.
I know that's supposed to convey restraint, but it seems too much fiddling to me. But I've been using Vim for decades, so I only touch my .vimrc when something breaks.
Reminds me of the Steve Jobs biography. He was a notorious tinkerer. He obsessed over the design of Macintosh, the NeXT step cube, and a bunch of other products.
He also valued taste a lot. It seemed like the worst insult Jobs could have for someone was to say they had no taste. Other insults may have used stronger language, but it always felt that him saying someone had no taste was to say they were worthless and he had no respect for them as a human being.
I don’t think he tinkered much himself. He let others tinker until their output met his vision.
No he definitely tinkered. Yes, his primary tinkering mechanism was "having others execute his vision," but like if that's not tinkering then neither is editing config files like the article author mentions, because you're directing other peoples code into configuration.
There's one story from Macintosh era where he spent weeks harassing one engineer over the calculator app: "it looks too bloated, it looks afwul, these lines are terrible.." until the engineer got fed up and said "here this is the Macintosh Calculator App: Steve Edition. You get to pick your font, your layout, your color theme." And Steve sat there for hours literally tinkering on a calculator app until he got what he wanted.
He tried to get Paul Rand to change the colors on the NeXT logo--who promptly directed Steve to go have s*x with himself.
There was one point in the Apple Store's inception where they had basically reached done, and Steve decides that he didn't like a certain aspect of it, which was essentially going to require them to redo the entire thing. So he did, and they started from scratch. I think it might have been the Carrara marble floors but I can't remember for certain.
I'm not saying I have immense respect for the guy as a human being, but he was absolutely a notorious tinkerer--a complete menace of one.
I'd make a weaker statement - tinkering helps aquire (your personal) taste - not necessarily a good one.
If anyone's wondering, author makes no attempt to demonstrate the veracity of the title, he just talks about being a tinkerer and why it's important to have taste nowadays, and lets the reader make the connection.
edit: I lied, the connection is that if you don't try many things, you won't know what's good and what's bad, and if you don't tinker, you won't try many things.
Ah yes, time for the daily article of the form "If you don't do <thing I frequently do>, you aren't <a good person>"
This applies to fashion as well. Hackers should tinker with their clothes and jewelry more.
My coworkers are shocked and confused that I own/use a sewing machine and see at as some legacy old timey thing. It's true that you certainly don't need to own one anymore and you won't save any money making your own clothes. But you can modify and make loads of custom cool stuff that are impossible to buy new.
I've got a few things I made that just bring a lot of joy knowing it's the exact thing I wanted which you can't buy, and couldn't justify paying someone else to make either.
Except "taste before skill" is a well known issue and source of frustration for starting artists: They can already see what's good and they know what they want to do, but they don't yet have skill in measure with their taste and get locked in a feeling of inadequacy. They resolve that if they stick with it. So, taste looong before skill.
So...
> If you don't tinker, you don't have taste
> Acquiring good taste comes through using various things, discarding the ones you don’t like and keeping the ones you do. if you never try various things, you will not acquire good taste.
No. That's not how it works.
Agreed, although I'd characterize it as more closely related to curiosity. Some people can select particular items that make themselves look good or are high-quality for example, but are surprisingly some of the least curious people, whereas I don't think the same can be said of tinkerers. People lacking this type of curiosity get frustrated easily if you want to discuss ideas or hypotheticals, nebulous intangible problem solving etc..; they want the right answer and an authority to point to. People with this type of curiosity want to discover why it might or might not be true regardless of whether it's a solved problem for others. The former type of person wants to look up what the viewpoints are like before they agree to go on a hike, getting frustrated when they're not there yet, and the latter just wants to hike and see what it's all about, enjoying the process.
Consequently, maybe taste can be acquired by impersonation or purchased, but could be more superficial than taste acquired through deep iterative tinkering and repetition. Much like someone watching a youtube video that tells them so and so is the correct way to do something, therefore it is, and it may be true, but they didn't necessarily learn that organically or in a way that they could analytically discuss.
Incidentally, the person without this type of curiosity is extremely dull to engage in conversation with from the perspective of the curious person, and in the reverse the curious person would seem to be wasting the incurious person's time because they aren't getting to the point and there's no tangible benefit in the conversation.
Incurious people seem like they're the typical tourist or the consumer, eliminating as much inconvenience as possible but not necessarily interested the exploration of the what or why of either the problem or solution, making it hard to identify where the depth is. Good at delegating, but terrible managers.
I feel like this is true as ever, yet the current environment seems to be going towards the opposite, I.e. not about taste but just doing as much as possible, as much hours, as many responsibilities, just shipping out slop as fast as you can, don't waste time on stuff, all about being a 1000x AI engineer etc..
I'm tired boss
You don't have interesting taste if you write articles like this.
People are just figuring out taste matters for product, so at this pace in 10 years they'll figure out that having novel tastes that aren't just a distillation of the echo chamber you live in matters just as much.
I love tinkering but I'm very minimalist as far as tooling is concerned. I don't like to use too many tools. I only use tools to automate activities that I do frequently. I don't try to micromanage and automate every aspect of my existence. Some stuff is better left uncounted and unplanned.
A lot of other people who like tinkering seem to have a kind of obsession with using all the latest gadgets to solve the tiniest problems. IMO, there's a point when you're so into automation that you end up looking for problems to use your tools on. You end up introducing new problems into your life, just so you can solve them using your tool of choice. Your life becomes like a Rube Goldberg machine.
The examples given are not what I would consider "tinkering." Changing editor configs? Tuning mouse sensitivity? Really?
> GitHub desktop rather than the cli (at the very least)
I keep hearing this same "GitHub Desktop bad, git cli good" take, but I just don't see how the cli can compete terms of things like being able to go through each changed file, see a clean visual representation of all my changes, and to choose exactly what lines I want to commit just by clicking on them.
God I hate how much this reads like I wrote it about me
I despise the word "taste" for preferring specific software and workflows. Why are you selecting for aesthetic experience over usefulness?
I do get satisfaction from the results of my work, not through the mechanical process of arriving there. Tools are useful or not and this is the category by which I decide to use them or not.
Is the author doing that over usefulness or doing that in addition to usefulness? Some people would also enjoy the journey with the tool, along with the results. Just because someone enjoys the 'taste' of the tool doesn't mean that they don't care about usefulness.
Also usefulness is very subjective too depending on the context and scope.
> And what I mean by taste here is simply the honed ability to distinguish mediocrity from excellence. This will be highly subjective, …
It is not about aesthetics , from my reading. You brought that connotation into the conversation.
Can the aesthetic experience improve usefulness? A million years ago I had an MP3 player with all of my mp3s on it. I listened to it every now and then. But when the iPod came out, and I put my same MP3 library on there, I listened to it all the time because it was super nice to use and interact with
Not only that but a tool is only useful in a specific context
Good for you, some people enjoy the journey.
If you have to wtite blog post about how you have taste and other don't, you clearly haven't got it either.
It's hard to take seriously anyone who unironically says "there are two kinds of people".
That, and the judgmental humblebrag tone leads me to believe the author is young. I suggest they focus more on learning than writing these vapid articles.
> Have you ever spent hours tweaking the mouse sensitivity in your favorite FPS game?
Ah yes, the true shibboleth of taste-havers.
That's just OCD, not taste.
Maybe tinkering is a necessary but insufficient condition for taste
Do you think it is?