and yes, i do intend to return to school but it would be in fall this year, not january because the school that offered january admission did not make me an offer...
and yes, i do intend to return to school but it would be in fall this year, not january because the school that offered january admission did not make me an offer...
On the other hand, if you're happy doing just basic programming in a single language, you can probably learn that without an expensive education. People do that all the time.
PHP is very popular with hobby programmers, so presumably easy to learn. I have almost no experience with PHP, but even Wikipedia uses it, so it's good enough for big stuff. There's lots of work in it, though my impression is that rates are a lot lower than for other languages.
Python is also a very good starting language. Very well designed, and it has the advantage that you're not just limited to the web. Plenty of games have also been written in Python, for example. Jobs seem to be a lot less than PHP, but that probably means that rates are better.
Another good option that might be worth considering is Ruby. Beautiful language, popular with hip startups, rapid development, but not great performance.
If you want to look more into enterprise web development (which you probably don't, but I'm listing it for completeness sake), you have to look at Java. Popular in introductory programming courses. Started out as a nice, clean language, but has been surpassed by younger languages in that respect. There's loads of work at very good rates here, though it's unlikely to be the most exciting work.
And whatever you do, Javascript is always worth learning.
Get a good book, look at all the online tutorials, look at the code of popular open source projects, and start making your own thing.
Did you consider that the company hiring maybe saw potential in you? Or maybe even existing ability that you don't recognise (our industry is rife with impostor syndrome)?
Perhaps they realised you wouldn't be a lead dev but had you earmarked for a more junior role.
My basic point is: be optimistic and courageous. The worst case scenario is you learn something. If there's one thing I've learnt recently it's that no one will hold anything against you for taking a leap of faith.
Even if you go to school for 4 years, you won't learn as much as you will by coding on a real-world project every single day...
I recently started a job(June) and honestly I didn't know how I was going to pull everything off that my boss wanted (A beatiful site design w/ lots of CRM functionality) -- I dug into Laravel a beautiful php framework and I spend everyday in IRC chat asking for help, delving through documentation, etc...until I'm becoming pretty good at it.
Last month we moved off shared-hosting to vps hosting, something I've never done before, did we get someone else to handle the server setup? NO! I did it. I learned a lot about devops, I installed Nginx, APC, PHP-FPM, REdis. I learned how to setup a mysql master slave replication AND how to make laravel play w/ it so that all writes go to the localhost slave, and all reads go to the maindb master.
I also have a redis server on the maindb server that is used for caching of laravel. I also had to diagnose and treat a major bottleneck(load time of 12s) -- now it's 100ms or less. (I was pulling in blog data from wordpress on every page load to integrate into the CRM -- now I cache it for 48 hours.)
Trust me I could never think of all these problems, but as I solve them I learn, and I figure out how to be a better developer, and even some devops skills --which can be very useful.
I took this job on the cheap $15/hour simply for the experience, when I finish the app to a good point as I'm the single developer, I'm planning on moving on to $40-50 an hour job, or asking for a HUGE raise. I also am working on Ruby on Rails side project in my spare time just to get some familiarity w/ that platform - the more you know.. Also I built some of the admin frontend stuff in AngularJS -- some cool filtering of orders filters as I type an email, or tracking#. So in six months I learned:
* How to setup, build, and deploy an enterprise laravel app. * How to setup an app server cluster, with a nodebalancer duplicate the content using Csync+Lsync, Secure the system using firewalls, changing ssh logins, not allowing root logins, etc.. How to speed things up by using Nginx instead of APache - and tweak the hell out of it. How to use redis as a caching engine. * How to use angularJS for a more dynamic front-end to my app. * How to solve ANY problem thrown at me. * How to test and diagnose problems w/ my app. (Learning to write better unit tests currently.) * How to manage a mysql server cluster. * Basic linux crap like ssh, scp, aptitude, etc...
I like Laravel a lot because it's built on php and makes php way sexier. But I also play around w/ other frameworks in my spare time.... I put too much emphasis on this though..
If you're interested, I could help you build your skills. Can't pay you anything, BUT we could collaborate on a startup/website idea, I've got quite a few ideas. I'll let you take lead on the app, and I'll point you in the direction you need to go, where to get help, who to ask, what's next, etc... you'll write most of the code, I'll critique, and give insight, give tips. Then we can deploy it, and I'll let you do that as well.
The key to learning super fast is for you to be FORCED by circumstance to do it, without hand holding - though I'll be hear to help, --but when nobody is doing it for you, you just pick it up as needed. Google/StackExchange and ESPECIALLY IRC Chat are your best friends on this journey.
if i'm understanding you correctly, you're offering to collaborate on a startup/website together where you will give me guidance but i will write the code for it, and you will basically review my code to determine if it's "shippable" and then if you say yes, we will let the code go live? that sounds like an interesting offer. can you teach me how to use github as well, so that this way we can collaborate more effectively?
thanks in advance!