Philly Codefest

by Caden Martz, guest writer

My name is Caden, and I’m a sophomore at Penn State majoring in Information Sciences & Technology (IST). The track I’m currently on has some overlap with computer science, but it is much less theory-focused. I recently attended my first hackathon, and Elly asked me to write a bit about the experience. 

The spring semester was drawing to a close, and I, having no immediate plans for what to do next, started looking for something that might help me improve my technical skills. I found an announcement for Philly Codefest, an overnight hackathon hosted by Drexel University in Philadelphia, and made a last-minute decision to pack up my laptop and go. The objective was to assemble a team of up to five people and create some kind of application (like a website, smartphone app, or computer game) using your combined skills, all while bouncing ideas around and hopefully learning from each other. The theme of the event was economic inequality in Philly, and each team’s project had to try to address this in some way. I texted some friends at Drexel beforehand, but none of them knew anyone who was attending the event, so I just had to walk in and get myself on a team somehow. After wandering around Drexel’s athletic center for a good 10 minutes, I bumped into some students also looking for the hackathon, and we eventually found our way to the (strangely unmarked) check-in area. The event was held in a basketball gym with tables and chairs set up every few feet:

Philly Codefest
Philly Codefest

It began around 10AM on Saturday and project work ended at 11AM Sunday, followed by a judging and wrap-up period that would last until 4PM. I should mention that admission was completely free, and included five meals, various workshops throughout the day, wifi and charging strips for our devices, a break room with ping pong tables and several arcade cabinets, and a continuous stream of snacks and drinks. This lavish treatment was provided by the sponsors, including Google, Comcast, Vanguard, and others. 

I walked in and made my way to the designated team-building room. I stood there awkwardly for a few seconds until a kind organizer pulled me over and gave me the rundown on teams that still needed members. After I inserted myself into the conversation, one team agreed to work with me (for some reason). My teammates included a Drexel computer science student, a guy in his late 20s who had recently finished an MBA, and another Drexel student majoring in something else. All of us were self-described beginners, and we didn’t have a very clear plan for what to make. Some of us (including me) knew the Python programming language, others knew Swift, JavaScript or just bits and pieces of things. It was clear that our individual strengths would not work particularly well together. For example, Swift is only used to develop iPhone apps, and Python can do basically anything except that. We plopped down at a table, opened our laptops, and started trying to fill in some of these knowledge gaps. On the other hand, my team had some good ideas about what our project should be. Our initial idea was to build some kind of website and database for grocery stores and food banks. The grocery stores would log into our system and select food items from their inventory that were about to be pitched. The food bank could then see this information and send someone to the store with the most food to pick up. The system would presumably facilitate other communication between the store and the charity as well. I had the most fun during this early period. We spent a lot of time just messing around and throwing different ideas at the wall. We also stopped by the sponsor’s tables to pick up free laundry bags, sunglasses, laptop stickers and various other knickknacks. 

As the hours went by, we became more focused on refining our idea and started writing down some plans. Unfortunately, one team member abruptly decided to leave because he felt he wasn’t being much help. I was a bit taken aback, and I wanted to reassure him that we were all newbies and probably all feeling the same way. From then on, our idea went downhill pretty fast. At one point in the afternoon, a different team member suggested we merge with another team some of his friends were on, and adopt a different idea. We did so, and began trying to help them with a life-simulation style game that would teach players how to manage money. Financial literacy was one issue that fell under the theme of the event, and a cash prize would be awarded to the team that best managed to address this. The two guys already on the team we had just joined had been writing the game in Python, so I could follow what they were doing. They were using a library called PyGamethough, which I had never used. I spent the next few hours digging through the documentation for PyGame whilst also trying to keep up with all the code my new teammates were writing. 

Throughout the day, I left my table to attend some of the workshops being given by the sponsors. Google held one on how to use their cloudcomputing platform to host our projects, Comcast held an information session, and Vanguard held a brief personal branding workshop. I found these sessions to be only moderately useful, but they were a good reprieve from the main activity. Students who had not yet learned about the job searching process probably benefitted more. I did enjoy all the free (somewhat silly) stuff Google was giving out. Their representatives were all very recent hires, and looked like they could’ve been my age. My slightly more experienced teammates kept plugging away at the game into the evening. They were able to get a character onto the screen and make him move around against different backdrops. Unfortunately, they hit a wall with the code and we couldn’t quite manage to improve it beyond that. By this time most of the sponsors had left, along with the staff form Drexel’s college of computing, to return the next day and judge our projects. Only a couple of night audits and security guards remained. I had some fun, and I made a little bit of progress, but in the end my team and I decided to throw in the towel. Around midnight the last of us left the event, and I walked to my friend’s apartment to crash. I checked out the winning projectsthe next day, and marveled that they had been churned out in such a short amount of time.

Overall, I’m glad I decided to participate. Although we didn’t make it to the judging period, it definitely set me up to know what to expect in future hackathons. What follows are a few suggestions I have for someone who is thinking about going to one of these things: It’s a very good idea to come up with a team and idea beforehand. Ask around and see who knows the same technologies you do. Only a small minority of the teams formed the day of the event, and their skills may not have matched up super well. It also helps to have someone more experienced on your side from the start. Philly Codefest was advertised as requiring no programming experience: “just bring your creativity!” This is very misleading, in my opinion. I wouldn’t have understood anything that was going on if I didn’t already have one basic programming class under my belt. 

“So is this like a guy thing you’re going to?”

Caden’s sister

On a final note, I would like to speak to the issues Elly is addressing on her blog. I can only speak for myself, but I definitely think there is a perception that this kind of activity is for boys. Before I left to drive into the city, my sister asked me, “So is this like a guy thing you’re going to? Or will there be girls there?” I responded that it was coed, but there would probably be a disproportionate number of guys. The male/female ratio ended up being about 5/1. Silicon Valley is notorious for being male-dominated, and I don’t have to search very far to find horror stories about women who quit their tech jobs because they don’t feel heard or listened to. In addition, it feels like every week when I check Ars Technica, there’s yet another story about Facebook doing something stupid, unethical, or downright illegal. These corporations have access to the biggest treasure troves of valuable personal data the world has ever seen, and it is rapidly becoming apparent that some can’t handle this responsibility. I wonder if Silicon Valley’s problems are connected to its culture. I think getting more people with a wider variety of opinions, experiences and perspectives into the field can only help. Oh, and it might also be a good idea to require a shower break halfway through a hackathon. 😊