20 ms·
Ask HN: Is it better to be good at many things or great at one thing?
Talking about the digital world of course. Young man here, should I learn one thing really good (like back-end programming) or go all out and learn as many things(front-end, 3d, photoshop, back-end etc..) as possible and be okay in all of them.
- T-A 10y agoWouldn't you know it, it's best to be both: https://en.wikipedia.org/wiki/T-shaped_skills https://en.wikipedia.org/wiki/T-shaped_skills
- matonias 10y agoThat's interesting! Never heard of the T shape skills
- f_allwein 10y agoThere's also the concept of divers (specialist skills) vs scanners (interested in everything). Comes down to personality, but both have their strengths obviously. https://www.psychologies.co.uk/self/what-do-you-do-when-you-want-to-do-everything.html https://www.psychologies.co.uk/self/what-do-you-do-when-you-...
- anta40 10y agoAs an IT guy (I'm a developer, BTW), I think T model is probably the best model. Technology is progressing rapidly nowadays and we need to know about them in general (the horizontal bar). But we also need to master 1 or 2 (or a few), and these will increase our "value" (this is the vertical bar). For example: I know how to build web apps using some PHP frameworks, I know how to write Android apps using Java, I can write desktop apps using Java, etc. This is my "generalist side". My "expertise side" is smart card (at least this is my current plan). So I focus on mastering Java card, ISO 7816, GSM 11.11, GSM 11.14 and so on. I keep my eyes open on new, emerging technologies, but will not put much effort to master them.
- ahmetyas01 10y agoBe good at what you do and know a little from everything = Good CEO Be good at what you do = Great Employee Know a little from everything = World wide Loser.
- dasmoth 10y ago> "A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." -- Robert Heinlein I've certainly always found being a generalist more satisfying, even if it isn't always what gets rewarded. I wouldn't necessarily restrict this to "the digital world."
- matonias 10y agoThis is true, because nowadays many people don't know how to do all the things above, because its all about the digital world. Yay! We should get even more broader.
- hatmatrix 10y agoWhat I get from this is that we should acquire a specialization to be employable by the corporate hive.
- majewsky 10y ago> Specialization is for insects. Yet the advancements in human civilization arose precisely from specialization. Nobody would have had time to build computers if they had to spend all day farming, building houses and writing sonnets.
- dasmoth 10y agoPerhaps "overspecialisation" then. Plenty of people build early computers while having other interests on the side. And the microcomputer era was substantially driven by people doing it as a hobby.
- inopinatus 10y agoAh but that would be bad prose style.
- deleted 10y ago
- danieltillett 10y agoI have noticed that the world doesn’t work like this and talent is very unevenly distributed - those people great at one thing seem to be great at lots of other things. Extreme specialisation seems to be correlated with unhappiness so it might be better to be good at many things if you want to have a happy life.
- matonias 10y agoWhere did you find that specialisation seems to be correlated with unhappiness?
- danieltillett 10y agoThis is just my observation. Like anything involving people the best you can do is correlation (too many outliers), but the driving factor seems to be people get locked into a path early in their life and find it hard to walk away from all they have committed to their specialisation when they later find they don't actually like what they have spent their life becoming good at.
- collyw 10y agoFocus on a few things early then narrow it down to the things you prefer (or make you more employable) as your career progresses. The concept of a T shaped developer seemed popular a couple of years back (in blog posts at least).
- tduk 10y agoFind something that is a good fit for you and in demand (preferably rising), avoid niche and fads. Be good at that one thing and a handful of directly related tech. Keep yourself informed about other stuff to the degree where you can hold an intelligent informed conversation and contribute to decisions. Use your spare time to satisfy intellectual itches. Expect periods of boredom in any job. Look after your spine.
- circadian 10y agoDo what you feel happy doing! In terms of thinking on a path for your career, think only of whether you are putting all your eggs in one basket. If a job role later becomes difficult to get / stay employed in, and you can't adapt, then that's the most likely problem you'll face. I have always tried to be interested in a lot of things, so that I can turn my hand to new things once I need a new challenge. It has worked well for me so far ;-)
- anilgulecha 10y ago2 complimentary skills give you the most bang for your buck. Front end + photoshop, or backend + systems design. (You could also find a complimentary skill that isn't technical.)
- teekert 10y agoDepends on your wishes, I myself am a biochemist moved into molecular biology moved into biophysics moved into micro-fluidics moved into data-analysis. Now I'm a person that talks to many specialists and brings ideas together to create new research paths to go into. I talk a lot, I write a lot and do some programming. According to tests I'm an extroverted person with a short attention span who is motivated by frequent changes. My current position requires this of me. If you prefer to just focus on getting a single, (complex) job done, introverted, away from other people, you're better of specializing imho. Me, I get new ideas by talking with others and can enjoy meetings. Many of my colleagues can't, they just want to get their current task done ASAP.
- Franciscodr 10y agoEverybody goes to the general doctor, but want treatment from the specialist one. Usually a balanced combination between some general knowledge of many things and specialist in one thing is the best. Beware some people can be specialist in more than one thing but they are not typical, not the best always: https://www.ted.com/talks/emilie_wapnick_why_some_of_us_don_t_have_one_true_calling https://www.ted.com/talks/emilie_wapnick_why_some_of_us_don_...
- perlgeek 10y agoIf you want to build a reputation for yourself, it is much easier in a small niche. It's easier to be know as "the" guy who does awesome, interactive audio in D3.js (just sputtering stuff here) than to build a reputation as a "the" awesome frontend developer. Once you have your small niche in a firm grip, you can expand outwards.
- fao_ 10y agoHonestly? Try to learn as much about everything as you can. I mean every subject, every subfield. What I've found is each effort I made in one subject improved my efforts in others by a significant order of magnitude. With more knowledge you gain more ways of looking at the problems you're faced with and therefore can find more paths to solutions. Each new piece of knowledge you learn will give you a better base from which to learn more, and slowly the amount you are able to learn will increase to help you cope with the load. After a while you gain the ability to reduce a problem you're faced with down to other problems in other disciplines, then things start getting boring because you can already figure out a way to reduce this problem, etc. So at that point it's time to mix it up a little and refocus. Another thing that should be noted is that you should always make sure that you are out of your depth with at least one thing you are studying. You can only really improve by pushing yourself. However remember that you cannot push yourself constantly, sometimes you need a break. So in doing this, you should be driven by your own interest. What I have found is that I am not necessarily able to do everything at once, so I end up doing a rotation of things I find interesting at that moment. Eventually I'll either discard some topic or problem or such, because I don't find it interesting or I will find something new that I find more interesting. If things get stagnant, mix it up a little! I've been doing this for approximately the last five years, and I think the payoffs have been great, and I have learned so much more than I think I would have otherwise. However I have nothing to compare to! So we cannot be sure =) Do what interests you.
- deleted 10y ago[deleted]
- pbhjpbhj 10y agoWhat work do you do? Everything interests me, superficially[1]. Most of it is useless except for playing trivia games. If I were a FU-rich autodidact that wouldn't be a problem but I'm a poor schmuck with a family to support. My brain is so full of interesting stuff and tangential thought that there no room for focused attention on anything mundane enough to count as useful work (though I'm sure with an equipped workshop/lab and a couple of years I can turn one of my book-of-ideas concepts to something useful for mankind). Don't we \have\ to do what gives us a living? [1] superficially perhaps isn't the right word, the minutiae of everything is infinitely interesting too, more that things are only interesting temporarily, which leads to flitting about across diverse subjects.
- dilemma 10y agoTo be an entrepreneur you need to know a little about a lot of things. To be employed, you'll do better as a specialist. If you pick the right specialization.
- hkmurakami 10y agoThis 100x. If you go down the route of a generalist (and not just "generalist engineer" but generalist in marketing, engineering, back office, etc.), then you will quickly find yourself unemployable in the traditional sense since you will no longer ft any job description. Maybe you can still wing it if you have a strong network, but if you plan on being employed rather than running a business, err on the side of being a specialist but keep your eye open for shifts in trends and don't become complacent on your existing skill set.
- dilemma 10y agoI'm feeling it. I'm a generalist working as a specialist, saving money until I can take my two related side-projects full-time.
- hkmurakami 10y agoYup- we'll see what's in store for me if I ever have to go through the bigco PM interview gauntlet again! Not even sure I'll pass the resume screen even if I'm friends with the hiring manager! ;)
- dilemma 10y agoYeah. I'll also need to work on personal branding once I go fulltime because otherwise it will be difficult to get a job next time.
- galfarragem 10y agoThis 100x also. I would just add that both approaches are risky: You can become a 'Jack of all trades and master of none' without vocation to entrepreneur; Or you can become a specialist in an outdated or irrelevant skill.
- tugberkk 10y agoMy recommendation is personal only, and does not include any "business-wise" suggestions. I would say being good in different things is better. This brings a simple problem tho, you are going to forget what you are not using. But, "learning" is an experience and a good one. So I would say learning and knowing a good chunk of any/everything will help you even in specializing.
- SixSigma 10y agoMe: 30 years professional programming Certified AutoCAD technician Certified TIG Welder Degree in Supply Chain Management Certified Bicycle Wheel Builder Potter Wood Turner Proficient in 3D Modelling Launched an ISP in 1995 that is still going Project leader for a charity market garden supplying produce to a food bank Assistant director / Assistant Producer of a feature film released on DVD (you can buy it on Amazon) Producer of 4 music videos that have appeared on MTV Made most of my own furniture from scratch - bed, table, freestanding kitchen unit, chairs Was resident VJ at a successful rave series for 5 years Appeared in stage plays for paying public Qualified scuba diver Arrested twice on TV on environmental protests Occasional data analyst for a Superbike racing team at the national level This isn't even my final form & this list is incomplete Live life, box sets are for the dead to get buried in.
- aunlead 10y agoWOW! I'm truly inspired! PS: Which feature film did you produce?
- SixSigma 10y agoJust an indie, I don't want to reveal myself tbh. When I read my own list I can never quite believe it myself, especially as I'm so lazy ! My motto is "don't consume, produce" and it goes from there. All those hours watching other people do stuff, it could be you. Get involved. Just walk up to people doing the thing and ask how to join in. Most people are keen to share. Oh, and the last thing: I've never really made much money but I've had plenty of fun being poor.
- amorphic 10y agoA great place to do this is at your local maker/hackerspace! Since we started ours (sparkcc.org) I'm constantly amazed at the amount everyone learns from one another. And as you say, that one night a week at the makerspace meetup could just as easily be spent in front of the TV.
- matonias 10y ago
- scardine 10y agoIn consulting/freelancing it is better to know many things, but market yourself as a specialist instead of a generalist.
- matonias 10y agoGood one!
- verbify 10y agoI recommend reading 'The Wealth of Nations'. As an economics textbook, it is fairly dated, but it makes the point that ten people with a specific specialization can do more than ten people all doing the same work at once. Therefore the value you can provide increases with specialization as you can be part of a team than can provide more. My salary increased once I marketed myself as having a specific specialization, but the difficulty of finding a job increased too. It is a basic application of supply vs demand. As, say, a PHP developer, you're competing with millions of other PHP developers around the world. There are plenty of jobs, but there are also plenty of people who are competing with you, driving your price downwards. If you narrow it down to knowing a lot about a very specific framework or PHP system - for example, you know a lot about Laravel or Drupal, then you're competing with fewer people, and people are willing to pay more for an expert, but there are also fewer potential jobs. There's also an associated risk. If you specialize in Laravel and Laravel goes out of style, you will have to remarket yourself as a PHP dev again... Some people specialized intensely in Microsoft Silverlight, and they ended up like this - http://www.commitstrip.com/en/2015/07/28/betting-on-the-right-horse/ http://www.commitstrip.com/en/2015/07/28/betting-on-the-righ... (it's not a total loss, as some programming paradigms work across languages). With the risk comes increased reward.
- shubhamjain 10y ago> I recommend reading 'The Wealth of Nations'. As an economics textbook, it is fairly dated, but it makes the point that ten people with a specific specialization can do more than ten people all doing the same work at once. Therefore the value you can provide increases with specialization as you can be part of a team than can provide more. I think it's improper to retrofit a dated analogy into something innately complex like software engineering. It ignores the communication overhead needed in creating software which was almost absent in low mentally-taxing work of 18th century. Let's say a team wants to build a website. Are you sure you'll have better odds at making it in time with a specialist for HTML, CSS, and Javascript? Brook's Law is at play here — finely grained task spread across dozens of people who have a little idea about everyone else's work is bound to prove disastrous. The role of specialist is crucial, but only when the her knowledge in a singular aspect can save a lot of time for the whole team.
- dsiegel2275 10y agoScott Adams (yes, the Dilbert guy) wrote an insightful piece on career advice in his blog a few years ago. In it he asserts that to have an extraordinary career you should become very good at two different things. I believe this article popped up on HN a couple of years back: http://dilbertblog.typepad.com/the_dilbert_blog/2007/07/career-advice.html http://dilbertblog.typepad.com/the_dilbert_blog/2007/07/care...
- highfestiva 10y agoAn expert without basic generalist know-how is just ignorant. An expert in only a single field is single-minded (think "SAP expert":). A generalist without expertise is just average. Do both, as people always have. But start out a generalist to get an understanding of what is good to specialize in. Then pick 2, 3, 4 diverse areas to home in on.
- herghost 10y agoExactly this. I have a current specialism within a fairly specialised field, but this leaves me plenty of bandwidth to move within the field in the short term. My background is loosely related but has given me a set of core skills which I can draw on where I see other people being employed as specialists. I try to maintain my core skills in other areas to the extent that I can commoditise them for my own purposes if needed, even though I have no interest in actually pursuing 'excellence' in them. When I first started down my specialism a number of years ago my expectation was that my previous background would become irrelevant as it felt like quite a big pivot. I was (and remain) surprised at just how wrong I was - having additional background skills that aren't directly related makes me more valuable.
- jventura 10y agoI agree with this! Personally, I have a CS degree and a PhD degree in Natural Language Processing, although my current interests are larger than this. For instance, I work as web developer, do some mobile apps, do data processing and some tutoring, as they traverse a big range of my current interests. Later on you can start mixing things. For instance, I do freelance tutoring on these subjects, I use my webapp backend Python code on an Android app I have, etc..
- Jaruzel 10y agoOver a 25 year career I've worked on most key Microsoft technologies, but started out my work life as a Sys Admin for DEC VAXs using VMS. I'm also conversant with Linux, and can pretty much pick up anything IT orientated quite easily - I can design and build almost anything if I put my mind to it. I see myself as an IT generalist, but in the workplace I have to specialize. Currently I focus on making Single Identities work across systems for large Corporates. It's quite niche, and at times monotonous work (the design is pretty much the same wherever you go), however in order to be GOOD at whichever specialism I'm pitching at the time I heavily draw on the cross knowledge I've gained over the years. This extra knowledge has ended up being invaluable in separating myself from the herd in the recruitment marketplace. So in short. Early on you should generalize and learn as much about stuff that interests you; later on (10+ years) start to specialize based your preferences (or mortgage size, or whatever).
- distracted_boy 10y agoI think having good grasp in different domains and tools can be good for you both career wise and for your own sake (entrepreneurship, creativity etc). But it can also be a disadvantage depending on where you work. When I first graduated from the university (at 23), I got a job as an IT support guy in a growing company (80+ employees at the time). I was the only IT support and my job was to help people with their issues and maintain the IT infrastructure. I managed to solve all types of issues which I guess people started to recognise. This was fine. However, since I also knew programming, my managers wanted me to help out on development (PHP), to ease the load on the developers. As time went on I became better with our framework and started to get more more complex programming assignments, while still being IT-support. For me this became a real struggle, completing programming tasks on time, maintaining IT infrastructure (servers, network, buying hardware, phone calls) and helping people with their issues. Somehow I managed, which my managers recognised (I assume, and hope), so I got additional assignments regarding "Big Data", basically get information, store it, connect the data with other data sources and so on. At the end I was doing everything with IT. Data science, development, IT support, system administration and more. The reason it become like this, at least what I think, is because I had a sufficient grasp on most domains and tools so I just continued to get more stuff to do. When I finally quit, I actually realised that I was not feeling that great. I could feel the stress inside me slowly diminish.
- 0n34n7 10y agoMy story is very similar to yours. I have come to appreciate that those years formed a very strong foundation for me, and today I can be domain specific with a large blob of context. Point is if you don't become a good generalist first, then you'll be a mediocre specialist.
- eranation 10y agoI follow the principle of trying to be (and hire) T shaped people. Wide generalist knowledge (knows a little of everythin) but one topic where they go deep. You can be specializing in backend programming but I would expect you to be able to hack a quick front end fix. You can't get away without the minimum of basic HTML, CSS, JavaScript, SQL and Linux, you also must know basics of security (CSRF, XSS, SQLI etc). Then you can go deep on anything you want.
- deleted 10y ago[deleted]
- deleted 10y ago[deleted]
- p333347 10y agoBe it web application development in specific, or software engineering in general, or even in life itself, I'd say its much better to be good at many things than great at one thing. For one, it makes a person self sufficient and independent. Assuming one is a curious autodidact, one can always improve or learn things that they aren't good at yet. Next, it sort of gives you a perspective from various points that makes you appreciate things better. Finally, it is a humbling experience (which is good in life) as it makes you realize how much there is to learn - the more you know things the more you know you know nothing effect. Of course, one must not get perturbed when derided as "jack of all master of none". On the flip side, one must also not go around town calling oneself a polymath or a renaissance man - those days are over, at least with established fields of knowledge - as it would be equally ridiculous.
- matonias 10y agoWise words. I totally agree on this. The world is more than only one specialized field, their are too many possibilities in life to focus on one thing.
- BenoitP 10y agoTo quote from the Valve Handbook [1]: > We value “T-shaped” people. That is, people who are both generalists (highly skilled at a broad set of valuable things—the top of the T) and also experts (among the best in their field within a narrow discipline—the vertical leg of the T). This recipe is important for success at Valve. We often have to pass on people who are very strong generalists without expertise, or vice versa. An expert who is too narrow has difficulty collaborating. A generalist who doesn’t go deep enough in a single area ends up on the margins, not really contributing as an individual. Where you choose to be deep should be an area of interest to you and which the market values. [1] http://www.valvesoftware.com/company/Valve_Handbook_LowRes.pdf http://www.valvesoftware.com/company/Valve_Handbook_LowRes.p...
- bryanlarsen 10y agoTo push the analogy even further: paint drip people. https://www.facebook.com/notes/kent-beck/paint-drip-people/1226700000696195 https://www.facebook.com/notes/kent-beck/paint-drip-people/1...
- TeMPOraL 10y agoYeah, I guess he coined the name. I used to call it "bicycle-wheel-shaped human" - https://news.ycombinator.com/item?id=12226420 https://news.ycombinator.com/item?id=12226420. (Actually, I still call it that way. I like my analogy better - it highlights that at some point, skills tend to connect to each other, and you end up discovering a common base connecting separated disciplines of thought.)
- rkangel 10y agoThat also is the term that we use to describe the people we're looking for.
- cylinder 10y agoPeople who are highly skilled at most things and top experts in one thing are highly valued. Revolutionary!
- usgroup 10y ago
- cousin_it 10y agoThe most successful people are often specialists, but that's because they took a high-risk bet and won. To maximize your average success (rather than chance of runaway success), it seems more efficient to be a generalist, due to diminishing returns from any single skill. Just take care to be actually good at many things, not average at many things.
- Allower 10y agoneither
- leonroy 10y agoThis'll sound like a cop out but it really depends. Are you going into academia? If so it takes years of specialization to get good enough to make a meaningful contribution in the form of innovative and good quality research. Are you planning on going into startups? In which case jack of all trades does very nicely! The key is to be very good at some things but to also keep your eyes open and learn things outside your comfort zone - you never know where your new found knowledge can take you and often times it can make you better at whatever you chose to specialize in. So senior architects who write APIs - for fucks sake (showing my background here!) - write the prototype client library - it will improve your API design skills. Backend devs should write a front end or two or at least do some pair programming with the front end guys. Bottom line - be very good at some things - but be open to learning new things and getting out of your comfort zone.
- 6DM 10y agoI would recommend you start with something you're the most curious about and/or find the most useful in your day job. It's like this, you're hired to bring value to a company so it should make you productive if you know it better. Get to know that well, seek out edge cases and new techniques. If you put your time into it, you will gain that knowledge fast. The important part is not to stop when you're finished. Pick up the next thing and do the same. After you go through a few phases you will have enough general knowledge to apply in many areas. In this way you start a specialist and become a generalist. You'll know fully well what your tools and technologies will be capable of and you will be able to give reasonably accurate estimates. As far as I can tell, unless you have an eye for design, it's generally easier to start on the back end and move to the front end. This way you can be productive and are able to move between companies. Front-end is still changing a lot. But there are a lot of promising releases/tools in the works that are making getting started a lot easier.
- TheLarch 10y ago"I fear not the man who has practiced 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times." --Bruce Lee I am not sure if this submission is tongue in cheek or not.
- mirekrusin 10y agoIs the sum of small numbers greater than a large number?
- Unbeliever69 10y agoI am the consummate jack-of-all-trades. It is a disorder. And it irks me EVERY day that I'm not amazing at one single thing. I am SO envious of people that possess a single-minded focus and the older I get the more I regret not finding that singular passion. The problem is...I get bored with one thing. Or at least, I'm never crossed that painful membrane of boredom to find bliss in single mastery.
- techdmn 10y agoI have a similar problem. It bothers me a bit that I'm not amazing at any single thing, but not nearly as much as it bothers me that there are things I can't do well. I have this strange belief that I should be at least competent at every skill there is. (I blame my dad for this, by the way. He is good at everything. :-) )
- markatkinson 10y agoAmen to this. I am 29 (I suppose that is still considered young) and I can relate. I feel like I may have a similar disorder. Luckily for me my hand is being forced by my work. I have to know C# and SQL Server for my work, and this forces me to specialize. My side projects on the other hand consist of F#, Elixir, C#, Python, Java, Unreal Engine playing around with Azure and Firebase. Just a giant list of things I build to 10 - 25% completion. There is this unreasonable and insatiable hunger to understand how EVERYTHING technical works, but only 80 years to learn it all in. So I end up buying books on Kivy (Python), Fsharp, I have 2 books on Elixir, one which I never even started etc etc. Send Help! P.S. I even have a book on Openstack cause I was like "Wow, that sounds awesome, I must learn all about it." I haven't opened it. P.P.S This obsession with knowing how to do everything also manifests outside of the digital world. I have a fridge full of kimchi I will never eat, and a laundry full of Mead I will never drink.
- cbanek 10y agoI used to buy books to learn things back in the 90's, when docs were hard to find. Now I find that the best docs are not written books, but online documentation. These days I'd say just play with it. Build an app. Start up the one box openstack devstack. People have gone through a lot of pains to make a simple dev environment work for a lot of different languages/platforms. Once I get into it, it's less of an abstract idea, and more trying to do something. Having a toy project in mind also helps to build something useful. Over time, your knowledge will simply accrete.
- programminggeek 10y agoYes.
- fatdog 10y agoWhen you truly master something, the understanding of mastery is a surprisingly portable skill. It can make you seem like a generalist, when in fact you are just a transcendent specialist.
- jkingsbery 10y agoI've known successful people that have done both.
- mcv 10y agoBoth have their value. Personally I prefer broad over deep, but that's me. You need to figure out what works best for you. Deep has the advantage that when specialists are in demand, you're really in demand. It's good to have someone on the team who knows absolutely everything about the thing you do. The downside is that when technology or your career moves on, you know nothing. You're stuck doing that one thing, and may have a harder time getting into something else. And broadness has a specialization of its own. Knowing multiple things is particularly valuable if you know how to connect those things. If you can develop front-end with an eye on what's easier for the back-end, if you can design the graphics that you will need, rather than having to wait for someone else to get around to it. Knowing different unconnected things is less valuable, but even there you may find unexpected connections. But for the deep technical stuff, you may find that you'll have to ask a real expert.
- trentmb 10y agoBecome very good (top 25%) at two or more things. http://dilbertblog.typepad.com/the_dilbert_blog/2007/07/career-advice.html http://dilbertblog.typepad.com/the_dilbert_blog/2007/07/care...
- pm24601 10y agoI second this ... find the gap between 2 different skills is so valuable. Think of it this way: 1. skill to know the problem that needs to be solved. 2. skill needed to solve the problem Second skill isn't necessarily programming computers btw - could be leadership, persuasive writing, film making, etc.
- cyanbane 10y agoThere is going to be a comment on this that is really good from someone who has spent a lot of life thinking on this topic. You will also probably be able to aggregate a whole lot of opinions from people who may think about this every now and then. Which do you think will be more informative?
- cies 10y agoFor yourself: be good at many things. It will make you happy. For your (potential) employer: be great at one thing, that they are willing to pay you a bundle for. Then use that money to buy all services you need to be happy.
- pm24601 10y agoI think the key is to get past the "mediocre/o.k." skill level . The problem with going deep is picking the right discipline. Since you may pick wrong initially, going broad first allows a chance to pivot to a different skill to go deep on. The first skill is the ability to learn in a fast organized manner.
- JohnBooty 10y agoWell, I'm going to cheat. Be somewhere between "mediocre and good" at many things, and be really good at one or two things. If you can be great at one or two things, that is nice, but not strictly necessary. There's a lot to be said for generalists, or "T-shaped" people. Every single project requires a large breadth of skills all up and down the stack... and a lot of moving pieces (client, server, markup, JS, CSS, blah blah blah) that work together. There is a place for specialists, too. In fact, we need them to make the world go 'round. But... there aren't as many of those places. Here's a real-world example. I literally just finished troubleshooting this issue. Finding the bug and developing a fix involved (1) our iOS client (2) our React web client (3) our server-side auth, implemented in Rails (4) a messaging library with both client and server components (5) some other bullshit I can't even remember at this point. I'm not the best at any of those things. I'm barely even good at them. Honestly, I don't even fully understand the auth fix that our brilliant (and I don't mean that sarcastically) programmer implemented. But I understood enough of those moving pieces to isolate the problem and get things into his hands. It'd be really fucking great if I was the world's leading iOS developer or whatever, but if that's all I knew, this issue wouldn't have been fixed.
- d23 10y ago> There's a lot to be said for generalists, or "T-shaped" people. Every single project requires a large breadth of skills all up and down the stack... and a lot of moving pieces (client, server, markup, JS, CSS, blah blah blah) that work together. That's not really the meaning of T shaped, as I understand it. The point of the T shape is that you have a lot of breadth (the top of the T) as well as a deep depth in an area or two (the stem of the T).
- JohnBooty 10y agoIsn't that what I said? :) > Be somewhere between "mediocre and good" at many things, and be really good at one or two things.
- agentgt 10y agoI'm somewhat reminded of some Einstein quotes (probably dubious but whatever): "You ask me if I keep a notebook to record my great ideas. I've only ever had one." and "It's not that I'm so smart, it's just that I stay with problems longer." At the same time: "The important thing is not to stop questioning. Curiosity has its own reason for existing." and "I have no special talent. I am only passionately curious." So I say follow your curiosity. If it wants to go deep go deep. If it wants to go broad go broad.
- cerrelio 10y agoEither/or. Just care enough to be good at anything at all. Additionally, be good at something that doesn't involve work skills. Work isn't everything.
- jasonkostempski 10y ago"What's the secret to getting in? I can't tell you. You have to find out for yourself."
- xiaoma 10y agoProfessionally it's far better to be great at one thing (or a clump of related things). The market doesn't if your skills are kind of close to a professionally marketable level in many areas. On the other hand, it generously rewards those who are the best at any task people care to pay for. Find your strongest comparative advantage and milk it for everything you can. If you're good at and bad at writing, then be a musician, allow your writing to remain horrible and work with horrible musicians who can write. In the personal domain, the situation is the opposite. It's just not possible to outsource being healthy, financially sensible, romantic or a good friend to someone else. If you're really struggling with one of those areas of life, it's worth it to work on fixing up your weaknesses rather than just further developing your strengths.
- HeyLaughingBoy 10y agoIt really depends on what you want to do (i.e., your personal definition of "better") Last time I was looking for a job, the recruiter came back to me and said "I can find lots of jobs that need your skills, but none that will pay the salary you want." So we discussed what my skills were. I was looking for a SW dev job, but I have degrees & experience in EE, SW, lots of time working with integrating SW, EE, and Mechanical motion control, more experience working with biochemistry and understanding how various physical movements can affect the way a reaction proceeds, and the repeatability, etc. of the output. Finally she says, "hmmm, you're really a Systems engineer with a Software engineer title." Then a new set of job opportunities (that wanted to pay what I wanted to be paid) showed up. And somehow I ended up taking a position as a software engineer/Manager... go figure.
- aj_nikhil 10y agoStart with many things and keep on doing them honestly and humbly.. sooner or later you will become master in few ...
- psadri 10y agoIt's even better to be able to become good at things as circumstances demand them.
- cauterized 10y agoThat depends on what your goals are and what interests you. There are things only specialists can do and things only generalists can do. There are people who are equally interested in a lot of things and people who are particularly fascinated by a single topic. Which are you?
- deleted 10y ago[deleted]
- nullundefined 10y agoIt doesn't matter if you have amazing depth in XYZ or you know about many things, no one cares and in one year all your knowledge will most likely be obsolete. If you're going to "learn" something, make it universal. Learn to communicate (written and verbal), make friends, have experiences and learn to be empathetic and check your ego at the door. The truth is, life is short and you will never master anything let alone become great in many things, so why try? What's so bad about being technically "decent" and exude the universal skills listed above? I'd hire that person any day.
- khattam 10y agoYou can't be good at many things, mostly because people who spend all their time doing one thing will outdo you; so at best you'll be mediocre at many things. At worst, you'll think you're good at all those things. Be mediocre at many things and specialize to some extent on few things.
- JoelMcCracken 10y agoMore food for thought: https://hn.algolia.com/?query=generalist&sort=byPopularity&prefix&page=0&dateRange=all&type=story https://hn.algolia.com/?query=generalist&sort=byPopularity&p... https://hn.algolia.com/?query=rennaissance%20man&sort=byPopularity&prefix&page=0&dateRange=all&type=story https://hn.algolia.com/?query=rennaissance%20man&sort=byPopu... https://hn.algolia.com/?query=specialist%20vs%20generalist&sort=byPopularity&prefix&page=0&dateRange=all&type=story https://hn.algolia.com/?query=specialist%20vs%20generalist&s... Personally, I like having a variety of skills. I want to be able to dip in anywhere on a project and be productive. You'll naturally have focuses, or drips of paint, which I see is referenced in another post. Your focus really can only be on one thing at a time, and presumably you're not just learning for its own sake, you will be learning to accomplish some goal, which will drive the learning. I'd rather work with a well-rounded engineer than one that is a poor communicator, tool user, etc but has very excellent skills in a very specific area. YMMV. There is lots of value in having deep skill sets. There is also a difference between being a "dabbler"/"knowing enough to be dangerous" and being a competent engineer.
- id122015 10y agoIf you choose one thing, choose politics, because no matter what a genius you are, the HR department has the other kind of reason. Social Justice Warriors, you name it..
- MollyR 10y agoMost places calling me about jobs want a full stack developer.