Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial
Ellis Woods
Courses Plus Student 45 PointsGettings Started with Treehouse
Greetings,
I have been a designer and new developer for some time. I currently own a creative communications firm and I am wanting to take my capabilities to the next level. I have a basic understanding of HTML, CSS, Foundation, and Bootstrap. But I want to really enhance my programming skills by becoming proficient in Ruby and Ruby On Rails, JavaScript, JQuery, PHP Objective C and I am wanting to utilize these skills on a basic level rather quickly. What are your suggestions regarding how I can maximize my treehouse experience? While really making some progress towards becoming a better designer / developer? The other reason why I want to learn these things is because I want to take my business to the next level. I have some ideas for some platforms and technologies that I want to develop and I want to have a base skill level so that I can at least create the prototypes and base structures that I will need to get the ball rolling.
2 Answers
Ryan Duchene
Courses Plus Student 46,022 PointsMy suggestion to you would be to start learning PHP and WordPress. For a scripting language, PHP pretty easy to learn, there's a lot you can do with it, and a lot of the concepts you'll learn will transfer over to other languages such as JavaScript/jQuery and Ruby/Rails. And WordPress (which is built in PHP) is a good outlet for those PHP skills.
PHP stands for PHP: Hypertext Preprocessor. Weird acronym, I know. As its name states, PHP will process HTML before sending it to the browser. It's a very lightweight language, and as such, a lot of servers provide it by default. In fact, I can almost guarantee you that any server you use to host your websites comes with a PHP interpreter built in for you.
WordPress is a framework built with PHP. It was originally designed to be blogging software that was hackable and easy to set up, amongst other things. However, since its original release, its capabilities have greatly increased and it's capable of powering not only blogs, but small websites also and even a few larger websites. In fact, I believe that jQuery's websites are all powered by WordPress, even the API docs.
Speaking of jQuery, learning JavaScript/jQuery is also a good route to choose. But I would recommend that you learn PHP before JavaScript, mostly because JavaScript isn't exactly your best choice for a first scripting/programming language for a number of reasons that I won't go into detail here (unless you want me to, of course). :D
Treehouse has great courses for all three areas (PHP, WordPress, and JavaScript/jQuery). It will take you some time to get through them all, but Randy (PHP), Zac (WordPress), Jim (JavaScript), and Andrew (JavaScript/jQuery and databases) are all really good teachers, and you'll have a blast learning with them.
Good luck! And happy coding!
EDIT: Treehouse has Tracks for both PHP and WordPress development. I'd recommend starting with the PHP Development track and then going through the WordPress track. A lot of what you know now will help you in the PHP track, and when you finish it, you'll be very well-equipped to work in the WordPress track.
Stone Preston
42,016 PointsI would probably do courses in this sequence:
Javascript -> jQuery -> PHP -> Rails -> Objective C.
the courses tend to increase in difficulty in that order, with objective c's syntax and object oriented design patterns increasing the learning curve quite a bit, which is why I would leave it as last. However rails requires a lot of command line usage which makes it difficult as well if you have little to no experience with the terminal.
This is just how I would do it. You can do it anyway you want and still be fine at the end of the day
Ellis Woods
Courses Plus Student 45 PointsThank you for the advice. May I ask why do you recommend that particular sequence and what is the difficulty level when learning in the sequence that you are recommending?
Stone Preston
42,016 Pointswell javascript is the easiest and simplest to learn in my opinion. jQuery is a javascript library so it will build on what you learn in the javascript tutorials. PHP will be your first taste of server side scripting, and its not too difficult. Rails and embedded Ruby will be similar to what you learn from the PHP tutorials, but the command line usage is what makes it a bit harder to get used to. Objective C is probably the most difficult and largest set of videos.
The difficulty level in the sequence I gave you starts easy then progresses from there with the objective C and iOS being the most difficult in my opinion, but it varies from person to person
Ellis Woods
Courses Plus Student 45 PointsI really like your explanation because it seems like that is the way that Treehouse guides when it comes to learning programming. Or am I wrong? How long have you been programming?
Stone Preston
42,016 Pointsabout 4 years now. but ive only been using treehouse for less than a year.
Ellis Woods
Courses Plus Student 45 PointsEllis Woods
Courses Plus Student 45 PointsThank you so much for the advice. What made you start with PHP? And I would like you to explain why learning PHP before JavaScript or Rails is better. If you don't mind. I was also wondering what is the learning curve and learning time for PHP?
Ryan Duchene
Courses Plus Student 46,022 PointsRyan Duchene
Courses Plus Student 46,022 PointsThat's the thing. I didn't start with PHP; I started with JavaScript. Let's just say that JavaScript is, in my experience, the weirdest language ever invented. It is simple. But it's stupid, and stupidly powerful, and so, so, so very cantankerous. Things you take for granted in PHP (loading nested scripts, for instance) become borderline impossible in JavaScript. Or at least, for a guy like me. jQuery helps, but not enough, and learning jQuery with JavaScript will make learning another language difificult.
And Rails? Rails is awesome. But it's got a pretty steep learning curve. By taking the PHP and WordPress tracks, you'll learn a lot of important skills that will transfer over to Rails. (And Django too, if Treehouse gets its Python teacher. Boy, that will be an awesome date in history.)
PHP is a powerful language with a pretty easy learning curve, with few gimmicks (except a few little syntax things that will wear off eventually). About its only disadvantage is that it usually will not scale well: it's stupendous for small sites but starts to break down on larger sites if not used correctly.
(Interesting trivia: Facebook does use PHP, but they have a boatload of custom stuff going on there. Their setup is fairly complicated, mostly because it involves C++.)
And to sum up: PHP and JavaScript are both pretty easy to learn, but PHP is less frustrating, fairly robust and reliable, and a server-side language to boot, which is a lot more powerful than the client-side language JavaScript is.
If you do decide to go through PHP and WordPress, it should take you only maybe three to four weeks to pick up the language. Actually mastering it will take years; I've built three WordPress sites and I still don't consider myself a master of the language. But that just comes with time and experience.
And that's just the TL;DR. I've been trying to avoid posting the walls of text that I'm nefarious for in real life. :D As Stone says, you could honestly go about this however you want to and you should turn out fine in the end. But I'm just laying it out in the way I think would be easiest. :D