Summerhacks

César I. Cruz
6 min readJun 28, 2016

--

TL:DR: Summerhacks is an initiative from hackPR to get high school students from the ages of 14–17 started in programming and web development, as well as exposing them to the local (Puerto Rico) tech scene. Programs such as these are essential to our continued development if indeed we are betting on the tech scene as a viable option to pull us up from this financial crisis.

I went to the University of Puerto Rico, Mayagüez campus to study Computer Engineering. At the time, I had no idea what I was getting myself into, I was just trying to learn how to code. Midway through my degree, I was getting bored and frustrated. I understood a whole bunch of theory about computer science fundamentals, but I had no understanding of how to put these concepts to work as real world applications (some of my colleagues found their answer in research and organizations, I did not). The solution to my problem came in the form of a hackathon, and it’s name was hackPR.

That’s me on the left participating in the first hackPR at El Telégrafo, San Juan PR

Hackathons are many things, depending on who you ask. For me, they provided a way to learn at a quick pace with satisfying results, meet new people with shared interests, and have some free food (This is key for college students on a budget). While attending my first hackathon, I also happened to be president of the ACM ECE student chapter at UPRM and thought this experience would be amazing to have over at our university (hackPR was not born at UPRM), you can read more about that here. Over the years, hackPR kept growing as a hackathon, attracting more and more attention, becoming the biggest hackathon in PR. However, at it’s core hackPR was always about more than just a hackathon, hackPR is about creating a community that was absent in Puerto Rico (hackers), hackPR is about enabling mad scientists to put their skills to the test, hackPR is about accelerating our learning process through continuos practice, failure, and perseverance.

hackPR September 2014, courtesy of Walter Crespo

Enter Summerhacks

Although I am no longer officially involved in hackPR’s day-to-day activities, I was approached to help out with the Summerhacks initiative. The idea here was to provide high school students (with little or no programming experience) a two week crash course into the world of programming, hackers, and startups. If we are betting on technology startups to pull us up from these troubled times, we need to start aiming at a younger audience (before college). Summerhacks is designed to give high school students the tools needed to get started.

We teach these kids the fundamentals of programming as well as expose them to what is currently going on in the PR tech scene (and there is a LOT going on). My personal involvement consisted of researching, creating, and teaching the course material that would be used for the camp and provide mentorship to the kids. Camp was set to start on June the 13th and I had been researching and preparing the course since late April, I was confident I had covered my bases and was ready for what was about to happen… I was wrong.

From the second day onwards we realized the plan had holes. There were two major situations taking place. First, some concepts such as loops, which are second nature to a programmer, were harder to understand that we anticipated. I don’t, for a second, blame the kids, this was ENTIRELY my fault, a miscalculation, these kids are brilliant, among the brightest I have met. For the rest of the camp I kept a small journal, taking notes on any observation, writing down their questions, and underlining the problematic subjects which needed more emphasis and practice. The use of props such as plastic cups were effective to explain concepts such as lists, sorting and searching algorithms. The second problem was disparity between their respective knowledge base. Sure, for some kids, this was their first experience programming, however, some already had experience, taken a few courses, online or other. These kids were getting bored, and I don’t blame them. To tackle this problem, a separate list of programming exercises was created, a bit more advance, to keep them occupied. Every day was an adaptive experiment, like a control system, continuously gathering feedback and adjusting the system to get better more accurate results.

After the first few days, the dynamic started to feel more productive, everybody was taking part in the activities. Another important lesson has to do with the fact that most of these kids are not sure if they want to continue to work with code (not everyone wants to be a programmer), so a large part of the activities had to be fun, balanced. Initially, we were aiming at an intensive programming experience, this was getting us nowhere. To solve this, we tried to identify interesting topics within areas such as video games and pop culture to blend within the lectures. It helped that E3 and the NBA finals were happening during the first week of camp.

It was not all code, every day we had a different speaker talking about a topic of his/her choosing. Our guests included current startups founders from companies such as Blimp and Tix.by, Giancarlo González the previous CIO of Puerto Rico, and a few companies currently participating in Parallel18.

Learning about Git and Github with Xiomara from Parallell18

Next Steps

This was my first experience working with people outside of the college scene. At the start of the camp I had certain personal expectations, my mind was set on knowledge passing from me to them, however I can personally say that I learned a lot from these kids, maybe even more than what they learned from me. These kids have and abundance of curiosity, massive levels of ingenuity, and no shortage of questions. By the end of it all, we covered most of what we had planed:

  1. How to use the command line interface to navigate through files and execute scripts
  2. Basic programming in JavaScript (With some help from NodeJS)
  3. Basic HTML and CSS Syntax (Just enough to understand what basic tags do and how to use them)
  4. How to incorporate frameworks and libraries into a web page using Bootstrap 3 and jQuery as examples
  5. The importance of having a resume and an online portfolio such as GitHub
  6. Learn about different companies and initiatives around the island, such as Parallel18, USDS, and current field opportunities in college
Baller selfie with the gang

The last two days of the camp, we had the students simulate the experience of a hackathon. They would work on ideas they were interested in and we would assist them. Most students created personal websites, one student created a small text based game, another a resume builder website. One team built a scrapper for Paste Bin, with future plans on extending this idea into a real product. These past two weeks were a blast for me, I find myself being extremely proud of these students, their effort, patience, and above all, their curiosity. A lot of hard work and many people where part of this interesting journey. Many thanks to all of those involved in the project, the hackPR staff, and the people at the Puerto Rico Science, Technology and Research Trust for lending us their awesome facilities.

As a parting note, we need a fundamental shift in our mindset, our current cultural and economical crisis requires us to find creative ways to do more with less. If it is indeed true that we are in desperate need of programmers, then we need to expand our reach. Programs such as these need to be expanded far beyond just the metropolitan area and into our more rural zones. Programmers are mostly self-educated, but it never hurts to give people a helping hand.

--

--