I’m still learning the fundamentals of creating react apps, so I don’t want to seem like I’m putting the cart before the horse. But my goals are to get involved in some open source projects and possibly even create my own projects and/or freelance.
It seems to me that learning to produce a non-trivial application requires a whole other set of skills than just coding.
I was just wondering if someone could point me in the right direction to at least start looking in to the skills I need to gather and possibly some resources for attaining them.
Coding is actually just a very small part of the whole thing.
When I do my small projects, my simple approach is like this:
Problem: Find a problem users have and get really good at understanding the problem; be where the problem owners are and understand them; never let the connection to the problem owners slip;
Solution: Find a solution that is viable for the problem owners; e.g. no sense in making an English smartphone app if the majority of the problem owners are 90+y people in China (because 90+y old people in China probably don’t speak English and don’t own a smartphone)
Iterative Execution: Go from Problem to Solution in very small engineering cycles. Add the crucial core features you got from listening to your users; ask the problem owners for feedback, listen closely; add the next crucial feature; listen; and so on.
I think this approach already includes some sort of implicit marketing and sales, because talking about your application with the problem owners is already some sort of marketing and sales.
This whole thing is a lot of soft skills, psychology and communication, because without it you do a lot of guessing (how would I behave?) instead of getting real evidence.