3 ms·
I strongly disagree with stray and edent. You have already admitted that you do not want to be a developer. I assume you want to be merely proficient in softwa
by argonaut 14y ago
I strongly disagree with stray and edent.
You have already admitted that you do not want to be a developer. I assume you want to be merely proficient in software engineering because that will help you build prototypes/MVPs and will help you outsource work / find a technical co-founder. You've admitted that right now you only want to learn what's essential.
Someone who builds quick prototypes and glues together APIs and frameworks does not need very much knowledge of theoretical CS. Even someone who is technical and builds web and mobile apps full-time only needs a very superficial knowledge of CS theory (data structures / algorithms).
You are on the right general path in terms of learning to code. Understand that Treehouse and Codecademy are extremely basic, to the point where you honestly would not be able to build very much after having gone through them. Head First C# should be more in-depth than both of those. I'm not actually sure what type of programs you want to create (are you building windows apps?). There is no substitute for actually going out and building things.
I can tell you straight up that Algorithms Part I is way overkill right now (red-black trees and heapsort are fascinating and are studied by any college CS freshman, but are really not relevant to you), and you will probably never reach a point in terms of technical proficiency where those topics would be helpful to learn.
Here is some CS-y stuff (really really basic stuff) that might be helpful to learn: the difference between an array, a dictionary, and a set (and the performance differences in terms of insertion and lookup). Knowing what stacks and queues are is also helpful. I've listed topics that you could read up on in about an hour. Honestly, knowing just those topics, you would probably know as much theoretical CS as you'll ever need to know as a jack-of-all-trades founder.
Even if you wanted to one day be a technical co-founder (for web/mobile apps), three or four online classes would just about cover all the theoretical CS you would need to know.
- soneca 14y agoThanks a lot, that was really helpful. I already have a MVP, so this is more about iterating it than building new ones. It is a web app, written in C#, running on Azure, that is why these are my focus. I will take a look on the topics you mentioned.
- argonaut 14y agoInteresting... It's very uncommon for startups to develop web apps using ASP.NET (I'm assuming that's what you're using C# and Azure for). Is there a reason you chose that?
- soneca 14y agoI was non-tech founder deciding how to outsource my MVP. RoR was very popular in SV, but there wasn't many developers in Brazil neither for RoR or Python, at least comparing to PHP and .NET. PHP was out because of scaling issues (as I was told at the time), so there was ASP.NET with a significant number of developers and good reviews about scaling and suport. And all bad reviews of .NET had, 99,9% of times, only two topics: "I hate Microsoft" and "You will have to pay a lot of things to develop in it". Well, I don't hate MS and I was applying (and eventually succeed) to its BizSpark program, so I would not pay for anything, including hosting infrastructure. So it seemed a good choice then.