One day I read the code of Chromium in C++ to optimize screenshot rendering. The other day, I tuned a database engine reasonably well because I wrote a toy engine myself and understood the underlying logic. I used Python to work with neural networks and recently wrote TypeScript to render UIs.
I thought that knowing and being able to write code in many programming languages was my weak side. That is what job interviewers clearly stated to me as feedback. And I assume it was a perception of me as a jack of all trades and the master of none.
To all my friends and lurkers, If you feel like me or have the same experience, please, understand that it is a blessing, not a curse.
You can create a complete product alone. Or be a powerful addition to any team, supporting weaknesses and amplifying the strongest sides of it.
And now, with new tools like ChatGPT, you can not only read code, but you can write the code in a language you don't understand and optimize it if needed.
Coding as art is another topic, but generally, a programming language is a means to accomplish the task—solve customers' problems and make profits for companies.
And besides a few rare exceptions, you can probably solve any coding problem.
Don't let people confuse you. Generalists are not misfits. Generalists are rare gems.
I agree. mainly because I just can't specialise, my dyslexic brain refuses to focus on anything for too long and refuses to hold on to stuff that doesn't seem that important.
I struggle tho because I can't be a tech lead or something. I've reached a glass ceiling and I guess that's why I'm lurking on Indie Hackers! My 10 different mediocre skills aren't matching with any job ads I'm seeing. So I guess I better start building.
We have so many neurodiverse folks in Generalist World (we even have a channel dedicated to it). There's very little data on it, but my hunch is there's a connection between identifying as a generalist and neurodiversity.
Where is the neurodiverse channel? I'll happily join in with that.
Man, I'm not diagnosed with anything, but those are the skills for a lead. A Tech Lead is not the most prominent technical person ever, is a person who understands a tech product from beginning to end, has communication and leadership skills. If you are technical, you have the hardest of the three. Communication and leadership can be developed. And, by the end of the day, if you are building something, you are leading by definition. Your product might grow, and you will need to hire people and manage the product on the direction you want it to go.
thanks for your response. I actually have been a manager a few times before and I struggle with keeping up with the emails and keeping track of what everyone needs or is working on. Maybe there are ways to help with this tho and maybe coping with them could make me a better manager. Maybe I should reconsider the tech lead thing.
Love your post and the discussion a lot! I even have the impression that being an Indie Hacker has something to do with not only focusing on your particular expertise but being able to utilize all of your skillset and the ability to think outside the box.
As a fellow generalist (not in coding, but tech, marketing, entrepreneurship in general) I can agree with a lot of the statements in this section and do not doubt yourselves!
Generalist designers are the same way. Truly beyond their value in the startup life. They're hard to find, especially the 🦄 who have a great eye for visual design, true user experience empathy, marketing experience, business sense, and the ability to write code.
Granted, the weaker skills will take them longer to accomplish a task, but they'll do it exceptionally well. They're thinking about all the angles of a problem because they're actively involved in solving all of the angles.
---
The problem with generalists is sometimes is we don't know when to say no to a task. I always wrestle with the fact that because I know I can solve a problem; does that really mean I should? Or should I delegate.
If you work with a generalist or are one yourself, understanding this deficit is the best way to make the most out of our skills.
You need both. Here you are tuning databases and optimizing Chromium rendering but someone had to build the database and Chromium as well. And they are usually specialists. So do what makes you happy. Don't compare yourself with others. We get paid excessively in this industry anyways.
+1 for generalists.
It's strange—polymaths used to be (and often still are) renowned for their vast knowledge in multiple things. But it appears that it's mainly for previous generalists. Think: Helen Keller, Nikola Tesla, Da Vinci, Ben Franklin, etc.
It seems that a lot of this wanting to specialize and "niche down" stems from social media and their algorithms. There's this expectation that you should be "the [something] guy," which is probably why it's in everyone's bio now.
I don't blame them—the algorithms reward you for being that "something" person, so you double down on it. Because when Jane Smith wants to see dog photos, the algorithm points Jane towards you, the "dog photos" guy.
Still, I find it incredibly valuable to not be put in a box.
As the founder of generalist.world, I am so HERE FOR THIS! Thank you for sharing to articulately. Going to include in today's newsletter :)
same with me , I do full stack development, android , deploying to server & stuff and have been a professional UX designer in a 9-5 . Sometimes I think a don’t belong to the corporates but sometimes I doubt if my indie project will work or not 😅
Thanks for posting this, many times i self blamed for knowing multiple disciplines, it's great to be here with similar mined people
That's true, very much in the same boat. It just feels uncomfortable some times :)
I used to view my wide range of interests and passions as a part of my personality that hindered my ability to perform in a specialized and expert field. And I was right! But now, I'm happy about it.
It's so exciting to be the generalist breed of human in a time like right now. AI on the cusp of revolutionizing business, no-code allowing for rapid and inexpensive market testing, and now we just need to find how to ride the wave.
I feel this. In my experience, one place where 'generalists' can thrive is at an early-stage startup. (Or indie hacking, of course!)
nice post will share this in <a href="https://whatslinko.com/">WhatsApp Group Links</a>
There is certainly some truth to the idea that generalists can be valuable contributors in many different fields. Generalists are people who have a broad range of knowledge and skills, rather than specializing in one specific area. This can make them adaptable and versatile, able to bring fresh perspectives and approaches to a wide range of problems.
However, it's also worth noting that specialization can be important in many fields. In some cases, a deep understanding of a particular subject matter may be essential for success. Additionally, generalists may not always be as effective as specialists in certain situations, as their lack of deep expertise in a particular area may limit their ability to provide detailed, nuanced solutions.
That being said, generalists can be valuable assets in many contexts, particularly those that require interdisciplinary thinking or the ability to quickly adapt to changing circumstances. A generalist's broad perspective and ability to draw connections between seemingly disparate ideas can be a valuable asset in many fields, and can help drive innovation and creativity. https://yttomp3.biz/
I'm a generalist and I used to hate that but no, never again. A person with a treasure chest of diamonds has more value than a person with one diamond. The difference is HOW they use what they have.
There are many generalist and what may seem like a problem can actually be an advantage. Generalists tend to have more flexibility, they can accomplish different things but this can lead to spreading themselves thin. However a good generalist will combine all the skills they have and make it into one thing.
For example, John can bake very well, plays the piano very well, he also sings very well, he knows how to cook very well.
he combines baking and cooking into one YouTube channel and combines singing and piano into consulting or tutoring on the side, a matter of fact he could also be the YouTube chef who sings and I think that's awesome and unique. problem solved, if he ends up also liking to ride bicycle, he could add that to his YouTube channel as the youtuber who also rides and sing, which may already exist but I think that's unique.
Amazon did this. Amazon does home, pets, clothes, everything.
100% agree. Expertise is overrated.
I have always been looking for versatile people in my business. Tools come and go, people stay. It’s intrinsic motivation and values that decide everything not the hard skills. If you are curious and learning generalist, you will cope with a challenge. At the end of the day, it is not a brain surgery :)
Totally agreed. As a software engineer myself, I will never understand developers that stick to 1 or 2 programming languages their whole career and don’t want to deviate from it. It’s such a waste of potential.
With each assignment at any new client I learn a new programming language and technology. Right now learning Go within a matter of weeks, while I already know JavaScript, Java, TypeScript and accompanying frameworks etc. Right now with ChatGPT and Copilot I am developing with 50% more efficiency and 75% more speed. A generalist can also be a specialist in multiple technologies and not just 1.
A painter doesn’t have one brush to do all the painting on all the jobs, just like that a software engineer should have multiple tools to address different challenges.
As a fellow bootstrapper and entrepreneur, I couldn't agree more. Being a generalist can actually be a tremendous asset, especially in the early stages of building a product or business. The ability to wear many hats and tackle a wide range of tasks can help you move faster and more efficiently, without relying on outside help. And as you pointed out, being able to understand and work with multiple programming languages can be a huge advantage, especially when it comes to optimizing performance and solving complex problems.
But beyond that, I think being a generalist also helps you develop a more well-rounded perspective on things. You're able to see how different pieces of a project or business fit together, and you're better equipped to spot opportunities or potential roadblocks. In my experience, being a generalist has helped me become a better problem solver, a more effective communicator, and a more empathetic team member.
So to anyone out there who feels like they're a jack of all trades, don't let anyone tell you that you're not valuable. Embrace your skills and use them to your advantage. And remember, being a generalist doesn't mean you can't specialize in certain areas as well. It's all about finding the right balance and leveraging your strengths to create something great.
I can empathize with your situation. I also build products completely for myself and don't need anyone else to do it. Even in my corporate job I realize that I'm not the best programmer because of my generalist ability, but I get projects on the road much faster than anyone else. Because in the end a generalist saves interfaces and agreements because he can do everything for himself.
Generalists learn to generalise because they tackle problems head on and don't shy away from topics they are not familiar with. Exactly the same qualities that make an indie hacker!
Being a generalist in programming languages is a valuable asset, not a weakness.
Yeah we can build things on our own, we are a single man dev team...
Great post Dmytro! Curious to know, did you master one skill then subsequently picked up others or did you slowly develop multiple disciplines in parallel?
I really liked the book "Range" by David Epstein on this topic.
I totally Agree, but I also must say that at some point you want a specialist. They usually know what they are dealing with. A generalist usually comes up with a solution while the specialists knows what works best.
My philosophy isn't generalists VS specialists, it's generalists PLUS specialists. We need both working in unison :)
Team Mindset is the most important thing :) I have read in your bio, you are a mental health advocate, tell me more!
I agree. And still, I haven't found many people who are "really" generalists. I've been part of several groups of people with diverse interests and even in some I stick out like a sore thumb. Something that shouldn't that often given the fact that generalists are... well... by definition are not specialized.
Specialization is for insects!
A developer-friend of mine who was a baller generalist (and very successful) used to say that a lot. It's a quote from Robert Heinlein... I've never read any of his works but that I love that quote
Totally agree with this!
The movie Divergent comes to mind, ha.
This hits home for me. It seems every time I get close to something resembling specialization, I get bored. At this point my quiver is so varied its hard to even put a category on it, but I too take that as a strength rather than a weakness. Being able to connect general skills is its own super power!
Agree 100%. ChatGPT can basically make you a generalist by covering up you're weaknesses.
That being said, I'm happy to have 2 co-founders for evoke-app.com so that we're all pretty well rounded
Couldn't agree more! Definitely going to start referring to myself as a "rare gem" ✨😝
👍
I agree. So many people seem to only accept specialists as a professional whereas a generalist could create the complete app/solution for you.
Personally, I also get bored by only working in one specific domain, so this is another reason for doing different things, even completely outside my profession.
Not saying that specialists are bad, as @maelus already pointed out, it's just another way of being and living and both ways have good reasons.
I feel you, bro! For most of my career, I have been feeling that I should specialize in one field and I do feel disabled most of the time, but this post helped me realize my superpower. More power to you!
It's even true outside of developing - I've been bartender during 6 month, carpenter during 1 year, sales engineer during 4 years, and now dev since 2.5 years. Some people challenge themself by being expert in a domain, some other people by discovering new subjects outside of their expertise domain. It's not good or bad, just different way of being. That's why I like to call the generalists
chameleons
ahah💯 🙂
I guess that's exactly why I'm working on Dev Concepts (https://dev-concepts.dev) and the IT Concepts Wall (https://developassion.gumroad.com/l/it-concepts-wall) 😂