Mentoring – The Future of Technology Education – The History of Computer Science Education



Mentoring – The Future of Technology Education – The History of Computer Science Education

1 0


TechMentoring

Mentoring - the Future of Tech Education

On Github tehfedaykin / TechMentoring

Mentoring

The Future of Technology Education

Jennifer Wadella | @likeOMGitsFEDAY

So, why is mentoring the future of technology education?

http://blog.newrelic.com/2014/06/03/10-secrets-learned-software-engineering-degree-probably-didnt/

We'll come back to this article later. It crossed my feed recently, and related too well to this talk not to include.

Jennifer Wadella

@likeOMGitsFEDAY

  • Front-end developer
  • Girls in STEM panelist/Technology Education Advocate
  • Founder of Kansas City Women in Technology
  • Organizer behind CoderDojoKC
A little background on me - my name is Jennifer Wadella, and you can tweet at me @likeOMGitsFEDAY. I work as a Front-end developer at a local startup called MindMixer. I went to school for graphic design and business management, but I fell into web development by accident, and having been loving life every day since. In 2013 I decided I wanted to meet more lady-devs, so I founded Kansas City Women in Technology. It's interesting being the only woman in the room, hence my founding of a more specific developer community. CoderDojoKC is a free program that teaches kids how to code, and is another developer community. Tech Ed Advocate - Shawnee Mission CTE Advisory board, Girls in STEM committee member, planning committee for Girls in STEM conference

The History of Computer Science Education

An Overview

Let's explore where computers came from, because the progression of computer science is key in this discussion.

1834 First computer is "invented"

The Analytical Engine is theorized by Charles Babbage.

In 1834, Charles Babbage began his work on the Analytical Engine. While he was never able to secure government funding to build it, it layed the groundwork for fundemental concepts used in computer science today. The Analytical Engine was designed to calculate any number based on inserted punch cards using two fundamental ideas - the "mill" and the "store". Today we know those as "CPU" and "memory".

1843 Computer Science is invented

Ada Lovelace developes a punched card program to calculate the Bernoulli numbers. http://www.fourmilab.ch/babbage/sketch.html

Though computers didn't technically exist at the time, Ada Lovelace is credited with being a pioneer of computer science. She wrote the first algorithm in history, which theoretically would calculate numbers on the Analytical Engine. Ada described how to use punch cards to enter number. She was a revoluntionary thought leader with the foresight of what computers COULD do, and understanding of the possibilities that entailed. Her predictions indcludes the use of computers to create music and graphics, and have scientific uses.

1946 First computer science class

Columbia offers one of the first academic-credit courses in computing.

We're going to jump through history now - into the 1900s. IBM has created a computing machine, but lacked people with the knowledge to use it. In 1928 two gentlemen meet, one - Thomas Waston Sr., a chief executive of IBM, the other - Benjamin Wood, a professor at Colombia. Wood was the university's head of educational research, and had taken an interest in automating test scoring. In hopes of achieving this, he reached out to various machine companies, but only heard back from IBM. Wood, upon meeting with Watson, explained to him the possibilies of using machines for more than just mathmatics and calculations, and an intrigued Watson donated the requested machines. This relationship was the foundation for one of the first computer science education endevours.

1947 First computer science degree programs are established.

  • Professor Howard Aiken creates degree program at Harvard
  • Maurice Wilkes of Cambrige University creates computer degree program in 1953
  • The Cambridge Diploma in Computer Science, began at the University of Cambridge Computer Laboratory.
  • Maurice Wilkes, director of the Computer Laboratory at Cambridge University in Britain, also established a computer degree program in 1953.
  • Purdue forms Computer Science program in 1962.

1960 Manhattan Systems Research Institute created.

IBM creates it's own program to train employees

Because of the newness of the computing industry, very few colleges were creating computer science programs. IBM creates the Manhattan Systems Research Institute, a 3 month program to train it's own employees. This program taught employees computer engineering and software programming.

1970s Computer Science takes off.

Programming languages are invented, more computer companies are founded, computer science enrollment rates rise.

*In the mid-1980's enrollment of women in computer science was the highest it's ever been.

2000/2001 Dot com bust

Computer science enrollment plummets.

In the 90s, internet startups began. They grew rapidly and in large frequency, the investors invested heavily, in turn leading to a large economic boom. Unfortunately, much of this was due to excitement of possibilites, rather than actual business models describing how profit would be made. Large sums of money were invested in companies without a business plan, simply due to the fear of 'missing out'. Eventually investors realized their pursuits were loss-making companies and backed out and left companies in a state of burnt-through venture capital funds. Remaining jobs became widely outsourced, and computer science lost popularity and sustainability as a career path in the US. And yes, we've reached the reaction gif portion of the presentation.

2007 Economy begins to recover.

Computer Science enrollment slowly begins climbing again.

In 2013 computer science undergraduate degrees rose by 2.92%

... and Doctorate degrees rose by 5.2%

http://cra.org/govaffairs/blog/2013/03/taulbeereport/

Only .4% of those graduates reported unemployment. They must not have updated their Linked In.

2014 Halt & Catch Fire airs on AMC.

If you're interested in the 1980's time chunk I skipped over, watch this show.

So graduation rates in computer science are on the rise, which is good. But they aren't rising quickly enough to match the growth of jobs, which is rising exponentially.

Where We Are Today

http://www.bls.gov/

According to the 2010 - 2012 report from the Bureau of Labor Statistics, across all industries we are adding 136,620 jobs per year in computing, while we only average 40,000 CS grads every year.

I'm not going to spend much time going over currently industry growth and the lack of bodies to fill jobs, I feel that's beating a dead horse at this point. We're going to talk about how mentoring can tackle that issue.

