I have a friend who is looking at various coding academies and asking for my advice on courses. It has been many years since I started my career as a developer, long before coding academies existed, so I am not quite sure what advice to give. What advice would you offer?
Academy Without Academe
Consider what it means to learn to be a developer in 2019. Coding academies started sometime around 2010 and were meant to address the fact that many companies were searching for people who could write the code necessary to promote their products and services, most often referred to as "front end," because, honestly, you would never want to see what was at the "back end." What these academies teach is neither computer science nor software engineering, but they do fill a current niche in the coding world, and they can be an entrance into the world of technology, which is fiscally rewarding. As with all things in the world of technologyincluding the human systems such as the schools that support that worldit is most important to look at the limitations of any product or service.
Most coding academies structure their courses such that they provide a student with a short path to a new job, often suggesting, but never promising, a job after a three- to six-month course. I can think of no better analogy than the trade schools that used to be advertised on late-night televisionthe ones where you got a free toolkit after completing your certificate course in plumbing. The point of any such trade school is to provide students with the minimum skills required to practice whatever trade they are studying, and coding academies are no different. Look at the webpage for any coding academy and you will see the usual mélange of keywords you would expect for jobs building websites in 2019: HTML, CSS, Java-Script, Python, Django, Ruby on Rails, React, Angular, SQL. To those of us who spend our days working in software, only a couple of those are actually programming languages that we would recommend as part of software engineering or computer science.
When weighing any course of education, it is best to think in terms of what you get out for what you put in. The best technical educational experiences provide mental tools and frameworks for solving real-world problems across a broad spectrum, which is why a four-year degree usually takes four years. This is not to say a four-year university program is required to learn computer science or software engineering, but it does indicate the amount of time and effort that will be required to learn skills necessary to be broadly effective in the field. Universities are expensive, and so the coding academy model should be thought of as a short-term, lower-risk way to find out if working in technology is the right fit.
Encourage your friend to pick a course that will introduce concepts that can be used into the future, rather than just a specific set of buzzword technologies that are hot this year. Most courses are based around Python. Encourage your friend to study that as a first computer language, as the concepts learned in Python can be applied in other languages and other fields. And make sure to be very direct in explaining to your friend the certificate effectively makes its holder a front-end plumber, able to unclog the series of pipes that run between businesses and consumers' wallets, and that becoming a software engineer will take quite a bit more study and practice.
Coding Smart: People vs. Tools
Donn M. Seeley
Saddle Up, Aspiring Code Jockeys
Programming in Franglais
The Digital Library is published by the Association for Computing Machinery. Copyright © 2019 ACM, Inc.
No entries found