I am never short of ideas, but I would imagine that as a self-taught programmer myself, there must be certain implementation practices that would be obvious to a professional, but not so much to an amateur like me.
What are your thoughts?
1–10 of 10 posts
I am never short of ideas, but I would imagine that as a self-taught programmer myself, there must be certain implementation practices that would be obvious to a professional, but not so much to an amateur like me.
What are your thoughts?
Here's a few things that I wasn't exposed to until I studied /turned professional - maybe some of these are the practices you are talking about?
- Version Control (Git, CVS, Subversion, etc.)
- Database design
- Performance optimization
- Caching
- Design Patterns
- Object oriented design
- Unit testing
Maybe you know these things already, but not knowing these things isn't going to stop you, none of those are worth losing sleep over, you'll pick up what you need on the way.
However, if I had to pick one thing out of that list that I wish I'd encountered sooner it would be version control.
That plus mentoring by the more experienced for a few years got me to at journeyman level in less than a decade. More reading, thinking and developing got me to master about two decades after I started.
Many coders start out self-taught like you. I did, and then studied for an IT degree and got professional work. Here's a few things that I wasn't exposed to until I studied /turned professional - maybe some of these are the practices you are talking about? - Version Control (Git, CVS, Subversion, etc.) - Database design - Performance optimization - Caching - Design Patterns - Object oriented design - Unit testing May…
Perhaps take the Joel Test in reverse: http://www.joelonsoftware.com/articles/fog0000000043.html
Many coders start out self-taught like you. I did, and then studied for an IT degree and got professional work. Here's a few things that I wasn't exposed to until I studied /turned professional - maybe some of these are the practices you are talking about? - Version Control (Git, CVS, Subversion, etc.) - Database design - Performance optimization - Caching - Design Patterns - Object oriented design - Unit testing May…
I started with PHP, which lulls you into thinking that procedural programming is all you'll ever need. For larger and more complex code bases though, OOP really makes things more organized.
Things that were non-obvious to me in the beginning: version control, database normalization, query optimization, and the importance of reliable infrastructure and testing your backups.
Many coders start out self-taught like you. I did, and then studied for an IT degree and got professional work. Here's a few things that I wasn't exposed to until I studied /turned professional - maybe some of these are the practices you are talking about? - Version Control (Git, CVS, Subversion, etc.) - Database design - Performance optimization - Caching - Design Patterns - Object oriented design - Unit testing May…
Many coders start out self-taught like you. I did, and then studied for an IT degree and got professional work. Here's a few things that I wasn't exposed to until I studied /turned professional - maybe some of these are the practices you are talking about? - Version Control (Git, CVS, Subversion, etc.) - Database design - Performance optimization - Caching - Design Patterns - Object oriented design - Unit testing May…
so according to your experience, does going to college and getting an IT degree worth it? or should non-tech founders self-taught and continue with their startups anyway?