Codecademy's ReSkillUSA: Gestation Period For New Developers Is 3 Months
theodp writes: TechCrunch reports that Codecademy has teamed up with online and offline coding schools to create ReskillUSA. "3 months," explains ReskillUSA's website, is "how long it takes a dedicated beginner to learn the skills to qualify for computing and web development jobs." TechCrunch's Anthony Ha explains,"By teaming up with other organizations, Codecademy is also hoping to convince employers that completing one of those programs is a meaningful qualification for a job, and that you don't necessarily need a bachelor's degree in computer science." In his Medium post, Codecademy CEO Zach Sims calls on "students learning for the jobs of the future or employers interested in hiring a diverse and skilled workforce – to join us. The future of our economy depends on it."
It's too bad I can't mod TFS funny.
Great minds think alike; fools seldom differ.
We're hitting peak shill here captain!
that schools don't teach coding. Schools might give people with coding talent a jump start, but as with art, you either get it or you don't.
"Learning the skills" just means that you can type in some lines of code, and make it do something. That's a far cry from learning what it takes to create quality software.
We need more cheap code monkeys that we can use as interchangeable and discardable cogs, who the fuck do these nerds think they are expecting a middle class income.
If you hire someone that's only been coding for 3 months, it will add negative value to the entire team.
3 months = thinks they know everything
6 months = realizes they don't know shit
3 months = thinks they know everything
6 years = realizes they still don't know shit
I've been programming for nearly 30 years, and I'm starting to think I know everything. :D
I think that means I've got another 30 years before I realize that I STILL don't know shit.
Seriously though, don't hire anyone with 3 months of coding experience. Let them work on personal projects for 4-5 years first.
This is a bad shitty idea. If it takes just 3 months for them to get skilled from zero to "hey give me a job as I can do this" then clearly there's something wrong with the language or technology they're learning.
It's like saying giving someone a day's training on how to flip a burger and ask if you want fries with that makes them qualified to cook quality food at a chef level for the world.
Something witty or insightful. Blah blah.
Where you have to list assumptions for your problem statement. For instance: 1. We're assuming that the 'beginner' already has a functional knowledge of more advanced math. 2. We're assuming that the 'beginner' already has a functional knowledge of computers - things like screen widths And so on. Yeah. I can grab my 7 year old, plop him down and teach him to write basic programs like 'hello world'. But he won't have the background in all the other subjects along with the critical thinking and problem solving skills that are required to actually be a good programmer. THAT's a skill set that takes way more than 3 months to teach.
I don't normally reply to my one post, but here's the key take away from that article:
Codecademy is also hoping to convince employers that completing one of those programs is a meaningful qualification for a job
I.e. - create a new certification that companies can require. Then profit from it.
Please tell me that I'm not the only one who laughed aloud at this.
Don't complain, these guys are training your future minions. You know, for all the easy to do but time-consuming and boring as heck tasks. You know you want a minion.
Don't waste your vote! Vote for whoever you want, unless you live in a swing state it won't matter anyways
There are plenty of high schools that teach people the basics of programming in the course of ten months. The advanced courses do a pretty good job of covering everything from languages to algorithms to software engineering. Yet I don't see businesses jumping at the prospects of hiring these graduates.
There's a reason for that: they only touch upon the basics because they only have time to touch upon the basics. While that may be enough to put together a website for a small business or create a basic smartphone/tablet app, only the tiniest minority will come away with the skills to make something as advanced as a salable indie game.
To do anything innovative, you need both the training and experience to handle the mathematics and design that goes into larger applications. That takes years, which is why university programs take years. Without that extra effort and the dedication behind it, very few people are going to be able to develop anything beyond the most basic program.
(Note: I'm not suggesting that the training and experience has to be formal, since a lot of self-studies have done amazing stuff in this field. Yet even teenagers who have created sophisticated programs have been building upon their skills for more than a year, never mind a few months.)
Technically, someone could be a "programmer" after only 3 months of work. More specifically, a "bad programmer".
From TFA:
That kind of says it all right there.
How about, instead, they put together a curriculum showing what an entry level programmer should know? Even if it takes more than 3 months to finish it all. And what the different sub-fields are in programming (kernel hacker, web site designer, database programmer, etc). Maybe you don't need so much math if you're going to be "coding" in HTML/CSS/scripting-language. But then you aren't going to be hitting the $80,000/year "average" that they claim.
I doubt they would last through the interview. I do like the system they have of video / guided code editing for learning. But to extend that beyond initial learning is way too far.
Three months? I've been doing this development stuff for many, many, many years and still haven't figured it out. I don't think an experienced person could truly grok a code base (that does anything worth doing) in three months, let alone a beginner learn everything from scratch.
I guess what they mean is that there's so much churn and change for the sake of change these days that any skills you pick up have a three-month lifespan before they're obsolete.
And they wonder why no one wants to be a software developer these days!
And here you were worried where the next generation of software security flaws and data vulnerabilities were gonna come from!
Yeah, I'm sure three months is plenty of time...
#DeleteChrome
Preposterous! Took me 3 and 1/2 years and 92 thousand dollars and I am certifiable.
then learn how to think, the rest is bs.
I write scripts or buy utilities to do the boring stuff. I wouldn't mind a bright and motivated minion, but I don't think a minion would save me time. It would just be someone to interact with when the computer and I were having one of our off days,
It's LOL, for sure. In three months you can teach someone the essential keywords of a language and basic syntax, sure. Knowing the essential words doesn't make one a developer any more than it makes one a poet. Programming is nearly pure thought, reasoning. Noting the results of the thought-work using the shorthand known as "code" is a necessary piece of sidework, like an archaeologist. taking notes using archaeological abbreviations. The ability to take notes doesn't make one an archaeologist, the ability to scrawl code,doesn't make one a software architect. To be fair, their very name admits they teach the wrong thing - Code Academy. Apparently they teach code. Pretty much like setting up Medical Abbreviations Academy, where they teach medical abbreviations.
As others have said, I've been programming professionally, and studying my craft, for nearly 20 years ; I still consult with my peers several times each week because none of us know everything we nees to know yet. Except Knuth, of course. Probably the closest any programmer has gotten to knowing their job is Ted T'so - he's the best in the world at developing filesystems. He only needs about 20 other people to review his work before it goes to production.
Knowing how to code is not the hard part. Knowing what to code is the hard part. If you believe the Web surveys, companies are more interested in developers with business skills than super coders. I have no idea where inexperienced coders with only a minimal education fit into this.
> for all the easy to do but time-consuming and boring as heck tasks.
That's what CPUs are for. Just put the shell command in a for() loop, or if it's more complex, a 10 line Perl script.
Ah, you must be from the land of Windows, where the shell is graphical-only and therefore a PITA to script, and rather than inputting and outputting simple text, everything has it's own special object format. Yeah, in that case you need $60,000 worth of minions to do what we Linux guys do in 60 minutes per year of scripting time.
An interesting job is to be a minion in a Windows shop, but a minion who can script and has a Mac. The boss gives you an eight hour job, you spend 10 minutes scripting, two hours on Slashdot, two hours at lunch, and give them the results two hours sooner than expected.
Yayyy! Yet another site trying to convince employers that coders are a fungible commodity, like McDonald's workers or Walmart greeters.
The only upside I see is that I get a LOT of work fixing the mistakes of "coders" with no background who build systems without any thought towards maintainability and proper architecture.
And people wonder why nobody wants to go into STEM fields. On the one side people are being replaced by cheap H1-B imports. On the other side, sites claim that decent coding skills only take 3 months to learn.
Good luck with that America.
The issue you describe is due to cut-n-paste coding. Snippets the "programmer" knows works to accomplish Y function added to others to do X and Z and maybe a little T, U and V as well. But they just mash it together, get it to mostly work and leave it to someone else to figure it out later, or get it into "production" and start working on "fixing" the code when the base issue is that its not "a program" but "many programs all mashed up without knowing how to properly build code."
Nothing to do with the shiny and new, just cookie-cutter India programming school graduates who were taught to code...in 3 months.
Full disclosure: I hold a bachelor's in CS from Stanford and have been an engineer for 14 years since then. I think my degree was, to be polite, poor preparation for any real-world work beyond teaching college CS courses, although I have also never seen any program I think is better.
I've been saying for a while that any "good" engineering education of the future won't look much like today's system. A college degree is a needlessly long, expensive process for qualified candidates to go through to demonstrate their ability (although I definitely think college has many other benefits), and wastes our time with piles of worthless freshman requirements. On top of that, "Computer Science" isn't what engineers do - it goes into far deeper theory than is needed for almost anyone, and at the same time leaves out a lot of real-world skills that are critical for building functioning software.
Ultimately, the only reason CS degrees have the industry importance they do is because it's one of the only things recruiters can understand. For that very reason, boot-camp programs like this, despite their utterly moronic assertion that a decent engineer can be cranked out in three months, are nonetheless a step toward a better solution.
I think the industry needs some sort of advanced trade schools - basically, a prestigious version of DeVry that teaches not just programming using the language of the moment, but *software engineering* as the separate discipline that it truly is (maybe this already exists somewhere, but I think it should be widespread). We need degrees that are good enough to indicate reliably high value in a candidate and provide enduring background knowledge, affordable enough for the average middle-class person to break into engineering, and still provide a black-and-white resume line item that's simple enough to pass the buzzword filters in recruiters' minds. I see no reason why a two-year associate's degree that's packed full of courses on real-world subjects, as well as tons of actual code construction, couldn't theoretically be *far better* than any current CS degree from a top university.
I was never able to take a single class on scalability, security, development methodology trends and how to evaluate them, management of large codebases, refactoring, etc. These are not flash-in-the-pan concepts that only reflect some current fad, but timeless and critical skills that are fully suitable for a university setting. However, universities are too mired in trying avoid looking like trade schools (and thereby justify their astronomical prices) to care much about providing real value to their customers, which makes them ripe to be punished by the free market.
Programming is a tool used to perform work. Learning how to use a tool does not make you qualified to do anything. The analogy being teaching somehow to write does not mean that person can now go and become a best selling author.
I started with
Granted, three month's boot camp isn't a lot but software development is not brain surgery and it doesn't take years of training until we let you loose on a live patient. For example I got this big spreadsheet of "business rules" from work where I think < 1 month of SQL experience is sufficient to be useful, here's a text description so write an SQL rule and create a couple test cases to prove it works as intended. And we're talking about simple checks that translate down to WHERE $date1 >= $date2, WHERE $field1 = 'X' and $field2 IS NULL, WHERE $code NOT IN (SELECT code FROM validCodes) and so on. It's still a job that needs doing when there's hundreds of pages describing the input format.
Not worth the wage is another story, but other people only drag down your productivity if you're expected to spend time training them or they're let loose to create havoc you must clean up, if they can shoulder surf until you feel they have anything valuable to contribute with then at worst they're totally useless. Create a branch for them, ask them for a simple feature and if it's okay then great, if it's facepalm-worthy consider cutting your losses but if it's salvageable in less time than writing from scratch you're not worse off and he'll probably do better next time.
Live today, because you never know what tomorrow brings
Wow... lots of incredibly defensive responses. Almost as if these people feel threatened by someone with 3 months of education in their field.
Just to clarify, the minions are for menial programming tasks, not to do automated tasks that would be better done by a script.
Don't waste your vote! Vote for whoever you want, unless you live in a swing state it won't matter anyways
Remember when you could learn to be a HTML/CSS "coder" in a couple of months and, if you were lucky or knew the right people, get a fairly well-paying job? That must have been around 1996-1998...
HAAAAAAAAHAHAHAHAHAHA
Sincerely yours,
A developer
It seems that reports of the death of PowerShell were exaggerated. Given that, I wonder why it is while most *nix admins use ssh, which has snappy response even with a kbps connection, I've never heard of a Windows admin able to work with anything less than a full gui remote desktop - even when it was on their 3G phone. Why have they spent hours tediously waiting for the screen to refresh between clicks when they're remote if there was a perfectly usable console shell?
My impression has been that the many different shell environments haven't been perfectly usable. That makes sense given Microsoft keeps tossing them out and replacing them with a completely different one. Are they in fact perfectly usable, but Windows admins just aren't smart enough to use the right tool for the job? That would surprise me.
"3 months," explains ReskillUSA's website, is "how long it takes a dedicated beginner to learn the skills to qualify for computing and web development jobs."
Now we know why there is so much shitty code being thrown out every day and why software from multi-billion dollar companies sucks so badly.
I read somewhere that it took roughly five years of training for a Roman to be considered a real soldier yet somehow these folks are claiming in only 3 months someone can be a qualified programmer.
We will bankrupt ourselves in the vain search for absolute security. -- Dwight D. Eisenhower
Even with those skill, 3 months simply is not enough time.
These are three major hurtles that all take longer than that.
1. A wall of text does not just look like an imposing and confusing mess.
2. The developer can think in code and does not go through a taxing and inefficient translation phase.
3. They can read, understand, and edit other peoples code.
Troll is not a replacement for I disagree.
They must be channeling Spock. If we go by the book...hours could seem like days. Clearly they meant that 3 months is 3 years. But they didn't want any uncoded messages on an open frequency.
So, there is some truth to the 3 month number. I learned C from a minimal programming background in one semester as an undergrad, or about three months. Of course, 20 years later I'm still refining my skills. The rest of the CS degree gave me a much more solid foundation than I'd have if I had gone straight to work after learning C. Surprisingly, basic theory like complexity analysis come in handy when building applications.
-Chris
Three months is long enough to produce a code monkey, not a software developer, let alone a computer scientist. I venture the result of such a regimen would be someone who is ready for an apprenticeship, not produce anything on their own.
Using same scaling factor as Codecademy, I figure about 3 weeks to train a replacement.
Think of all the money that could be saved!
Why is Snark Required?
this is.
1) You always need five years of recent, verifiable, professional experience. Don't take my word for it, look at the ads.
2) The experience needs to be in about six different technologies, and every employer has a different list. Often the required skills are not even related to computers, i.e. HVAC tech - seriously, I've seen that, more than once.
3) Over 35 is considered very old.
Also, remember that employers are shipping jobs offshore as fast as they possibly can. And the jobs they cannot ship offshore are to be filled with visa workers.
Yeah, three months of coding training, sure, that'll do it.
Good luck.
Three months training is a perfect amount of training to royally fuck up just about anything, yes.
Hmm, so they'd know HOW, mechanically , to screw everything up, but not know why what they're doing is wrong and dangerous? I'm not sure I'd want that. I'd prefer that they be very good at their job, I be very good at mine, and both of us clearly understand that we don't know each other's fields.
IT people, perhaps- it's probably good if the sysadmin can do:
for file in *.spam
do
mv $file spam/
do
I don't want my accountant trying to write a payroll system as a shit ton of Excel macros, though.
They should fire their IT staff and only run it using their 3-month program "grads". Is this the same company that tells companies that they should only hire PMP certified people which, of course, a PMP certification can only be obtained from them?
Won't this just saturate the market? The easier it is to gain these skills, the less in demand they are.
A lot of people get pretty hostile towards the idea of faster training programs, which is understandable since they can't think beyond the 4 year degree (that doesn't prepare you for the workforce anyways).
The legitimate quick training "bootcamp" programs do not claim to be putting out a programmer who can lead a team or build a product from scratch. They are claiming to put out entry level developers. Entry level means they still need to be mentored and brought along. The other thing people fail to realize (I watch this industry closely) is that the typical established program bootcamp graduate:
1. Already has a 4 year degree of some kind
2. Already had started coding as a hobbyist, and most of the successful program have 6-12 weeks of pre-work before they attend... So by the time they graduate and get a job they are nearly 6 months in as far as training.
3. Because they are intensive full time programs, where over the course of 4 years you might get 400 hours of classroom time relating to programming in a degree, they are pushing 700+ hours in the classroom and 400-700 in pre-work. If you are 1000 hours of practice into programming, surely you can perform at a junior level.
"Codecademy is also hoping to convince employers that completing one of those programs is a meaningful qualification for a job, and that you don't necessarily need a bachelor's degree in computer science." ,in which they're turned into 'experts' in a particular field.
- that's so true - just look @ all the indians over here on 457 visa's, none of them have comp science degrees, but they all have completed short training courses, typically 10 weeks
No need to that six-year engineering degree to understand something? Oh, understanding is optional in this 3-monther. Oh, it takes that much to learn the basics of a single programming language and its most commonly used libraries, or a single library. I believe I understand something now even if I haven't got the degree which lies between the degrees consisting of MSc+industry or university research training and the PhD+postdoc.
Would the employers take me seriously after 3 months of training? No, if I wouldn't have an advanced degree related to the industry, good scores in the tests, references from somebody they know and a great personality. Oh, if I fail that personality part, there is ten former telecommunications company workers behind the line who have all the same qualifications and even more programming experience from various projects and more connections, obviously.
It would take 3 months just to learn the emacs key bindings.
3 months only? Sounds like developing software is a very trivial task that doesn't deserve high salaries.
Its simple really. All those liberal arts grad that went to private schools and live in prime area have to get ahead of u. Its just backwater to disenfranchise legitimate cs graduates. I'm sickened by the amount of people that are no better at programming than I am and probably worse. They get ahead if me by usurping in. Its that simple. Same old jobs for the boys culture. That's all this gestation nonsense is. No wonder innovation is stifled.
You've expressed the positive possibilities well.
I'm just curious, is your keyboard broken, no period key? I ask because you seem like a native English speaker, don't seem like a moron, and used other punctuation such as commas and - wtf ellipsis. How do you type an ellipsis but not periods?
Someone attending a 3 month crash course is going to be an intern/beginner developer. This is the point. They're going to start working at the bottom of the career ladder and work their way up. One could argue that after 4 years they would have improved especially if they're of the type where they know that programming is a never ending learning experience. One could also argue that a large problem with the university system is that a lot of graduates feel that once they have graduated they're accomplished and done.
I actually support whatever methods we can employ to get more people into development. Girl scouts often does 3 month crash courses to get girls coding, girls who code, the same. We have to start somewhere as the university system isn't for everyone and should NEVER be a qualifier for what is good in the day and age when we can all learn and share and knowing how to learn is the most important aspect of being good at anything.
I would recommend being a watchmaker over computer science.
After three months of intensive training, and no industrial experience, I'm sure these people will be more dangerous than useful.
Many programmers still lack the knowledge and experience to produce good code after several years of working on good production quality code.
As a C++ software engineer writing retail software for desktops, I strongly prefer hiring engineers with 10+ years of experience. Even after 10 years of writing C++, how many people are really experts? In my experience, very few indeed. Fortunately, our management has now learned the lesson that you can't hire people straight out of university, and dump them onto projects, expecting good quality, or even functional software. The idea of hiring someone with 3 months of training is just ridiculous. It is cheaper to hire people with a track record, and proper skills, even if you can afford many fewer of them. Unfortunately, such a lesson was learned through experience. Now we have ten years of monolithic technical debt to modularise, effectively a complete re-write from scratch, all while keeping the program functional and subsuming the functionality of the GUIs for several products into one. Some of the code in the individual product plugins even shares common heritage (ie. it was copied + pasted at some point in the past, then modified). The job of dealing with such a mess, along with the amateurish design of existing code, is one massive nightmare. Good software design takes years to learn - not months. 1 year of practical experience, working under good architects will begin the give some impression of how to do things correctly, but it doesn't amount to delivering the ability for a developer to go out on their own, and develop well engineered software.
These kind of short programming tutorial courses may have value for management, or for people working outside the area of writing production software, but unleashing the clueless on production programs is a recipe for design and implementation problems that will just lead to complete re-writes, major security problems, and outright project failure. Would you trust someone who has done a three month course to write code without security problems? or even to use the basic features of a programming language correctly. I wouldn't.
The above said, a 4 year university course in computer science or software engineering is the best start for a programming job. It is simply not true that the contents of a good CS course are not relevant to programming jobs. Programmers need to understand things like the mathematics of computer graphics (matrices, geometry, and linear algebra), calculus for engineering software, algorithms/data structures for more complex problems where standard libraries of containers will not suffice, how to write parsers and compilers (production quality software has to understand user input somehow!), and the basic organisation of the internals of an operating system and CPU, to know how to optimise code, and optimally map the constructs of a high level language in such a way as they deliver the expected performance in retail software.
For the vendors of courses like this, there may be money to be made from the naive, but in the long run, both candidates and the employers, will likely be terribly disappointed, at least if they have the sense to employ some metrics to determine the ultimate cost of their risky adventure into brain surgery performed by a janitor with a few months of training. In fact, maybe the people running this course should also train doctors or surgeons in three months, and then accept all future medical care from them. I'd be amused to see if they are willing to take that risk, or assume liability.
I'm now curious if, as half pint hal suggests, you code a lot of JavaScript, which auto corrects missing semicolons at the ends of lines. If the terminating semicolon is implied, it is logical that the terminating period would be implied.
Ever sense I read The Design of Everyday Things I've been interested in the psychology of error.
I think a lot of the conversation here on Slashdot is missing the point. This service and certification is not for you.
I work at a large financial institution as a "quant". Programming is not the point of my job, but I do a lot of it to complete my work. This has provided an interesting vantage point into the IT/programming side of the business as well as the "business" (a cringeworthy term implying IT/programming is not "business") side of the business.
I see this offering as good for the following two types of people that I interact with somewhat regularly.
Type 1: An analyst with the best of intentions will call me and tell me about something he/she is working on in Excel. Over the course of the conversation, it will become obvious the person is spending a borderline outrageous amount of time doing some thoughtless manual task. I write something in VBA to perform the spreadsheet task in seconds and give the person their life, soul and sanity back. I recommend the analyst learn programming and feel warm and fuzzy for, hopefully, making the world a better place.
This person would obviously benefit from learning the three month course. The person does not need enterprise level skills and theoretical foundations, he/she needs to know loops, conditional statements, regular expressions and a handful of things that will literally change the way he/she works for the benefit of everyone.
Type 2: Non-technical manager of aforementioned analyst calls and thanks me for my help. However, the manager quickly will suggest my contribution would be even better if I made "just one little tweak". This tweak usually involves restructuring databases, implementing semi-unsupervised machine learning, image recognition or some other massive undertaking to shave another minute or two off of his/her department's workflow.
This person would obviously benefit from understanding that computer programming is not magic. What this person is asking for is a serious undertaking where costs massively outweigh the benefits. Learning even a handful of things would likely help this person understand the scope of what they are suggesting.
My concern about the current state of many University programs and especially these ridiculous (for profit) IT certification programs can be summed up as follows.
We are graduating students with too much knowledge and not enough skill. We have produced a nation of memorizers and test takers.
I know this is out there, but we need is something like the Guild system, Apprentice, Journeyman, Master - the skills and knowledge required to "level up" can be obtained from a variety of sources, both school and OJT. Bouncing between school and work is a great way to go. Context and skill from work, knowledge and skill from school.
When I hire, what a candidate currently knows is if interest, but I'm more interested in a demonstrated ability to figure out stuff you have never seen. It will take more than three months to teach that and I'm not convinced it can be taught in a classroom.