- Many high schools that used to teach computer science (programming courses) stopped doing so.
- State educational departments made rules that disallowed many teachers who had been teaching programming from teaching those classes at high schools
- State educational departments made rules that disallowed many working professionals from teaching computer science at community colleges
Combined, these rules limited the ability for students to explore software development as a profession and limited the ways in which students could get formal education on how to become a software developer.
On the plus side, several things have happened that have made it easier for young students to explore software development. If only these things would have been around when I was a kid:
- The internet … boom!
- Open source development tools – languages, compilers, frameworks, editors, IDEs, test automation frameworks
- On-Line tutorials
- On-Line college level programming courses
- On-Line help forums
- GIT – online source control and sharing of code
- Bootcamps teaching programming (primarily Web and Java)
- Scratch online programming educational tool for students in K-8 – developed by MIT Media Lab
- Lego Mindstorm competitions
The problem, we don’t talk about the learning opportunities early enough in school to attract students to the idea that they can become software developers. In many school districts, students have no insight into any of this until they graduate high school. That is too late. We need to be exposing kids to the idea of software development very early in their educational career – think grade school. Then we need to reinforce those opportunities with additional educational opportunities thru middle school and high school. The goal should be to allow those interested in pursuing this to potentially get out of high school and find entry level software development roles. Not every student would be able to do this, some will need additional education, or may want to pursue additional education to perform within specialized areas – artificial intelligence, data analytics, etc.
I would also argue that we need to rearrange graduation requirements at the high school level – computer science classes should be counted as part of the core curriculum, either as language classes replacing Spanish, French, German, etc., or as math and science classes. Additionally, every high school should be offering computer science classes – either locally or thru remote class arrangements with the nearest community college. I know of high schools teaching Java, C++, C#, and networking (providing CISCO certifications at the end of the class). These kids are old enough to understand these concepts and get a jump start on their post high school education or prepare themselves for direct entry into the workforce. There is no reason not to provide these learning opportunities and have students work ready for entry level programming positions by the end of high school.
Can it be done? Yes, even with the constraints that were in place when I was a kid – no internet, no open source software, no PC’s, I was able to learn enough that I was doing contract programming by the time I was in high school. I personally have hired kids that were graduating from high school that showed they had the chops and the passion to be a developer. Does it take a little extra hand holding? Yep – it sure does, but it’s worth it.
I’m not trying to devalue a college education. There are reasons to pursue a 4 year degree, but we also must be cognizant of the challenges we face today as employers:
- There is currently a shortage of skilled software developers that will only get worse as the baby boomers retire – some sites are reporting a shortage of at least 220,000 software developers in the US.
- Currently colleges are graduating approximately 30,000 computer science majors each year.
- Unemployment for folks in the software development role is currently running around 1.9% (mid 2018 stat)
We need to think outside the box on what we are doing and how we are making this career path accessible to young students. The big boys on the block are starting to change their hiring methods – no longer requiring degrees.
- IBM, Amazon and Microsoft Use Apprenticeships
- Idaho Offering Code to Career Apprenticeships
- Silicon Valley Looks To Iowa
No comments:
Post a Comment