4 ms·
If you know anything about php - take the job. Especially if it's one where you can choose the framework, e.g. Wordpress, Laravel, Joomla, etc... Even if you g
by gremlinsinc 13y ago
If you know anything about php - take the job. Especially if it's one where you can choose the framework, e.g. Wordpress, Laravel, Joomla, etc...
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...
- gotrecruit 13y agothanks for the detailed post. i want to be where you are at now, being able to actually know how to deploy live apps, knowing how to setup all those stuff like nginx, redis servers, etc. i've heard of these terms before, but straight up i have no idea what they are. that's exactly what i'm trying to say in this thread though... i can finish all the codecademy exercises, but how do i start creating code that can actually be deployed live??
- gremlinsinc 13y agoThe thing that took me VERY long to do is just pick a damn framework... In the end it doesn't really matter if it's Laravel, Rails, or a Flavor of Nodejs -- what does matter is you pick one, and get to building. 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.
- gotrecruit 13y agohey i actually might be interested to take up your offer, and i obviously do not expect to be paid for this at all, and i hope this doesn't come across as overly demanding but i need to know a bit more about what exactly you're offering... so perhaps let me clarify? 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!