If you were to ask many people what their view of a “coder” is, they would probably refer in some way to a hoody-wearing geek type in Silicon Valley working crazy hours to create the next big thing. A recent article in Wired points out that less than 10% of the nation’s coders are employed in Silicon Valley. More software development comes from regular jobs with normal(ish) hours and good pay from all over the country. What if we were to view these jobs as more of a “skilled worker” or blue collar job? Many blue collar jobs require a lot of training and are highly specialized similar to learning to code. Examples include airplane mechanics, electricians, oil and gas industry workers, plumbers, and various skilled construction jobs. Perhaps this view of coding would be less intimidating and encourage more people to try it.
Universities are continuing to see the results of the national attention on computer science and coding. Cornell University, for example, has tripled the number of C.S majors in the last five years. They also see an in increase demand by non-C.S. majors wishing to take C.S. courses, according to an article in the Cornell Daily Sun. The course that I co-teach at Emory, Think.Code.Make, is for mostly non-C.S. majors in the business school, and the spring 2017 class is full with a waiting list. How are universities dealing with the demand and what does the future hold? How can students prepare for college in this environment?
Many of the big tech stories this fall have been about artificial intelligence and the rise of automation. Tesla and Google are working hard on their self-driving car technology. Trucking companies in turn are looking ahead to needing fewer drivers as their trucks become autonomous. Amazon is testing stores that do not require cashiers after already disrupting much of the retail sector. Other industries like agriculture and medicine are increasingly automated. A fall issue of the Cal Poly magazine dedicated a series of articles to the subject "Machines Rising". Especially interesting was the article titled "How Safe is Your Job".
Wired magazine has an interesting article on the future of coding and the increasing use of machine learning and neural networks. Many of the biggest technology companies are using machine learning to solve very complex problems. Facebook is predicting stories you might want to see in your feed, Microsoft is translating foreign languages with Skype, and Google is using neural networks to improve its search algorithm and to recognize faces in its Photos application. An important point is that programmers don’t actually write individual lines of code with machine learning. They “train” the neural networks and coach it with examples until it does what is desired. The article trumpets “The End of Code” (for click bait I guess and with capital letters no less). However the author never writes such a thing in the actual article. What is the more likely outcome of combining these fields?
One doesn’t often think of Liberal Arts colleges when looking for computer science programs, but a recent trend by these colleges could make the field more interesting and motivating for students by combining disciplines. Students who can combine their passion in other fields with a knowledge of coding and computing will have the opportunity for a more personally rewarding career path.
President Obama gave his final State of the Union Address in January and it was exciting to hear one of his education proposals. While listing some of his recent education achievements he said, “"In the coming years, we should build on that progress, by ... offering every student the hands-on computer science and math classes that make them job-ready on Day 1." After getting over the initial surprise of hearing such a goal and knowing the both the challenges and rewards of doing this almost daily for several years, a few questions immediately jump to mind.
We received a surprise call from a producer of the Clark Howard show recently. She was interested in kids coding and had some questions. What is code? Why is it important for kids to learn to code? Where can parents look to get started? After discussing these points, she said “I would like to interview you for the Clark Howard Show." We are big fans of Clark’s radio show as Atlanta residents and were excited to do it.
The Hour of Code 2015 is here and we are once again happy to participate. Start Code is hosting a free coding class for anyone in grades 6-12. If you haven't taken a one of our classes on Python or Java before, this is a great chance to come out, have fun, and learn something new. The Hour of Code is a worldwide event that encourages kids of all ages to try programming for the first time. The goal is to introduce them to computer science while practicing problem-solving skills, logic, and creativity.
When it comes to technology companies, California and Silicon Valley are usually the first places to come to mind. While the big names in tech may be located there, Atlanta is also seeing positive growth and investment according to recent stories by NPR and Entrepreneur magazine. Many people think that Atlanta has a healthy environment for startups and funding, and the outlook is optimistic for the longevity of these companies. The good news is that if the companies are to stick around then they will need an increasing amount of tech workers with a variety of skills.
Cities and school districts around the country are seizing on the popularity of coding and computer science. Large metro school districts including New York City, San Francisco, and Chicago have announced multi-million dollar efforts to launch new initiatives from elementary through high school. A wide range of large to small entities are doing similar things, from entire countries like Australia and the U.K. down to individual public schools. One local Atlanta parent recently noted that their charter school was establishing "coding as a second language". It seems everyone has heard the rallying cry to get kids coding.
Once we get past all the announcements, news coverage, and well intentions, what happens next?
As we approach the back to school season and the end of summer, it’s a good time look out and examine what software development tools we might add to our curriculum. A quote by a software developer that I admire comes to mind: “The computing field is essentially infinite in all directions.” With several years of labs at Start Code, summer camps, and high school classes, we have many paths the students can follow. However with so many options it can be overwhelming to newcomers if you don’t filter things down and choose a direction. The IEEE has just released their list of the top programming languages for 2015. How do the programming languages and tools used at Start Code hold up? The more things change the more some things surprisingly stay the same.
I recently spoke at both my son and daughters schools for Career Day. It’s always rewarding to talk with the students, answer their questions, and maybe help them see a future they might find interesting. This year I decided to talk about how I first got started at their age and then later pursued a computer science degree in college. The goal would be to try to clarify “what is computer science?” and hopefully make it sound interesting and fun in the process.
As reported in the Washington Post, across the U.S. on almost a weekly basis there are new initiatives from schools, universities, businesses and foundations to expand STEM (science, technology, engineering and math) courses and experiences. Some of these initiatives openly deemphasize the humanities, setting to the side Art and English classes. Focusing on STEM is understandable considering the runaway success of many tech companies and Silicon Valley heroes. However is focusing on solely the hard sciences best in the long run? Another approach called STEAM (science, tech, engineering, arts, and math) could add the creativity and curiosity that may be lacking in STEM.
We live in a world where our technology tools are increasingly easy to use. Users with little to no tech support skill whatsoever (hi, Mom!) can buy a phone or tablet and use it as their main computing device without having to know anything about how it works. Now along comes a little cheap computer that doesn't come with a keyboard, mouse, or screen. It doesn't even come loaded with an operating system like Windows or OS X and it looks like a bare electronics board. Purchasers have to figure how to even get it running first. Who would make and sell something like this? Are these people crazy? They just might be, but it's exactly what many of our kids need today.
Written by High School Senior, Sophia, about her experiences with coding:
Computer programming always seemed remote, something beyond my capability. When I was around nine years old, my father bought the first desktop computer of the family. It was a very old one. I forgot which model it was but it was box shaped and the screen had very low resolution. I still remember that whenever I turned the computer on, it would first display a blue screen with long lines of code on it. That was where I got my first impression of computer programming. At that time, I was thinking, ‘whoever wrote all of these lines must be a genius.'
Hello! I’m Jack Z., an independent game developer in Atlanta. I visited Start Code as a guest speaker recently and showed the students the basics of Game Maker:Studio. I’ll also be running the upcoming Game Maker Lab. The class will cover the fundamentals of game programming and give students the chance to work on both game design and coding. During my visit I showed the students what I was working on at the time--a game I'd spent only a few days on called Key Geist. I mentioned that it was part of a “game jam” which sparked some interest among the crowd.
So what is a game jam? It's an event best compared to its musical counterpart, a “jam session”.
I recently saw a Ted talk titled “Play, Passion, Purpose” by Tony Wagner. He talks about the skills needed by students today, and the idea of innovation and how we can nurture it. It’s an eye opening talk and many parts hit close to home when it comes to coding, technology, and what we do at Start Code. How can we create an environment that builds these skills and, more importantly, encourages innovation?
At Start Code, we have been using both Python and Java programming languages since first opening our doors almost three years ago. Students start with Python and then later work with Java. We’ve learned this through experience and now colleges are also using this sequence. According to a recent survey by the Association for Computing Machinery (ACM), Python has surpassed Java as the top language used to introduce students to programming and computer science in the U.S.
It's been hard to miss the widely publicized calls to address the shortage of coders and programmers that seems to be looming over the tech industry. Everyone from celebrities, business leaders, politicians, and even professional athletes are encouraging students to take up coding. Even the "father" of the world wide web, Tim Berners Lee, was calling for computer science education at a younger age last year. But according to a recent NPR Marketplace report, there is a shortage of teachers with coding skills and addressing this problem is creating a new set of challenges.
We kicked off a great partnership with LexisNexis this summer. LexisNexis was generous enough to sponsor an entire summer coding camp at Cumberland Academy. Cumberland Academy of Georgia specializes in the needs of children with high functioning Autism, Asperger's, ADD, ADHD and other learning differences. The mission of the academy is to provide a safe, supportive, educational environment and to challenge and inspire them to reach their full potential. They were excited to offer a coding camp to some of their high school students and the week was fantastic.