| I've tried numerous times to pick up programming in my free time. I'm not dumb (actually smart when it comes to SAT tests) but I've always failed. Looking back, I think what hurts me is the feedback loop. To get a job in programming would take 6 months+ of hard work. Sitting by the computer every night vs spending time on a hobby eventually becomes a hard decision. This is especially true when the coding becomes more tedious and I must reach out for help. This time around I plan on hiring a tutor. Also I think it would be good to link it to easy odesk/freelance work. I plan on moving to a 3rd world country in two years, so its not unreasonable to assume that if I do good work it could provide a decent standard of living. I'm more money-oriented than many people seem here (I don't have some cool side project I've been dying to build). I think it would be good to use odesk/freelancer as a motivator because:
1) Forced deadlines. I have several abandoned programming projects
2) Pay. This amounts to beer money in the States but it would help as I'm a student. But also for the potential to live abroad in the future. Which is the best language or framework for this? PHP? Cakephp? I'm guessing something like wordpress or joomla, but could be wrong. Again, the greatest threat of this is me spending a month reading a coding book, starting a side project and never finishing it before becoming proficient. |
I recommend starting with (this is the same advice I usually give everyone just getting their feet wet):
Head First HTML and CSS
Work along with it using Sublime Text (editor) and MAMP or WAMP (OSX or Windows, I recommend using a mac if possible).
After working through part of that book. Buy a domain and a hostgator account learn about DNS, point your A record to your hostgator account and start FTP'ing (Filezilla client) up a website to your hosting, view on your domain.
Once you complete that book, learn some javascript/jQuery, there are head first books for those too, but I think you can learn this from the web.
teamtreehouse.com is a great place to learn.
Next back to Head First PHP and MySQL. Work through that book, working locally and on your hosting account.
I would stay away from odesk now upwork and try find local clients first or connect with friends/clients online (craigslist and twitter are better than upwork), better pay, less headaches.
Once you have some PHP and MySQL knowledge next I'd recommend Wordpress. There is a head first book for that too.
Install wordpress on MAMP/WAMP locally and on your hosting account. Install some free themes and free plugins. Modify a theme, make some posts.
Wordpress is a popular ecosystem and there is lots of work there.
Leveling up beyond the items above is creating web applications.
You can create a simple one from scratch using PHP and MySQL this is a good way to learn the inner workings of an app from scratch. Once you explore that for an app or two you can move on to a framework.
For frameworks I would go with Laravel (PHP) and/or Rails (Ruby) those are the most popular in each language.
LaraCasts.com is a great resource.
Good luck.