Some thoughts (I could be entirely off-base, hence the TL;DR): I have a side project in mind. I know nothing about marketing other than some basic ideas (I think I read half of the book Traction at one point?).
I was wondering, should I:
1. Learn marketing
2. Start a side project?
Goal: in 5 years from now, I want to be well positioned to launch a startup? What startup? I'm an idea guy by heart. I studied a master CS 5 years ago + did a software engineer career, in order to implement my ideas. In other words: I'll think of something that I find fun and will solve a problem.
Also, if learning marketing first is the smarter option. Should I learn marketing by taking a course, or should I take a side step (or step back) in my career and do a marketing role?
Try to lose this notion.
The key to success in a startup (apart from timing, luck, having the right idea, grit, focus, etc) is determination to see things through to completion. You have to believe in your idea and see it through to the end, where 'the end' is hopefully an exit of some sort probably years in the future. If you see yourself as "an idea guy" you will be distracted by the new shiny thing you think of, and if that happens when your startup is in a slump you'll give up before you see success.
You do need to be "an idea guy" to build a startup, but all the ideas need to be about driving the core idea forwards. You need to see yourself less as "an idea guy" and more as "a To that end, I'd recommend starting a side project to see if you can grow it without getting bored, giving up, etc.
Marketing is about identifying the needs of a market and finding a way to serve them better than competitors. If you don't understand your market, how can you create a successful product for them? You can't, unless you're just lucky. And in that case, if you fail to understand the sources of your luck a more attuned competitor may steal market share from you anyway.
If you develop the product without understanding marketing you risk wasting time on something people don't want or that is strategically difficult to grow. For example, a hyperlocal events app faces different challenges to a two-sided marketplace like ebay, to a service company, etc. Even backed up by solid marketing it's difficult enough to create products people want. You can't just sprinkle on some magic marketing fairy dust after the product is built and expect to turn it into a hit.
You also need to understand your competition so you can find out how they're failing to meet the needs of niches. Or if they aren't and they're nailing it, come up with a different idea and move on.
If you're an idea guy, the most important thing to learn is to test ideas. That fundamentally involves marketing, perhaps combined with a prototype/MVP for ideas that pass initial filters. Don't fall into the trap of staying in your comfort zone as a developer unless you can find a marketer to work with who'll be the business brains behind your projects.
Start building an email list, and post regularly, 2-4 times per month. Don't wait until you have a product. Obviously you at least need to try to have a general idea of who your audience is.
As a solo founder, you'll need to have your hands in everything. That doesn't mean you'll always do the work, perhaps you can hire contractors, but you shouldn't have any blind spots. So round out your knowledge. For instance, if you're a front-end dev, learn to build the backend and the cloud essentials. (Don't use the idea that you can punt to Vercel or Heroku as an excuse - you still need a foundational understanding)
You can either become a money guy, or attract money guys. Money guys are typically looking for things they can sell, so that's one way to get one: Have a project or even just skills they can work with. If you want to become one, getting into marketing sounds like a good start.
I personally gave up on the idea that I can be great at building stuff _and_ selling stuff. My advise would be to try different things, see what you're truly passionate about, and accept the notion that you'll eventually need help with the other stuff.
Execution guys often like to present themselves like that, it sounds more fun, more creative, more hip than the grunt work that is behind every success story.
Thus, people tend to think being an idea guy is a key to success.
The world is full of idea guys, you just don't hear about them because that's not even close to being enough.
Be an execution guy.
Paul Graham famously said that success is selling something people want. Period.
A lot of "ideas guys" might have an idea that seems good but straight away, you will need the skills to really prove the concept, to refine it, to pivot if necessary, to take advice lightly, to understand the industry and competitors.
Once you start selling, you might need better sales people or no sales people. You might need marketing but you might not. There are two ultimate requirements for success: 1) You do whatever you need to do to make the business succeed (spend in the right places, change, stop doing stuff etc.) and 2) You need to be able to hire a good team that can make this happen.
So the reason the question is not good is that you are asking about a specific tool rather than the top-level skills that everyone needs.
Caveat: Some people succeed without being great; some people who are great fail. Business is scary, not everyone can do it and being tough and confrontational is a skill that needs to be there to deal with everything else.
Good luck!
A quick list of learnings:
1. How to do deploy solutions quickly and efficiently. As a software developer, you will start by trying to make everything looks/works perfectly. Only time will teach you that this is not really required. Perfection is the enemy of a startup.
2. If you're going to build a product as a side project, you will learn than progress will not be as fast as you anticipate.
3. SEO, traffic, and building a network around you as some comments pointed out.
But if you'd like a book to start with before launching, I would recommend Value Proposition Design [0]. It will help you to understand who would benefit from your product and why they should care. This will be an ongoing process, but it will help to filter your ideas to make something appealing to your audience.
[0] https://www.strategyzer.com/books/value-proposition-design
https://www.indiehackers.com/post/how-to-brainstorm-great-bu...
High level:
https://www.oreilly.com/content/how-to-create-products-peopl...
How to get started:
https://stackingthebricks.com/guides/your-first-10k/
A helping hand:
I built 3 side projects without marketing knowledge. 2 of them have less than 5 clients. But those clients give me a lot of feedback. I am at the stage where I will have to either learn sales/marketing or outsource it in order to grow the projects.
So go for the second option - build something.
(no data to back it up, just personal, limited experience)
"Marketing" exists to bring the right solutions to the people who need them. Maybe that is something we could do via software.
Advertising is usually seen as a negative, annoying thing. But if marketing would be more efficient, wouldn't it be a wonderful thing? If you saw a box and knew that inside is a tool that will make you more productive and increase the quality of your life - wouldn't you want to look inside?
Could we build that box via software?
An example could be a blog. Start with 1 article and promote it.
This is something you could do today, then you'll have an idea what it's like to do marketing.
What makes or breaks a business isn't lack of expertise in these domains, it's simply focus and confidence in the problem you're trying to solve. Most of the times, founders don't have enough of that. If you think your idea has a good market, simply start talking to your customers, building, and getting feedback. You don't need more than that.
Basically get out there and talk about things you do, get people interested, and take off from there!
1. Find a social media site that works for you, and post regularly, daily if possible, but don't spend too much time per day. Twitter works well. Then build up your follower account. No matter which startup you launch in the years to come, a strong follower count will help your marketing efforts.
2. Do start a side project. You'll find out which tech stack you prefer and gain some minimum experience. You'll also come up against some problems you'll need to solve, and spend time thinking about those problems and how to solve them quickly and efficiently in the future. E.g. how to best implement auth. If possible implement payments, just to know how they work and be ready once you have a startup going.
First, congratulations on your project! As Onion said: determination is the key. I'd like to recommend a blog article called "Biggest Mistakes First-time Startup Founders Make": https://www.ratherlabs.com/post/biggest-mistakes-first-time-...
It provides an interesting read about startup projects and how to start making them.
Wish you the best of luck!
You can learn what does _and doesn't_ work, work with and learn from a team (and hopefully a good founder), and then apply those lessons to your own side project or startup.
Naturally, I want to recommend learning marketing if your goal is to earn money from your products where you can sustain yourself from your own products.
If you build something people really want you just need to tell them that you built a solution and you got a client.
If you do go down the route of learning and upskilling in marketing. You'll probably find a solid startup idea along the way.
We saw this happen so often that we made up a name for it
-- Paul Graham
Before the Startup http://www.paulgraham.com/before.html
If you start at #1 you will eventually start #2 to apply what you learnt at #1.
Why do you want to be a solo founder?