Hacker News new | ask | show | jobs
by azaydak 3515 days ago
What would you guys recommend for someone like me who has a strong background and education in ML algorithms (a PhD in a similar field) and math however but has very little formal programming skills. When it comes to coding I usually find myself hacking together code with the intention to come back to it later but never do. I have never had a problem finding and keeping jobs but have always felt a little insecure when it comes to writing code with CS majors, even ones with just a few years out of college. Any good material to help get me up to speed on the CS part in particular with common ML problems?
1 comments

What kinds of things do you tend to be insecure about?
Basically, I'm confident that I can get any job done and working. However I am insecure or don't always know how to answering questions about how efficient / fast/ a block of code is. Also, code architecture and professional coding styles. And finally the sort of classical coding interview questions that most CS majors would learn in school but are not always relevant in daily use but seem to be asked often.
Those are all goals that with a little work should be surmountable.

When CS majors or programmers estimate how fast/efficient code is they generally are intuitively applying big 'O' notation or some similar concept. This can be gained from an intro level algorithms class. Or you could look up and read about the topic.

The classical coding interview questions mostly stem from an intro algorithms and data structures class. Or you could get a book on interview prep and work through a couple a day.

Finally, the coding style issue usually is ancillary knowledge and not found (or at least not done well) in typical CS curricular. I would suggest the book "Clean Code" by Robert Martin. It goes through code smells, commenting, general style, and is well written.

So overall, you could look at Algorithms and Data Structures MOOC's. Also read a book on CS interview prep and writing maintainable code. Hope this helps a little. Good Luck!