Feeling a curriculum gap


#1

I came to Codecademy through the new Web Design & Development course last spring, which was great. The platform nails my learning style, and is hugely preferable in my view to video-based courses. I have more than made the cost of the course back as a freelancer designing custom sites for clients in Squarespace and Wordpress.

I am confused about the next steps. To keep working freelance with clients, I have been getting more familiar with WordPress, and thus have been working on studying PHP through the soon-to-be-defunct Codecademy course.

Per your community thread, it sounds like your staff is fed up with hearing people complain about Codecademy getting rid of the PHP course. Apparently there is much more demand for Angular, React, and Ruby. However, I am at a loss how to bridge from where the Web Design/Dev course ended (JQuery), and moving into developing front-end applications, which seems like a very big jump.

Are you suggesting that in learning to become a web designer/developer, I shouldn’t need to rely on a CMS like WordPress? That the smarter move is to offer clients a custom API developed with Express.js, or use JavaScript for all back-end needs? Is there something comparable to a CMS with this framework, or do you always need to create your own back-end interface for clients “from scratch”?

Thanks, sorry if these are answered elsewhere, I’m just feeling a little baffled by this – most/all of my clients and potential clients are requesting WordPress, there is a large community around it here in Seattle, I am under the impression it is growing in usage. However almost no training academy seems to offer PHP, your site is taking it down, apparently it is quite unfashionable among developer elites. Regardless learning it seems like the only rational way forward as a I continue to cover website fundamentals.

Just wondering if you have any helpful insights here.


#2

You’re right, PHP is still popular but it is also the case that it is on its way out. Nobody knows for sure what the future holds but it’s increasingly looking like a language of the past, not the future, remaining in demand largely because of a lot of the legacy work online including that of Wordpress. Ultimately, if you plan on learning to become a full-time web designer / developer, you’ll not want to be beholden to a CMS. It constrains what you can do, and it’s not how the majority of non-freelance jobs operate – a CMS might be useful for getting a company off the ground, but eventually they’ll want or need a more robust solution. You’re right too in that this is a jump, learning to use and using a CMS is fast yet underpowered compared to building from scratch being slow but powerful (though there’s a nuance in that you can get a big jumpstart on your work “from scratch” using APIs, open source, or other resources online). Though the latter is further away in terms of your learning journey, it has more potential for growth in your career.

Learning React or Angular for front-end applications (React is more popular right now) would be a good idea, as would learning ExpressJS as you suggested. That said, if you’re finding success as a freelancer working with WordPress, that’s great, you can always switch from PHP to another language down the line if you so choose.

These are my personal 2¢ rather than Codecademy’s “official advice”, but I hope it helps – if anyone else has any thoughts or advice, I’d encourage you to post them!


#3

Well basically what I am going to do is jam through the Codecademy PHP course before you take it down and keep mastering WordPress so that I can continue to make enough money to support longer-term training. I’m not really understanding this answer – it sounds like you’re saying not only is PHP on its way out, but the entire concept of building websites on a CMS (most of which use PHP/MySQL) is on its way out. I will need to do considerably more research to convince myself of this. In my 10 years of experience as a marketing manager I was deeply unimpressed with one agency’s confusing and difficult custom backend built on Rails, and saw huge improvements moving to WordPress in terms of cost and usability. This was a website for a 150-person firm with 300+ pages. So I’m not sure what the threshold is where a ‘front-end application’ makes more sense for a company than a CMS. If you have some literature to recommend on this I would appreciate it.


#4

I’m not saying that CMS is on it’s way out, far from it – to me it’s clear that they’re becoming more and more prevalent but that growth and that future is beyond simply Wordpress. This doesn’t mean that if you want to become a full-time professional developer that being a CMS specialist is the way to go. Take a look at the developer job descriptions that interest you at all the companies you’d want to work for and see what technologies they’re looking for, note how many of them asked for CMS specialization and PHP. If you want to be a CMS / PHP specialist there’s definitely a market for that, but I’d bet not nearly as lucrative a market as with other technologies.


#5

This is an incredible complicated matter, and you will find a lot of contradicting opinions because getting exact numbers is very tricky.

PHP is used a lot, really a lot, and by a lot of big companies. But it seems for new projects PHP is chosen less then a few years ago. People certainly look at possibilities like rails, django, and more and sometimes choice rails or django over php

there are enough scenarios where PHP still has the upper-hand, and powerful tools like wordpress still make very viable options when it comes to cost and usability