Current Curriculum

Source: Code.org database of local computer programming schools, sourced by a combination of data from the College Board, the Computer Science Teachers Association, and individual teacher submissions.

9 out of 10 schools don't teach computer science. Many of them are still attempting to integrate teach keystrokes and the Microsoft Suite into the curriculum. Those that do have attempted to use free in-browser programs like Scratch and Alice to demonstrate programming. A few even teach java. One thing I haven't seen in any stats are how many of those schools teaching computer science have a computer science teacher.

When I was in high school, and I'm not THAT old, mind you, I taught my computer class. Our wrestling coach couldn't be bothered to read the text book to understand how the program worked, and besides, computers were hard. I would read the lesson plan during one of my free hours, play on the computer to be sure I could execute, and then instruct the class. Finally I would circulate the room, having my patience tried by those who didn't find the program as intutive as I did. For frame of reference, this 'program' was photoshop.

Code.org has created a fantastic movement pushing to get computer science taught in schools, and both schools and goverments seemed to understand the importance. However things get muddled in the execution ...

It Takes a Village ...

"Because there were so few university courses in computing in the early days, IBM set up the Manhattan Systems Research Institute in 1960 to train its own employees. It was the first program of its kind in the computer industry. The three-month program included courses in computer engineering, software programming and designing systems to solve particular customer problems." http://www-03.ibm.com/ibm/history/ibm100/us/en/icons/compsci/

I mentioned the Manhattan Systems Research Institute in that little history lesson, but I want to spend more time discussing that concept.

IBM was fundamental in the creation of computer science programming, because they had the need for these employees. If we want to create a sustainable workforce, this is a model to adapt.

It's funny, this title is called "the future of technology education", but a more appropriate title would probably be 'returning to technology education'.

It wasn't always that technical education was in the hands of a government-regulated education system. Sure, we've been learning reading, writing, and 'rithmatic since the dawn of a 1 room schoolhouse(I'm just referring to US history, by the way), but trades were learned from parents and employers. Children and teenagers learned from adults in their community how to do more than add 2 + 2, but how to run a shop, how to stable horses, or sow seeds for crops.

In his essay, Why Nerd Are Unpopular, Paul Graham actually visits this concept of when teenagers being useful memebers of society, vs. today, where high school is toned down demonstration of Lord of the Flies. But let's look at teenagers today, or maybe even the teenager you were. No responsibility, no bills to pay, and plenty of time. And with those who engineerishly-inclined, much of that time may be spent on a computer.

Why are we abandoning this workforce that just needs a little guidance?

Enter the Mentor.

Enter the mentor. A guiding light, a beacon of hope, a ... I'm just kidding. But let's talk about the article from the begining of the presentation. Things that you didn't learn in college.

10 Secrets You Should Have Learned with Your Software Engineering Degree – But Probably Didn’t

  • Version control systems
  • How to write code (well)
  • Using libraries
  • Terminology
  • Tool usage: IDEs, editors, CLI tools
  • Debugging
  • Teamwork
  • Working on existing code

How did you learn about this list? Was it in school, or from a coworker, or boss, or mentor?

So what now?

We have a choice. We can sit on our asses, but we already do that 10+ hours a day, because we're computer nerds. (show photo) By the way, I can't take credit for this picture by the way, an old coworker of mine found it, and it still cracks me up every time.

OR, we can get activate in helping mentor and grow the next generation who will carry technology forward.

Current Programming

  • Code.org
  • Computer Science Education Week - December 8th-14th
  • Hour of Code
  • CoderDojo
  • Girls who Code

Let's take a look at current programming, because there's a lot in place, and they're doing great things.

Code.org is as much a movement as it is a source for curriculum. They provide a lot of self-guided coding tutorials, and constantly update the lessons to catch kids interest like teaching them to make angry bird games. Code.org is also pushing to get computer science taught in more schools across the country, and schools seem to be willing to implement, but unfortunately at this time there aren't qualified candidates to fill those teaching roles.

Code.org supports Computer Science Education Week, which occurs December 8th-14th this year. Leading up to December is a great time to talk to schools about participating in hour of code, and

How to Implement Programming

Location.

Mentors.

Attendees.

I'm going to use CoderDojo as an example, because it's an implementable, scalable model with a great brand, and you only need a few things. A location. Mentors. Attendees.

How to Find a location (for free)

  • Your work.
  • A school.
  • A coworking space.
  • Industry advocates.
  • Your work. You have conference rooms, right?
  • A school. Libraries or
  • A coworking space. - Kansas City is a very entreprenuerial-centric city,
  • Industry advocates. - Google Fiber

This should be a given, but make sure you have internet access.

How to Get Mentors On Board

"It's like reliving your first 'hello, world' moment over and over again."

Let's face it, we love what we do. We love TALKING about what we do. More often than not, you can't get us to shut up.

But if you need a pitch, here's mine. It works every time.

Start with your coworkers. If you like them.

Hit up your user groups. Most of my original mentors came from KC Geek Night.

Spread the word on social media.

How to Get Companies On Board

Offer them employees.

This one's really easy. Offer them employees. If they don't see the value in helping build a pipeline of talent to their company, I don't know what to say about that.

How to Get Attendees

Know your networks

This was interesting for me, as I don't have kids, nor do most of my friends. I didn't have a school connection where my children attended.

  • Coworkers - it works well for girl scout cookies, it can work for you!
  • Local Education Orgs - I work with KC STEM Alliance
  • User groups - They'll want their kids to learn code.
  • Event-based networks. Eventbrite. Meetup.com. Whatever your local flavor is.

Jennifer's Tips & Tricks

curriculum

mentor onboarding

promotion

thick skin