A week or so ago I wrote about the event we had to kick off Hunter College's partnering with the NY tech community to build a Hunter to tech pipeline. Each table had two Hunter students and a group of tech professionals. Each table discussed the Hunter CS experience and how the tech community can help support the students. Towards the end of the event a colleague commented that it was a great idea to have the students essentially run the tables and how effective it was. I didn't see any other way to do it.
You have to trust the students. Put them in situations where they can grow.
In addition to the event being a success overall, I think that for the students it helped to break down barriers. These kids are soon to be joining the tech community. They'll be interviewing for internships and then jobs and the whole process can be rather intimidating. By the end of the event the other week, there weren't tables of students and professionals but rather tables of people all having discussions on equal footing. It seems like a small thing. A minor choice on how to run an event but it can have a subtle but substantial impact in ways that are hard to see unless you look.
I was also reminded of this when reading Alfred Thompson's post on school tech management teams and CS teachers. Alfred wrote about the possible tension between the needs of CS teachers and the needs of the rest of the school and the obligations of the people that actually set up and maintain the technology in a school.
Years ago, at Stuy, I skirted the issue by taking on the obligation of maintaining my own labs. This let me run Linux and basically do whatever I felt we needed. It also meant my labs wouldn't be set up for things like standardized testing. This came at a price. I had to maintain it all myself. This is not to say that the tech people haven't helped over the years. Some of them have been terrific but other than swapping out bad machines it all fell on me.
Of course this wouldn't have been possible if it really all fell to me. It only worked because I was able to enlist the aid of students who wanted to learn about building and running a Linux network. Sure I showed them some things but largely we figured it out together. Basically I trusted the kids with access and control and gave them a safe place to learn and explore.
It worked amazingly well.
Of course there were plenty of headaches. There was the time when we only had one AI/X server for the school and Jon somehow erased all the shared libraries or the time when I think Paul or Ilya took away read and execute access from all the system executables. I lost plenty of sleep and pulled out much hair recovering from these messes and others but I couldn't get too upset. They were learning, no one got hurt, and truthfully they never committed any blunders worse than my own.
Giving up control to the kids can be nerve wracking at times but it's worth it. It's why I always found coaching more stressful than competing back when I fenced. You can do everything to prepare your athletes but when they're out on the strip, there's nothing you can do to help. It's all on them. On the other hand, I've always been more gratified with my athletes or students successes than with my own. There's something special about enabling others.
This is not to say that we just turn our students loose. We have to set our students up to succeed. Set up the environment and the circumstance and give the students the tools to work with. At the event two weeks ago I knew that everyone in the room was a friend or when I have students plan a hackathon and have them cold call a company, maybe the company expects the call. There are all sorts of things we can do behind the scenes to set out students up for success.
We set the stage and if we do it right, the kids won't fail to impress.