And now there is PHP7, which from what i read, is a massive improvement. The problem is that updating to PHP7 might be a pain. So who knows what the future will bring

well, with frameworks like reactJS, vueJS and angularJS sometimes an SPA (single page application) can also be option. Everything is rendered on a single page, of course, there is still a back-end logic, maybe this is the future? I guess only time will tell


#6

I can see that I am in the minority among this site’s audience, in that I didn’t start this path to become a full-time professional developer, so much as a jack-of-all-trades designer / brand consultant / content manager that also knows how to code. It’s probably a less lucrative career than being a full-time developer, but it’s what I do and I’m into it. You’re right, most of the companies I work with don’t need a true developer, they just need a CMS specialist, or more accurately, someone that can steer their company in the right direction in setting up their online marketing strategy. And personally I would LOVE to not have to learn PHP, since Python and JavaScript are what all the cool kids are learning and definitely looks more fun, forgiving/etc to code in, and I assume Django and platforms like Mezzanine will have a big surge sometime in the coming years when those kids come of age. But I also went to a WordPress conference a couple of weeks ago and it seems like a very cool inclusive open-source community that represents more of the culture I am looking for than a big corporate tech-bro firm, so there’s that as well, and it’s kind of a bummer to have to part ways with Codecademy on that journey due to their allegiance to corporate interests. :slight_smile:


#7

i am afraid so, most of codecademy audience is people who really want to become a developer, or at least make a start into this, and then see what roll will fit them.

yes, your role is different from the codecademy audience described above, for your roll and similair rolls, wordpress is the most used CMS, and immensely popular and it will stay this way for a long time


#8

Ok, but just so I’m understanding oduffy’s comment correctly –

Here is an example of a content-driven website built as a stand-alone application with React.js and Ruby on Rails (according to Wappalyzer).

I like this site, and if I interpret you correctly, building it was likely fairly lucrative for the developers involved. For the money, it is a more “powerful” tool for the brand than could be accomplished with a cheaper Wordpress site. Probably it runs faster, has a smoother workflow, allows cooler graphics, better integrates with internal database APIs, and ultimately makes the company more money, even with a higher up-front investment in development.

My question is still – how are the non-coding production staff at Lonely Planet uploading content? What is the standardized or open-source backend CMS environment that does similar things as Wordpress in this case? Did that have to be custom built as well? Does every web design agency provide their own solution?

Researching this, it sounds like Express.js performs a similar role as PHP in providing a way to interact with databases, and something like keystone.js would be the equivalent of Wordpress in providing a CMS platform.

In other words, there is an entire front-to-back web design workflow that can be coded with HTML/CSS and various permutations of JavaScript, with no need for an extraneous server-side scripting language like PHP. Is that more or less right?


#9

I “inherited” using Codecademy as a coding teacher. Codecademy killed the teaching section before the school year began and it seems like they are not as interested these days in being an institutional asset to teachers or professional folk who want to utilize the site and lessons to teach others.


#10

I would disagree with your characterization of this as a “corporate interest” thing – we’re a company with just going on sixty employees now and though we do have some companies buying Pro for their employees we don’t really have an enterprise-focused wing of the company. We have a consumer focus and we’re trying to deliver the best possible learning experience for our learners for cheap or free. We’re continuing to produce the free courses that our users want and need most, just see here for examples.

We are a small startup with a small team and millions of users every month with hundreds of thousands of new users joining us every month too. Every active user has to have an individual coding environment virtualized for them. Just imagine what the server costs are for something of that scale! (side note, you know how you get the “get back to coding” popup frequently for inactivity – that isn’t just a reminder for you, it’s a big saver for us) We’re quite open about the fact that before releasing Pro we had only a few months of runway (that is, money to pay our bills) left before we’d have to shut down for good – even if we were a non-profit charity, the expenditure it takes to offer this much to so many people would still be there and we’d have to have built a massive fundraising operation just to stay afloat let alone grow. For financial and time concerns (we only have so many engineers and they all need to sleep sometimes) and heck because we’re a startup we have to ruthlessly prioritize what we focus our energies on, and that means sometimes older features that we liked but just aren’t used by millions of people can’t be maintained forever. PHP is an example of this, so are teacher tools. We’re hiring engineers as fast as we possibly can to build the curriculum and to build/maintain our overall infrastructure. We hope to bring a lot of these resources back when we have the bandwidth to be able to maintain them. But at the end of the day, we can’t be all things to all people and we have to pick our battles.