Most guides out there say do this course or learn this language or may be do some web development and you are a programmer. I know it works to a certain extent but doesn't achieve anything beyond a certain threshold.
Is it possible for someone to self study CS from available materials like good books, public course contents? To such an extent that they have solid grounding in CS fundamentals, learns programming as a tool and become good at it gradually and when needed can venture into a sub-domain and learn about it using the skills already obtained previously to solve problems computationally.
Has anyone here done that? Can you share your journey? Or are there any documented blogs or something?
No offence to "web developers", but I am not looking for advice like learn this framework, this is hot. I want transferrable skills.
What I know of the CS fundamentals I've just kind of picked up on the way. Big O? I learned what I needed from a paper. (I don't analyze algorithms for Google or anything. If I did, I'd need a lot more.)
In real life, very few jobs need you to know "CS fundamentals". They need you to know software engineering - writing code that works, good taste in design, discipline in handling errors, testing, communicating technical matters well. It's worthwhile to know what the CS fundamentals are, but it's OK to learn the details when you need them.
Programming has little to do with computer science. Knowing how compilers work, basic algorithms, etc. comes in handy.
I have worked professionally as a programmer and analyst, with lots of system admin, for 40 years.
I'll leave it to others to decide if I'm a good programmer, but at least I've never been unemployed, so I guess that means something, maybe that employers are desperate. :)
I've done OK.