RE: How to start programming? 02-08-2018, 07:57 PM
#11
(02-08-2018, 07:48 PM)Ender Wrote:(02-08-2018, 07:36 PM)Mxyzptlk Wrote:(02-08-2018, 07:10 PM)Ender Wrote: You'll learn to write good algorithms by doing projects, especially ones that are simple yet logical (like sorting), or ones that involve lots of math (like machine learning).
College courses often teach bad practices (more OOP and Java), so you'll likely end up better on your own if you try hard enough. Computer Engineering seems like a neat course though.
If you want to learn to write efficient algorithms, learn C, and try to use the least number of instructions and bytes of memory as possible. C gets you started in a good place, and has simple, nice syntax (unlike C++ and other languages).
But first you need to know how exactly to start. I learned a lot of great things from MIT 6.001 course, Binary Search, Sorting are just one of many things I learned that is not taught anywhere, once you work on problem solving and algo, you can write better codes. MIT uses Python and have great lecturers, they even tell you how to debug a program and best practices. No offense, but take the course before making assumptions.
You don't need to know how to start at all, that's the point of the projects. Sorting is everywhere, it doesn't have to be taught, it needs to be learned. Read example code or the Wikipedia page. Python is only good for scripting, it's useless for real software. Debugging shouldn't have to be implicitly taught. They don't teach the best practices, because the current college-CS-world is stuck on OOP and other bullshit.
If you actually are in MIT, then you're more qualified than me (I'm really young). However, that doesn't mean that it's impossible for me to be correct.
On top of all this, you're the one who asked the question. I simply gave an answer. You can learn things from college, I'm saying that some of what you can learn can be taught better to yourself by you.
I am saying essentially the same thing as you. Stanford and Duke recommends C as starting language. MIT and some others recommend Python. I don't know which college is stuck on OOP, I not a fan of OOP myself. (Python is OOP but unlike Java you can write programs without using much concepts of OOP)
And btw, I have included two links for C language if that's ok with you, I am not asking you to take all the courses, take one with the language that you prefer and after you are comfortable, go to github and have fun.
(This post was last modified: 02-08-2018, 08:01 PM by Mxyzptlk.)


![[+]](https://sinister.li/images/modern/collapse_collapsed.png)

























