12 ms·
Amateurs obsess over tools, pros over mastery
- JamesonNetworks 3y agoAnother of these is: amateurs focus on code, professionals focus on the data model.
- rtuin 3y agoAmateurs would disagree
- j45 3y agoClever architecture can almost always beat clever coding, languages and frameworks.
- _a_a_a_ 3y agoSpeaking as a pro, or so I like to think, I'm not sure what you mean by data model. Are you simply talking about data structures?
- bradley13 3y agoUm...I think his point is clear? First, you understand your data, and decide how to represent it. Only then can you write code to work with that data. Poor programmers dive into methods and algorithms, and then try to force their data to match. Which almost never works.
- SoftTalker 3y agoPretty much. A manager early in my career would say “get the data model right and the code will write itself” and I’ve found that to be mostly true.
- _a_a_a_ 3y agoIt wasn't clear. If he meant data structures then say data structures. If he meant something different or broader by 'data model' then I don't know what that was. I value plain, simple code and equally plain, simple writing. I am becoming dismayed at the trend towards fancy labels on basic things. A while back someone talked about 'affordances' in C# which sent me into a tailspin because I thought there was some significant area of the language I'd never encountered. Turns out he just meant attributes and methods.
- pessimizer 3y ago"Data model" isn't a confusing term, and "data modeller" is a profession. They work on data models.
- SuperCuber 3y ago"modeling your data" is terminology that I encountered before, not sure why you find it unusual /shrug
- _a_a_a_ 3y ago@pessimizer, @SuperCuber - So educate me. Let's base it on something I've actually done, a code analyser. For this you parse the code into an AST, and to deal with lexical scopes of declarations of procedures/variables etc. you have a stack of symbol tables. So we've got a tree (the AST), we've got a symbol table for the current scope (a hash table of <id, info> pairs), and we have a stack of symbol tables (a stack). A tree, a hash table and a stack. Those are data structures. What more needs to be added to this definition to turn it from "data structures" into a "data model"? Firstly this is a serious question, secondly I have a great deal of experience of defining data structures to solve problems, so I can't see what adding an abstract term is doing. You could say that the extra something is the specification/maintenance of the correct interrelationship between those data structures (and I'd agree), and there's a word for that: it's called 'code'. I genuinely don't understand what you're getting at and I'd genuinely like to know.
- _a_a_a_ 3y ago
- tredre3 3y agoData structures is often part of the model, but that's not what the "data model" is all about. It's about having a good overview of how everything is connected. https://en.wikipedia.org/wiki/Data_model https://en.wikipedia.org/wiki/Data_model
- stephen_cagle 3y agoI think this statement is actually much more true than the titles' statement (for programming).
- ambyra 3y agoYes! And amateurs focus on tools, pros focus on execution/getting it done.
- klysm 3y agoGood data model means less code
- ryanwaggoner 3y agoWhat's wrong with being an amateur?
- NewEntryHN 3y agoPeople making comments on the code editor you use before using the mouse to select text like monkeys.
- _a_a_a_ 3y agoThe number of times I've intervened on HN with someone for whom functional programming is God's answer[1] to everything and anything procedural suxx, it gets you down a bit. [1] used to be OO but God moved on I guess
- echelon 3y agoAt the end of the day, it's about solving problems with the budget you have. You need the appropriate discipline to allow for maintainability and growth, but not to over-engineer. Boring CRUD is faster and more sustainable than an abstraction that cannot be modified for new requirements. Or understood by future (perhaps misfortunate) maintainers. One day your thing will become the tech debt for your organization. Write in a way the custodians of the future won't curse your name. I've inherited systems where the original authors tried to be "smart": over-use of functional programming, "cute" abstractions, "powerful" mixins, layers of lazily-dispatched decorators. It's almost ways caused nothing but headache and pain.
- deleted 3y ago[deleted]
- zelphirkalt 3y agoI agree. And the budget also limits the time you have for thinking about a really good design rather often unfortunately. Choosing the right or sometimes no abstraction is key to making something that is extensible, readable and maintainable. That said, starting out with the simpler concept, usually results in better composability of parts. This is especially true for pure functions vs classes which are not really classes but namespaces artificially made into classes because "OOP". In the end math wins, if you wanna call it like that.
- j45 3y agoHaving started in functional programming before ending up in OO, I always noticed the web was more functional than object oriented and a great deal of work was expended extrapolating languages to the web though frameworks to often achieve such an effect.
- hiepph 3y agoI learned this lesson: focus on mastering the language and understanding the fundamentals of networking instead of chasing new shiny web frameworks. Web frameworks come and go, but the language and network protocols are here to stay.
- hereonout2 3y agoLearning the fundamentals does pay off in the long term. I've not worked on web apps for a long time but this week helped some junior colleagues set up a web proxy to do SSL termination and explain there's these things called caching servers that can vary and probably solve a lot of their performance issues. I didn't know or really have to care what frameworks they are using.
- Swizec 3y agoIgnore the framework wars, learn: - data modeling - domain modeling - system design - managing complexity - syncing state - teamwork Those never go out of style.
- j45 3y agoSo true. Design of systems inherits and overrules in the long run, if there is a long run for a codebase.
- Swizec 3y agoThe best frameworks are just formalizations of what worked for some people. The worst are formalizations of what some commitee hopes will work.
- j45 3y agoHaha. Understanding software based on it’s origin story is definitely one overlooked aspect. Most developers could t hold themselves back for a year or two to see how much of a framework boils away or can be generalized more elegantly. It’s one of the best lessons I’ve ever learned.
- seabass-labrax 3y agoIt is not necessarily best to learn them in that order though. I think you need to model the domain before the data at the very least.
- gigel82 3y agoWhat are you going to master if you don't know your tools?
- j45 3y agoThe things that are the same regardless of the tools like the fundamentals of breaking down the right problem to solve in the right way before seeing what the technology footprint to solve it might Need to look like.
- wongarsu 3y agoAn amateur obsesses over using the best web framework, a master can write a great website n any framework. Of course whether this is an actionable insight is an entirely different question. The master at least partially has this ability because he has tried lots of different tools. But if you ever phase analysis paralysis over tool choice it's worth remembering that in the end the choice might not matter nearly as much as you think.
- Fricken 3y agoIf you look at the best photographs of the 20th century, a great deal of them were taken with cheap point and shoot cameras. Then you have the legions of middle aged men with $20k in gear that are incapable of shooting anything other than trite cliches. You also have out of shape middle aged men noodling along on $10k bikes. It's worth it for an elite cyclist to obsess over their gear, every small optimization is material to them, but until you're pushing against the upper limits of your fitness the gear isn't the thing you should be losing sleep over.
- bluedino 3y agoReminds me of a friend who always goes overboard. $400 in drills and levels to hang a couple pictures in the living room. Doubt he's touched any of it since. He also spent $1,200 on an DAC, amp, and headphone combo, then bought a $150 pair so he doesn't wear the nice ones out.
- dp-hackernews 3y agoQED: "You Need a Stronger Body, Not a Better Bike" https://www.trainingpeaks.com/blog/you-need-a-stronger-body-not-a-better-bike/ https://www.trainingpeaks.com/blog/you-need-a-stronger-body-...
- renewiltord 3y agoAmateurs obsess over writing blog posts. Pros over code. The blog post is not wrong. It's just a tweet-length insight HumanGPT-expanded.
- AnimalMuppet 3y ago"Pros over code"? Was that deliberate? If so, nicely done! (For those to whom English is not a first language: "Pros" is one letter away from "prose", and the parent is complaining about people who focus on blog posts. And "over" can be taken as "they are writing prose in preference to writing code". It's a beautiful twist of language, if deliberate. If not, it's a very nice coincidence.)
- mkl95 3y agoI dislike these generalizations. There are pros and cons to both approaches. Engineers who have used the same tool for a long time will often fail to admit there may be better tools out there to solve a specific problem.
- haswell 3y ago> We obsess over these tools, treating them like a crush—a fleeting infatuation that momentarily captivates our attention. All of this is wasted effort and delusion. Amateurs obsess over forcing binary choices. Pros over integrating the best of what is available into the continued mastery of their trade (I actually really dislike this kind of generalization/framing, so my tongue is planted firmly in cheek here). I think there is some truth in the general message of the post, and agree that complete fixation on tooling is a sign of a lack of focus on what matters. But I'm curious how the author believes the "tried and true" gained that designation, if not by trying things that don't work and returning to the things that consistently do. There's a different failure mode involved in a complete dedication to sticking to the tried & true: blindness to the moments when real step changes occur resulting in something that is truly better than what came before. I'd argue that a pro does spend time obsessing over tools, but is differentiated from an amateur by knowing when to stop. I'd also argue that framing these behaviors as things characteristic of "amateurs" and "pros" is not useful.
- leidenfrost 3y agoI like that specific loment of learning when you are using your usual tool but at one point you ask yourself "is this tool really neccesary? I think I'm using it because habit more than real utility"
- klabb3 3y ago> I'd argue that a pro does spend time obsessing over tools, but is differentiated from an amateur by knowing when to stop. Well put. A more general statement (but less catchy) would be that “pros” navigate the search space more efficiently when evaluating tools. I’ve noticed with myself that I prefer fewer tools now, and value maturity a lot more. When I was younger, I thought tool makers were near-perfect, and the few imperfections would have no impact on lowly me. Then I realized that tool makers are just regular people and that their tools are often poorly made, or too blunt, or too specific. Now I know tools come with pain, so “looks nice” or “cool” is no longer good enough. Instead, the tool needs to be more useful than the pain it causes.
- throwawaysleep 3y agoWhich is considered important by interviewers?
- xbar 3y agoFalse dichotomy and flatly wrong, on both counts. Further, my favorite line: "It is real alpha to ignore the allure of novelty."
- wouldbecouldbe 3y agoAnyone posting amateur vs pro is lost. Playing the same hype game.
- atarian 3y agoThis guy is clearly a pro. He quotes Seneca and Bruce Lee.
- earthboundkid 3y agoI bet Seneca could have beaten up Kareem Abdul-Jabbar. Edit: actually now that Kareem is a writer, it would be neat to read him and Seneca writing together about how to beat up Bruce Lee.
- QuadrupleA 3y agoAmateurs post sweeping generalizations about what's right, pros learn the nuances.
- abnry 3y agoJust like the good writers, who hedge and qualify their every statement. It's the amateurs who make the bold claims!
- codeflo 3y ago> The true magic lies not in the guitar itself, but in the virtuosity of the musician who brings it to life. Arguments like these are often used to defend unpopular technology choices, like (insert disliked programming language here). "A true master can use any tool!" And yet, I've never seen a professional guitar player use a cheap shitty guitar.
- raddan 3y agohttps://en.m.wikipedia.org/wiki/Frankenstrat https://en.m.wikipedia.org/wiki/Frankenstrat
- AnimalMuppet 3y agoNot "shitty". I presume it wasn't cheap, either. He custom modified it to be exactly what he wanted, not to save money.
- anjel 3y agoEVH Built it pre-success, when he was poor and the neck was bought as a binned factory second.
- Lukas_Skywalker 3y ago> Van Halen bought the body and maple neck (which was a factory reject) for $130 [...]. Van Halen was able to purchase the factory second body at a discount price of $50 due to a knot in the wood. The $80 neck had jumbo fret wire, and its truss rod was adjustable at the heel. That seems to be pretty cheap. I agree he didn't do it to save money though.
- Forge36 3y agoIn which setting? The quality of a guitar has an impact on the output. A bad player won't be better by a good instrument. There are known examples of masters forced to use bad instruments to create great music. I believe this story has been on HN before https://www.entrepreneur.com/leadership/when-keith-jarrett-played-on-a-very-broken-pianoand-then/309653 https://www.entrepreneur.com/leadership/when-keith-jarrett-p...
- raverbashing 3y agoYes, think about this when you hear the next discussion about vim vs emacs
- dale_glass 3y agoIt's a bit of a platitude, IMO. You can find plenty pros that obsess over tools. Like look at Adam Savage's Tested youtube channel, in which he makes videos surrounded by a vast mountain of tools, many of which he made or customized himself. Recently he geeked all over the fractal vise. The difference I'd say is that pros have a better understanding of what they need, don't expect tools to magically solve problems, and often customize or even make something from scratch.
- izelnakri 3y agoI think you’re 100% on point here.
- galangalalgol 3y agoAs an amateur my experience is that having the exact right tool for a job is way better than having the very best quality of the almost right tool. Also for tools with consumables, the quality of the consumables matters way more than the tool that you put them in.
- DavidPeiffer 3y ago>Also for tools with consumables, the quality of the consumables matters way more than the tool that you put them in. I fully agree. I wasted hours dealing with brad nails that didn't go in all the way, only to bend over when I tried to nail set them. Paying more for Brad nails fixed the issue almost entirely.
- __MatrixMan__ 3y agoI'm not sure I agree. Eventually your garage is totally full of exactly the right tool for some job or other and you can't find anything because there's tools in the way. It applies to software too. If all of the complexity in your project is placing the perfect tools and configuring them correctly, you end up with a codebase that's 90% tool-specific and even coders that think they're fluent in your language of choice have a steep learning curve if they're gonna work on your project because the complexity is no longer in the project's alleged language, it's now in 15 separate DSL's that they've never heard of. There's a balance to be struck here. I see this especially often in python projects with complex pre-commit configurations. It's like we secretly need that compilation step, even if our language doesn't strictly require it, and it just becomes a rug to hide overspecialized complexity under.
- mrkeen 3y agoBut who focuses on the adage?
- deleted 3y ago[deleted]
- tonystride 3y agoFrom a pianist perspective, when I was in college I played at a restaurant with an old beat up grand piano. I’d constantly complain about how bad it made me sound. Then one day I went to hear one of my mentors play on said piano. He sounded great. It was a pretty vivid demonstration of this principle for me. One thing though, is that this title doesn’t paint the idea of amateurs with a great tone. Nothing wrong with being an amateur since it really means to do something for the love of it. I think pros need to be careful not to lose their amateur mentality wrt to the love.
- lowbloodsugar 3y agoAll my major successes in life have come from curiosity followed by perseverance.
- galkk 3y agoI heard great name about tool obsession: “tool junkie”. , as I’m too guilty of it. I suspect that for the brain the dopamine reward for spending time at more or less passive researching and coming to conclusion that zzz is the best is faster that grinding for becoming master
- lockhouse 3y agoYou must choose your tools before you can master using them, it's not an either or. As an amateur woodworker, I can tell you that the quality of tools can make all the difference in your enjoyment. You absolutely will notice a difference in the quality of your tools. Quality tools feel better in your hand, almost like an extension of your body. They cut cleaner and with greater accuracy. They are less likely to strip screws. They are less likely to break causing you frustration and an unwanted extra trip to the store. There is a point of vanishing returns. You definitely have to determine what level of quality you actually need, but Makita 18V cordless tools are a massive step up from their no name Walmart equivalents.
- ropable 3y agoAs a likewise amateur woodworker, this resonated - up to a point. When I started in the hobby, I spent a lot of time in the accumulation phase which mostly consisted of buying cheap or second-hand tools to unlock specific capabilities. Just having a table saw (even a cheap one) allowed me to build a lot more pieces, more quickly. This is a seductive step, as each new tool (router, bandsaw, jointer, etc.) earned me a whole new capability and new options. After the initial excitement, I settled down into the optimisation phase where I started learning how to get the best results out of the tools I had. This involved a realisation that just having a tool doesn't automatically confer mastery with it, and that you need to put in the time. IMO this is the step where you learn the value of a "good quality" tool, i.e. you identify any friction or frustrations with the cheaper tools you have. You also identify which ones actually get used, therefore which ones are worth the upgrade. I feel like the optimisation phase blends slowly into the "mastery" phase over time: you switch over to thinking about design instead of execution, workflow optimisation instead of "how will I build this", shop organisation instead of having as many tools as possible on hand. Mastery is the decision (conscious or otherwise) to get the best out of your tools, rather than having the right brand.
- drewcoo 3y agoAmateurs don't get paid. Pros do. Sometimes pros get paid for having automated minions generate content. Was this short piece AI-written? There are lots of strange artifacts that I'd not expect from a human author. Like the fishing analogy with a goldfish.
- nottorp 3y agoIt didn't sound like blogspam to me, while most LLM generated text does.
- 23B1 3y agoWritten by "Adam Singer, Marketing executive, author of a Substack called Hot Takes" k.
- whoiscroberts 3y agoPros tend to deeply understand the fundamental problem that the tool is solving and are probably capable of either making the tool or deeply informing the process that resulted in the tool. An amateur or beginner is often looking for tools the hide those knowledge and skill gaps that a pro does not have. I wonder if Savage would have that vice if he didn’t generate income by making videos chronicling tools. In my experience, I’ve witnessed many beginner software engineers spend far too much time hunting for a tool or library, I always encourage them to take a step back and consider if they really need that tool. Often they don’t the tool and if they do it’s sometimes a better choice to code it themselves.
- zabzonk 3y ago> It is real alpha oh, please.
- psychphysic 3y agoWell of course every pro was an amateur once. So they would have gotten the right tools to practice with on the way to mastery...
- manmal 3y ago> ADHD-ridden market > It is real alpha I have a hard time reading past such phrases. That put aside, I do agree with the idea that tools are a means to an end. Some are essential (like glasses for vision impaired, or a computer for a software engineer). But using tools also gives us skill and understanding. Author brought up guitarists - well, many world renowned guitarists have 100+ different guitars at home. To become a master, you need to learn most of the available tools, and learn them well. There is a lot of cross-pollination going on. You learn the sitar and the banjo, you learn flamenco etc and this will greatly influence your understanding and style. Learning purely from books might work for some people. But I think using good tools in the correct way is essential for many, in order to reach mastery. Writing is a tool. Flash cards are a tool. Learning in groups (or hanging out at the hacker space) could be called a tool.
- whstl 3y ago"many world renowned guitarists have 100+ different guitars at home. To become a master, you need to learn most of the available tools, and learn them well" Most of those guitar players made their name as a guitar "master" using a small amount of instruments, and only started collecting later. It was not uncommon for songs made with a single guitar to have paid for all the other instruments. Sure, a lot of them continued breaking new ground after acquiring more instruments, but that was definitely not the source of the mastery, it was already there before the big collection started.
- manmal 3y agoRestricting yourself to even one guitar doesn’t mean you are playing only one instrument. Use a capo, tune it down, tune it up, remove two strings, play blindfolded, play behind your back, use it for strumming, beating, slapping, switch up picking styles, switch pickups, modify the neck, use different strings etc - these all change the instrument to a degree that you could call it a different one. I‘d wager that people who don’t do this _and_ don’t use different guitars will not reach what people call mastery.
- EdwardDiego 3y agoYeah, that ADHD one was jarring.
- chasebank 3y agoI think people that obsess over tools want to do it the 'right' way. Problem is, there is no right way. Most often, people never get started. Diet, work, sports, etc. I've seen it a million times. People research to death to try to figure out what the right thing to do is. The act of doing is the right thing to do. Just eat less and exercise, don't obsess over which new fad diet and exercise program is best. Just pick up the keyboard and type, don't research the best editor and plugins for two months. Go to the driving range / get lessons, don't buy a new driver. I think the root is everyone wants the path of least resistance but there is no shortcut in anything.
- landgenoot 3y agoThe problem is that there is too much garbage and too much consumerism. Sure, go ahead and buy the cheapest rain coat you can find. You are going to regret it. Need a bookcase? Pick the cheapest Billy from IKEA. You can only put it together and take it apart exactly once. This has nothing to do with obsessions, but rather avoiding to get fucked over crapware and planned obsolescence.
- adamnemecek 3y agoThis is an Anglo-Saxon meme. There's a French proverb "Good tools make good workers".
- moandcompany 3y agoOn tools: "Tools" are sometimes useful for getting a job done. - "Good" tools don't get in the way of getting a job done, and often make tasks easier or faster to perform. - "Great" tools can enable entirely new ways of completing tasks, and sometimes enable completely new types of things to be accomplished. On amateurs vs pros and mastery: - Amateurs worry about figuring out how to get something done "right," (i.e. typically with one instance in mind) and often blame their tools for poor results. - Pros worry about figuring out how to manage the outcomes of jobs/tasks/etc to make sure they don't go "wrong." (e.g. considerations of failure modes, maintenance/upkeep/sustainment/etc..)
- bennyp101 3y ago“Obsess” is a strong word, but keeping an eye out for tools that could make things easier is a no brainer. Things move at a fast pace and whilst the script or hammer from 10 years ago works, why not keep trying new things to see? I’d say the amateur is the one who mastered the hammer and thinks everything is a nail. Edit: rather, not realised yet that everything is not a nail
- bob1029 3y agoI think mastery is a game of maximizing nuance/compromise and finding solutions in the middle. When you can take something that already kind of works and make it work 10% better, that is important. It is rare to find people who can consistently add incremental value to the same thing over and over. Even if you are "good" at something doesn't mean you are able to deliver it in a professional setting. I've seen lack of nuance result in the most incredible architectures. I think the #1 offender still is: "It can NEVER EVER go down". This is the definition of amateur hour in my book. Usually results in a system that goes down far more often than a single node cave man approach. I'd hesitate to imply that pros aren't interested in shiny new tools. The primary difference is that the pros usually go get new tools once every few years and typically wait for market sentiment to shake down first. The amateurs are shopping at Home Depot every weekend. We are just now looking at building a cloud-native stack in 2023. I made us wait a solid ~decade (lambda launched in 2014) before I was willing to go beyond the safety of our vendor-agnostic VM bubbles. So yeah, we are using some shiny new FaaS/serverless tools, but we are using them in a really dumb & conservative way (i.e. serving old-school SSR HTML forms, etc). The tooling change is really only to serve our operational convenience and improve compliance/audit stance. Not because it's fun/new/what everyone else is doing/etc. How many developers do you know will go out of their way on points like those? "I picked this technology primarily to make our audits and compliance conversations easier as we scale". Who does that? This is another example of mastery. Paying attention to and caring about all of the auxiliary things around the software/problem/tools.
- Nition 3y agoWhen I was getting back into recording music I went looking for how other people have their home studios set up. I quickly found http://www.reddit.com/r/musicbattlestations http://www.reddit.com/r/musicbattlestations, but people there often hadn't done the basics that would help the most like acoustic treatment, and yet had rooms full of equipment. Whenever someone asked to hear what they'd made it'd be "I'm working on something now..." At first I was confused but then I realised, their main hobby isn't making music, IT'S COLLECTING TOOLS.
- someweirdperson 3y agoNumbers of instruments sold would be extremely low and as a result the price extremely high if only people who actually use them bought them.
- ip26 3y agoPros can, in some cases, get to just buy the good stuff without having to agonize over cost. Pro sports photographers are all shooting the best cameras and lenses; when your income depends on the equipment, it can be self defeating to try to thread the needle of cost and performance. Just buy the $4k camera and $4k lens instead of experimenting with low grade stuff and risking a shoot. There’s nuance to be sure, but at a basic level an amateur has no income offsetting the cost while the pro does.
- coldtea 3y agoPro photographers, including sports, don't like to change gear much, and don't care for over-expensive "best" gear either. The stick to use a knocked out battered old camera they trust rather than rush to get any new "best" model. But they will pay for stuff that is needed for the job, like expensive fast and light enough teles, or multiple continuous frames (but up to a point). Youtube "pro photographers" do, because they get their money through gear reviews, peddling cameras, and sponsorship deals.
- dmbche 3y agoI wonder what portion of pros have moved to mirrorless since it's been intoduced? It doesn't change much for image quality, and it forces you to change your lens range or run adapters, it's quite annoying but I'm pretty sure a lot of people have jumped anyway. I'm biased, I'm still on a 5d mark i !
- ip26 3y agoMaybe they are shooting a 5D III instead of a R5, but it’s a once-flagship, not a Rebel. Anyway, I don’t want to over generalize about a profession I’m not in, so I’m stopping at that. The point is how the purchasing decisions differ when the equipment is a capital asset or pure cost.
- coldtea 3y agoYeah, they wont use a Rebel, but that's because a Rebel doesn't have several things they need to have, burst rate, dual slots, and things like that.
- hospitalJail 3y agoReminds me of when an intern told me 'php sucks'. I asked him 'why?' No response. Me and another senior giggled. To him, a programming language was part of his identity. To me, it was just another tool.
- artyom 3y agoIt's a sterile discussion. So far all the AI tools that I've seen aimed at reproducing the output faster, which may be correct, but not at contextually processing the incomplete input which is usually a mess. When you realize that software mastery is mostly thinking about that input, it doesn't matter if the tool for the output is your own written code, an AI prompt, a Google search, or a StackOverflow snippet.
- constantcrying 3y agoTools are important. Professionals use tools they understand and use them deliberately to specific ends. Mastering your tools is an important step in mastering any craft and being able to evaluate new tools is an important part of that. "Tools don't matter" or "caring about tools is for amateurs" is plainly false and anybody who is proficient at any tool based skill knows this. The actual fallacy of the amateur is thinking that having the tool is what creates the skill, when actually having the skill is what allows you to make use of that tool effectively. Almost always having a good tool you are deeply familar with beats a great tool you have little understanding of. Regardless of that, bad tools lead to bad results, even if experience can reduce that effect.
- Barrin92 3y ago>anybody who is proficient at any tool based skill knows this. I've taught the guitar for a long time and I don't consider it wrong advice at all. Yes, if you can spend 200-300$ on a guitar instead of 80$ go for it, but the amount of amateurs who buy much more expensive instruments is staggering. An amateur does not even understand why the features of expensive instruments are there to begin with, and it doesn't actually take much skill to make a cheap guitar sound great. Don't believe me, just check Youtube. We live in a culture that is extremely biased towards the notion that you can shortcut your way to proficiency with money, and this kind of article is an important corrective. A few years ago people were scoffing at Macron, the President of France, buying 300$ suits. I can't count how often I've seen ordinary guys spend more on a suit going to events were nobody could even tell the difference. Tools are sometimes important, but 80-90% it's about the proficiency of the wielder. And this is completely skewed because that kind of reality does not sell, and selling people more stuff is now the primary objective of a lot of televised sports, music what have you. As software developers too we are constantly being bombarded with sales pitches for tools, rather than encouraged to cultivate genuine skills, AI assistants being the best example.
- constantcrying 3y ago>We live in a culture that is extremely biased towards the notion that you can shortcut your way to proficiency with money Exactly, that was my point. And if it isn't money it is "that one trick". Mastery over a tool is what actually matters and makes a professional. The professional understands his tools and knows exactly how to make them work and where the limitations are. I just do not think it is in any way productive to believe that you shouldn't care about what tools you are using.
- bullen 3y agoPros obsess over writing their own tools from scratch!
- brailsafe 3y agoPros can/will pay so that their time isn't wasted, but ideally know what to spend the money on. Anrej Karpathy hinted at this in his Lex interview and I agree. Tools are not the point, the point is to decrease the time to a quality product and the misery of doing so. When I was young and didn't realize I had ADHD, I thought getting a great chair and monitor would help me keep going longer and help prevent frustration leading to burnout. They did end up helping eventually, but only if every other environmental thing got out of my way, and the problem I was grinding away on was right.
- jpswade 3y agoA bad worker blames his tools right?
- nlh 3y agoI'll share a parable: When I first got into cycling as a hobby/activity, I didn't know anything other than "get a bike and ride it." I didn't know about clipless pedals or carbon wheels or gear ratios or anything. Nor did I particularly want to know about any of it. I just bought a basic, average, all-around bike and started riding it. That bike served me extremely well. It didn't do anything particularly great, but it also didn't do anything particularly badly either. It was totally average. I rode it thousands of miles around the Bay Area, and in the course of doing so, got really quite into the sport (which is now, thankfully, a major part of my fitness life). And in getting into the sport, I learned about all the widgets and gadgets and what equipment was better for what situations. When that bike got stolen (thanks, SF), the timing was such that I was ready to treat myself to a major upgrade. And so I built myself a dream bike. And picking out every component was SUPER fun, because I knew exactly what I needed and why I needed it. I knew I wanted an endurance-optimized frame because I enjoyed long rides with lots of hills. I knew I wanted smaller diameter wheels because it's so darn windy going over the GGB that I'd get tossed around with deep-dish aero wheels. I knew the gear ratios that would be ideal for the type of riding I enjoyed. And so I remember VERY distinctly when an old friend called me up one day and excitedly told me he too was ready to get into cycling. But oh, was he wracked with indecision, and could I help? Which gears to get? which frame? which brakes? Which indeed. He was the quintessential amateur obsessed with the tools. And I advised him to take the same path I'd taken: Just buy a bike. Ride it. Learn what you like and what you don't like, and the decisions for the next one will be infinitely easier. Master the basics and then you can focus on mastery with the right tools. BTW - this wasn't wisdom of foresight here. I lucked into the experience because I was truly an amateur when I started and just didn't care. But I think it worked out well.
- jhot 3y agoSimilar experience with mountain biking for me. In college I bought a $600 hardtail because that was my budget. Didn't know or care that it had a coil fork and mechanical disks instead of air fork and hydraulic brakes. And at the time it didn't matter. I rode that thing well beyond its limits, and as I got better at riding and working on the thing I upgraded parts as I could afford and figured out why those parts are better. After 10+ years on that, I could afford a full suspension bike. I knew what I needed and what parts would fall into the diminishing returns realm. I've been riding it for 5 years and have made some small upgrades (and had to replace a few parts) but I regularly blow the socks off riders on 2-3x more expensive bikes. My bike does have limitations and if I could afford it I would have maybe 2 more, but as an all around bike and someone who rides all sorts of terrain it gets the job done just fine. I've also had friends who bought expensive carbon bikes when they're starting out and once they realized that skills are much more important than the bike have regretted spending so much.
- Arch-TK 3y agoA master carpenter might be able to build a house with pointy shards of glass for nails, rotten wood for timber and pumice stones for hammers, but he's going to struggle every minute of the time, hate you for making him do it, probably decide to switch jobs half way through and the house is going to look like total shit (even if the only thing swapped out was the hammer this would likely become true). In my first job I had to deal with an absolute trash-heap of a proprietary programming language (Clarion, no, don't bother googling it, you will only find misleading marketing material and a bunch of people who only know Clarion, COBOL and FoxPro and will spend all day long telling you how Clarion is the best thing under the sun). Normally when dealing with a shitty tool, I will spend some time either replacing it or finding some way to modify it to make it less shitty, but in this case, there was nothing I could do but to master its endless quirks. I wrote anything I didn't absolutely have to write in Clarion secretly in other languages (usually Python) and presented it at the last minute when it was too late for anyone to say no to me doing it (yes it really is much easier to ask for forgiveness than permission). No, it wasn't the most sensible decision to use languages nobody else in the company knew to write important bits (although I tried to keep all my code as straightforward as possible), but at this point there was already another person in the company who had built up an empire of job security through utilizing obscure shit nobody else knew how to maintain (except, joke's on him, I knew how to maintain it!), and also I had to survive the experience without ripping all my hair out. Due to the frustrations of Clarion, I would often point out some of its major shortcomings and get told: "A bad workman blames his tools." To which I often replied with something along the lines of: "You wouldn't hand a good workman a rock and ask him to frame a house." Anyone with any experience and mastery will know and be quickly capable of noticing when a tool is trash and should be replaced to avoid turning 5 hours into 5 days of work. Using this reasoning to excuse poor tool choices is a terrible thing and when experienced and inexperienced people alike complain about a tool, it's a good idea to take a step back and consider this proposition seriously. In fact, in my experience, people with less experience are much less likely to know when a tool is shit and instead assume that any shortcomings are actually par for the course and that no better options exist. Whenever I use a tool and I find something is difficult to do, I try to take short break to find out if the tool I am using is really optimal for the work I am doing. I am pleasantly surprised (in programming and many other areas such as even DIY) when I find out that there is in fact a better tool which is a pareto improvement over what I am currently using. Take, for example, a can opener. Many people use can openers which cut down from the top into the tin. For years now a new type of can opener has been seriously failing to take the can opener market by storm (because not only do can openers not break that often, but they're so deeply standardised that nobody would recognise anything else in a shop if it was sold). This type of can opener cuts in from the side, with a much more precise blade, without creating a ragged edge burr, without requiring you to fish the lid out from the can, while creating a lid for your newly opened can. Yes I'm talking about the can opener from the technology connections video[0]. In summary, don't obsess over tools, the latest over-hyped library/framework/language/editor/IDE will probably not make your life 100 times easier, but DO learn to ask yourself if the tool you are using is really the best. Learn to modify your tools for the better. Learn the important skill of telling when you're making your life more difficult than it could be. It will make your life easier, I promise. [0]: https://www.youtube.com/watch?v=i_mLxyIXpSY https://www.youtube.com/watch?v=i_mLxyIXpSY
- userbinator 3y agoMany amateurs are easily distracted by "new and shiny", and of course the accompanying marketing of these tools. Pros have realised that most of this is really nothing more than marketing.
- thrwawy1234 3y agoI really wish we had a different word than "tool" for the stuff we use to assemble and work with software. These sorts of discussions inevitably devolve into people arguing about physical tools as found in the arts, manufacturing, our other "crafts" with nothing more than vague hand waving to justify why the physical tool analogy even makes sense when applied to the things we call "tools" related to software. It's not that the word "tool" is inappropriate in a raw definitional sense, but it seems to lead to these tortured analogies. At this point as I'm pushing 30 professional years in the computing field, I'm less and less convinced that the analogy is very strong. Amateurs and dilettantes sure like to argue strongly about it though.
- ourmandave 3y agoAmateurs obsess over tools. Is that why I drop a lot of money on a new hobby, hoping the "investment" will keep me motivated?
- pessimizer 3y agoAmateurs also use exclusive/expensive tools and the discussions about them as a ticket into the pro community. Even though what really ends up happening is that they end up in a community of wealthy amateurs, all arguing about what they know: the prices and feature checklists of tools.
- crywas 3y agohttps://web.archive.org/web/20070613184827/http://yudkowsky.net/singularity.html https://web.archive.org/web/20070613184827/http://yudkowsky.... http://catb.org/~esr/faqs/hacker-howto.html http://catb.org/~esr/faqs/hacker-howto.html https://ranprieur.com/essays/dropout.html#HTDO https://ranprieur.com/essays/dropout.html#HTDO https://unqualified-reservations.org/2008/04/open-letter-to-open-minded-progressives/ https://unqualified-reservations.org/2008/04/open-letter-to-... http://localroger.com/prime-intellect/mopi1.html http://localroger.com/prime-intellect/mopi1.html
- ilaksh 3y agoBoth of the statements in the title are false. Programming is like the ultimate toybox. Getting started with a new tool can be like Christmas. It doesn't hurt to reward yourself every now and then especially when there is often a real advantage provided by the new tool. Obviously you can't spend all of your energy on that but it doesn't mean it can't be routine to try out and apply new things. Mastery of tools is also not a useful primary objective. In fact, in the modern era of software development, it's counterproductive. Because it will not leave you time to try any of the new stuff that could be a more more efficient way to make that particular type of software. I would say that a professional software engineering approach is to focus on delivering business value. That means you need to emphasize understanding the business problem and iterating on features that solve that. To be effective those things should take some precedence over other activities, like learning new tools or mastering old ones.
- mcqueenjordan 3y agoPart of mastery is selecting a good tool, or building one if it doesn’t exist.
- lpl370MT3cm 3y ago[dead]
- ecks4ndr0s 3y agoAmateurs obsess over languages as well. Java vs C++. Rust vs Go. This vs that. etc.
- cborenstein 3y agoAgree that jumping between tools at the expense of focusing on craft won't get you the results you want: > If we're fixated on acquiring every new tool that comes our way, we risk missing out on developing our fundamental, timeless skills—the abilities that transcend technological trends and persist throughout time But the tools we use can have a big impact on our behavior. Each tool makes some behaviors easier and others more difficult. By choosing tooling that aligns with your goals, you make it much easier to achieve those goals. I'm currently knee-deep in the notes space* so will give an example there. I regularly talk to people who have invested a lot of time in their notes / productivity tooling. Their systems "look" good. But more often than not, they're over-engineered and get in the way of their goals. When they take a step back and switch to simpler tools that align with their desired behaviors, they find more sustainable productivity and more space to hone their craft. *working on https://stashpad.com https://stashpad.com - would love to chat if you've had a similar experience.
- sizzzzlerz 3y agoManufacturers depend on this regardless of the product. It is why you find weekend duffers carrying around pro-level clubs and tennis hackers using top-of-line rackets or amateur photographers carrying $3000 cameras with pro lenses. With enough practice and lessons, one can grow into their toys but until then, it's wasted money. It isn't a bad thing to buy a tool that may be for someone above your current skill level but that generally doesn't mean buying the best, most expensive option. I, myself, am in the market for an acoustic guitar. I'm fortunate enough that I could afford a top-level Martin or Taylor but it would be silly. Instead, I'm focusing more on the mid-level, $500-700. Something that won't fight me, not stay in tune, but a guitar that has enough room to grow into.
- tippytippytango 3y agoI met an incredible texture artist in a game modding community years back, when a typical texture size was 256x256 or maybe 512x522, he did everything in mspaint and it was beautiful.
- avereveard 3y agocan you find a master woodworker with a dull scalpel?
- jmbwell 3y ago“The best camera is the one you have with you” I have extrapolated to a great many tools. What matters is doing the work. If you have crap tools, you’re going to have a hard time doing the work and a harder time growing your skills (although some adversity can be good for cultivating an appreciation of craftsmanship). But the better tool does not make the better craftsman. I think that’s easy enough to understand, and not really controversial. Separately, people just like to pick a team and turn everything into Monday night football. Milwaukee Vs dewalt, mac Vs PC, Ford Vs. Chevy, Google Vs. Microsoft, on and on. Once you’ve worked with enough to know there are only minor differences at a certain level, the color of your cordless drill is less of a factor in the quality of your work. But that doesn’t mean masters can’t have a little fun with some toys.
- michaelteter 3y agoSimple binary headlines like this lead to an either-or argument, but as we all know it's a matter of degrees. There are indeed more powerful tools for some situations, and knowing those more powerful tools can mean the difference between success or failure or at least happiness or drudgery. I could make so many analogies, but they would be lost on people who don't already understand the concept. So to spare the words, I'll just say that sometimes it is worth fighting for a technology, but it is equally worth debating that technology. Occasionally even the proponent decides it doesn't actually matter for the given situation. Other times management or juniors (who technically are similar) can be swayed, and hopefully the results prove the value of that fight.
- deleted 3y ago[deleted]
- mherkender 3y agoWhy not both? I've been using vim for ages and I'm very "masterful" with it, but at the same time I try to look for tools to solve unsolved problems I deal with. It's true that novelty doesn't generally deliver actual results but it's also my job to automate everything that can be automated.
- TheRealPomax 3y agoBeginners obsess over tools, intermediates obsess over mastery, seniors don't obsess.
- barbariangrunge 3y agoAnd hiring managers: over whiteboard l33tc0de
- jdthedisciple 3y agoI think the opposite is the case: Give me 24 hours to fell this tree, and I will use 23 to sharpen my axe.
- nickpinkston 3y agoI've found a lot of people obsess over tools to solve something like their personal productivity or management issues, which is like buying better cars to get better at driving. They'd do better to either find a driving coach, or start riding the train.
- egypturnash 3y agoThe beginner must learn what tools can do in their craft. The beginner must learn how cheap is too cheap; the beginner must learn where the sweet spot between "affordable" and "breaks halfway through your first project" is. The beginner must dabble with a few specialized tools. Some of these can be expensive, because the market is small - there are simply not many people who need this tool. The beginner must learn something of which tools truly can transform the way you work and help you focus on the joyous parts of the craft. The beginner must also spend a ton of time mastering their craft. Spending half a month's rent on a Serious Tool gives it more power; it sits there in the corner, gathering dust, quietly murmuring about how much you paid for it and how little you've spent trying to learn how to use it. The master has accumulated quite the toolset over the journey from beginner to master. The master has a couple of those half-a-month's rent tools. Maybe they use them regularly. Maybe they get the bulk of their work done with the cheaper stuff. But the master has had multiple occasions to celebrate some milestone in their craft by buying a cool, rare tool. The master may have had the occasional gig that paid a whole year's rent and gone out and bought a coveted tool that cost an appreciable fraction of that payday. The master is at the point where they need some of those more specialized tools. The master may even be at the point where they are making so much money with their work that they can pay a specialist to hand-craft a tool to their precise specifications, and make it a beautiful symbol of their dedication to their craft. Or make their own, depending on how their craft overlaps with what's required to make their tools. The master may also have a few battered, well-loved tools that they got long ago, and still use. It still works fine, they've tried expensive replacements and haven't found any real difference, why bother? And somewhere between the beginner and the master is the journeyperson. They make their living with their tools. They just had that whole year's rent gig happen and they just splurged on that pricey, rare tool. And now they have a powerful signifier; when they take out that expensive tool, people who know a little about the craft will ooh and ahh, and revise their expectations of the journeyperson's performance upward. And perhaps revise their willingness to pay for it, as well. The master and the journeyperson both know that much of the magic is in them, not in their tools. They can do far more with a cheap, shitty, basic tool than a beginner would. But they also know when they need to take out the really specialized tools. And they do this work enough that they have invested in solid tools that sit nicely in their hands, and are balanced so as to leap eagerly to the task at hand. They have Opinions about their tools and they are happy to share them. And then there is the dilettante. The dilettante has a job that means a lot of those Serious Tools are in the range of an impulse purchase, rather than a half a month's rent. But because it was not bought as a sacrifice of something else, its quiet murmurs about how you never play with it have far less power. Perhaps eventually the dilettante will have accumulated enough Serious Tools that their combined murmurs about how much they cost will motivate the dilettante to blow the dust off of them and start playing. Perhaps not. There are many other things to spend one's precious time upon. The beginner and the master and the journeyperson are all thankful to the dilettantes of the world, for the dilettantes help bring down the price of the Serious Tools, both by buying new ones, and by letting their dusty, untouched Serious Tools go for a fraction of their price when they clear out their garage.
- nathants 3y agotwitch streamers answer thousands of times a day questions about which keyboard they use. programmers are no different. tool focus is a way to fool yourself into thinking all you need to do to level up is go shopping. it’s a comforting delusion.
- Ferret7446 3y agoThis is exploration vs exploitation. You want to be trying out different things in your early career.
- eointierney 3y agoBollix, professionals do not obsess but continue to explore I've met a few truly practical experts and they spend more time talking about what they've just learned than children A tool in their hands is never the same thing twice in a row Amateurs are more easily distracted and expect reliability
- strken 3y agoInside my head, the Unix philosophy + graph theory + High Output Management have combined into one monstrous beast. It sits on my shoulder and forces me to view all tools as a set of inputs and outputs. Worse, it insists some tools make other tools, and has strong opinions on when they're worth the investment. For a meta-tool like jq, I put in an initial investment of time and get out a tool to solve your actual problem, in the form of a jq command. I can then use the command again and again on my data set. The size of the initial investment determines when using a command is worth it, but making an investment once reduces the cost of the next, so I am never quite sure when to invest. The ability to put together pipelines of these tools and meta-tools is more important than any one tool -- after all, jq could be replaced by a python script, json could be replaced by toml, and so on -- but at the same time each tool makes up the pipeline. The path to mastery of manipulating a tree (or using a functional programming language) might be through jq and json for me but through xml and xslt (or F#) for you. Learning the tool, and particularly learning how it fits in the broader pipeline of tools in terms of its inputs and outputs, drives our mastery.
- Derbasti 3y agoThe premise is true enough, but the article didn't really expand on anything meaningful beyond the title.
- PeterStuer 3y agoI've seen many a 'pro' not only obsess about tools, but be borderline religiously fanatic about one to the point of not being able to function if they were forced to use an alternative.
- kthejoker2 3y agoSo true, the number of people who enter analytics forums asking "Should I learn Snowflake or Databricks" when the answer isn't even "learn SQL" (it's "learn set theory via SQL") is bewildering. Asking about tool comparisons is the technical equivalent of "The mere fact that you call making love "pop pop" tells me you're not ready." And a sign of why most amateurs fail - they're fad driven rather than purpose driven.
- geekraver 3y agoAn argument somewhat undermined by the example “in an age of synthesizers, the acoustic guitar…” which sounds pretty tool-focused to me, lol. This seems to be an insinuation that guitar playing is a skill while electronic music is some form of cheating. I’ll grant they’re different, but as someone who can play passable guitar who is interested in getting into electronic music, I’d hardly say the latter requires less skill. On the contrary; I find the number of things to learn (rhythm, drums, bass, string, leads, synthesis principles, sound design, effects, putting all that together, mixing,…) quite overwhelming in comparison.