Re:Ask HN: What laptop should I buy for programming and path...
by joshfenmore on Sunday March 23, 2014 @07:49AM
(#7452995)
I've seen some online courses like CS50 with C and MIT with Python. The question is why are they starting with those programming languages and not going straight to high level languages?
That is one of my main worries actually. I want to have a solid foundation and principles of how I should build something. Or is my thinking flawed?
Re:Ask HN: What laptop should I buy for programming and path...
by nikdaheratik on Wednesday March 26, 2014 @08:57PM
(#7477834)
The goals of those courses are different from the goals of building complex software. Courses are designed to teach you how a language works in both theory and practice and they generally go through a language and help you understand what parts of it do and why it does what it does.
Nearly all modern languages have developed as some response to C, and Python is also studied because it has a good reputation as a first language.
Software development is about coordinating work so that it produces a product that is reliable and also on time and under budget. This is the sort of thing you can learn, somewhat, by examining the code and work done in open source, but mostly you learn it by working in a (good) software development office. It's important, but not something that is easy to teach while you are also learning how computer languages work.
And you can get a macbook air for around $900-$1300. That's all you really need, nothing fancy.
And if your app is meant to be mobile, you can get deep into mobile web development and even create a very native experience. That's what forecast.io did.
Also as you probably know, in startups it's more about proving a model than having a fancy piece of software. Think about what features are going to attract customers asap. Iteration is easier when you have customers giving you feedback.
IMO RoR is the fastest way to make those vital iterations. Once you're sitting on your $5 million in venture cash you can worry about architecture and scalability.