My First Hackathon, Part Two

Hackathon Continued..

Continuing from where I left off, the hackathon just started and I’m now on a team with some computer science students from the University of Dallas. There are hundreds of people talking, laughing, and interacting with each other. The hackathon is only about a hour into it at this point, and the announcements are about to start.

A representative from the hackathon then came on stage, and listed off a whole slew of tech companies that were in the building. The biggest one being IBM, they brought free Rasberry Pi’s for everyone, and were giving tutorials on using IBM Watson to help solve problems.

Interestingly enough, I met the main guy from IBM while I was standing in line for mexican food and we chatted about how long he’s been at IBM, what the coolest projects he’s seen built using IBM Watson in a 24 hour period, and where he’s traveled doing hackathons. Apparently, IBM has sent him all around the world showcasing IBM’s tech, and helping host if needed. He told me about the coolest project he’s seen built in 24 hours, the project utilized IBM Watson, and also worked as a smart solution for the city.

The project this team built allowed people to take photos of any fire hydrant and then that image would be parsed through IBM Watson, which would identify issues with the fire hydrant, send a repair order, and once the repair order arrived, the route to the fire hydrant would be mapped using the fastest possible route. Once, I finished asking him questions and trying to network a bit, a voice came over the mic for the general announcements.

The announcements were mostly introductions about who was hosting, what they do, how they came to be, and what they can help young or experienced developers with. However, once they finished the really cool presentations started, where anyone who had an idea or anyone who was looking for a team could come on stage and speak.

There were many people who took the stage to explain themselves with the hope of making connections and/or trying to build a team from scratch to create something cool. The first person spoke about a money payment app, which would allow the user to utilize something like Android pay, but make the interface easier to keep track of all payments, then use that data in meaningful ways. The second person that came on stage was a local business owner who was looking for programmers to help build a product, the idea slips my mind. However, he was hiring and anyone who could help out would stand a chance at being hired (super cool).

One of the biggest things I learned, hackathons can land you a job. After, hearing so many business owners approach me and my team, as well as listening to them speak on stage, it was pretty clear that hackathons were amazing places to get your foot in the door with a local company. The whole idea behind a hackathon is to build something meaningful in a short period of time, and that is not easy to do. Which means simply presenting your finished product can put you far above the competition.

For instance, let’s say 120 developers show up for the hackathon on day one, but by the end of the hackathon only maybe ten teams have a project to actually show off. These are great odds to be the center of attention for some amount of time and with the crowd filled with hiring managers, start ups, and other unforeseen opportunities you can imagine why honing your hackathon abilities would be beneficial. Alright, the announcements, team organizing, and project pitches are over. Time to find a spot, a long night of hacking is about to begin.

We shuffle past the crowds of developers and find a spot in the very back. It’s perfect. There are outlets for charging, plenty of desk real estate, and the space is quiet. We moved out early from the presentations to find this spot, and it was definitely worth it. Our workspace is taking care of and the next logical step is to brainstorm until we settle on an idea.

The brainstorming session kicked off rather slow, but once we all started throwing out ideas we were making progress. However, one issue arose, the ideas we were talking about weren’t completely relevant to the hackathon parameters, so we decided to stick to thinking about smart solutions for the residents of downtown Dallas. Well, what are smart solutions? Smart solutions, would be any way that enhances a residents life or improves the city in some way, usually consisting of some type of IOT solution. For example, a light pole only has a single purpose, light, but there is a lot of unused space that could be rigged with a whole slew of cool features like wifi, electric car charging, etc.

Well we know the direction, smart solutions for downtown Dallas, now we need to get some inspiration. Well, one of my team members suggests walking around downtown to find that inspiration or at least get a closer look at what could be improved upon. Such a great idea. There we go, onto the elevator, out the front of the building, and into the cold wind chill to seek smart solutions and inspiration.

Alright, I thought this was only going to be two parts, but I would like to address in more detail what happens when we head downtown. What I learned, how much more prep I should have done, and how I’ll choose my team next time. Thanks for reading.

Personal Challenge #2, Day 7

Every second accounted for, 7 days later. What did I learn, achieve, and what will I continue to do/change..

The challenge revealed a way to achieve maximum efficiency. Through planning out every second of my day, I found that after a couple of days, I had done more than weeks of slowly inching forward. Planning is key, and having my entire day scheduled gave me something to fall back on when things get tough.

This is how I planned out my day, after I woke up I would immediately challenge myself to get out and run. Then, I would start working on Android Development until lunch, and I would go back to Android Development with 30 min breaks after each 2 hour session. The breaks were probably the most important part, and I had to rough tune along the way to account for over scheduling and under scheduling.

The reason behind having multiple breaks thrown into my day, was to first give my brain a breather and also make it easier to follow through (less stressful). Breaks also helped when I was around the 5th or 6th hour of Android Development for the day, and I was feeing hungry. I would look up at the clock every 10 minutes and having that break coming up, I felt like I didn’t need to cheat, and it made it easy to continue until the dinner bell rang.

When things got tough, and I wanted to stop, the schedule I spent so much time setting up gave me support to fall back on, and that helped me a lot during the challenge. However, the scheduling didn’t always go as planned. There were multiple times where I would be really energized to code, but I scheduled to long of a break. Out of sheer, wanting to stick to my plan, I didn’t come back until the exact minute, but I could see how that could be an area to improve on.

The biggest mistake I made, was changing my schedule too lightly. Of course, situations will arise where moving around time slots will be necessary, but not shortening or stretching activities. A proper reason to change something around mid day, would be when some unforeseen obstacle pops up. An example, I had to run up to my college financial aid department, to fill out some paperwork, and the time I gave that entire process was much less than the actual time it took. That’s not the biggest issue, all I had to do was move the time slots around to make up for that overlap. Here is a rough look at what my days would consist of.

Typical Plan (General Outline w/o specific time slots):

  • Wake up -> Run -> Shower
  • Grab a snack -> Start 2 hr Android Development session
  • 30 min break -> 30 min Code Review
  • 15 min break -> Start 2 hr Android Development session
  • 30 min break -> 30 min Code Review

And so on…

Reflecting back on the past 7 days, I can tell you that it was not all smooth sailing. The challenge did require some pain, but the pain was worth it. Everyday, I stuck to my 6-8 hr planned Android Development I felt empowered. When I looked back at the week and I had run 8.5 miles from start to finish, I felt accomplished. Having a detailed plan of attack, with every second accounted for, afforded me the opportunity to make tweaks and follow my progress a lot better. I also, got my hands dirty in a whole slew of stuff like Navigation Drawers, interfacing, apis, SQL/PHP, and using built in SQLite to create a database inside the app rather than using XAMPP with SQL/PHP to host a server that would house my database then using GET requests to query the database. Transitions are fun.

I’m in the middle of moving back home to Portland, Oregon so I don’t think I’ll be able to continue this challenge until I get reestablished up there. However, I do want to continue pushing myself in this manner. It’s only been a week, but I could tell after the first 2 days that doing this everyday multiplied by a couple of months would be lightyears ahead of my current knowledge.

John Sonmez (Simple Programmer), said “Find what will get you to your goals 100% and do that. People have told me that if I can run 20 miles, I can run a marathon (26 miles). However, if I can run 30 miles then 26 miles will be easy, and that’s how I 100% get to my goal of running a marathon.” This spoke a lot to me, and is partly why I decided to do this challenge. I was seeking a way to 100% reach my goal and take hope out of the equation. My goal is to become a working software developer, and this is how I get there.

Personal Challenge #2, Day 1

New Challenge, Every Second Accounted For..

Well, I decided to challenge myself again. Except, this time I’m preplanning my entire day, every second of it. In my previous challenge, filed under Personal Challenge, I did more talking than action, I didn’t construct a plan, I kind of just hoped that I would figure it out and stick to whatever I figured out (no wonder it didn’t work out, lol). The previous challenge, consisted of not watching TV, not playing video games, and not getting on social media. And thus, without a solid plan in place, of how I would spend my day, I fell into old habits almost immediately.

Now it’s different, I’ve constructed my entire day, from waking up in the morning, to going to sleep at night. I’m writing this post, after my first day of the challenge. Here is some of what I’ve gotten done.

First Day of Challenge:

  • Ran 30 minutes, right after I woke up.
  • Studied 6 hours, for my Math final (I did this in 2 hour blocks).
  • Studied 1.5 hours, for my Sociology Final.
  • Took my Math Final, passed!
  • Finished the remaining work for my SPCH Final.
  • Wrote a blog post.

I’m shocked at how productive, the past day has been. I know it’s still early in the challenge, but I stuck to every single written instruction I gave myself. I have finished off my entire plate, for the remaining days of the Winter semester, and I even had room to add a blog post.

Tomorrow, will be my second day of the challenge, and it will be centered around Android Development. I’m going to apply what I did today with Math, to my Android Course, and I should make some solid progress sticking to my plan. I have 6 hours of Android Development planned, with breaks in between, and code reviews after every 2 hour block.

Surprises from my First Day:

  • I didn’t feel fatigued the entire day from running in the morning.
  • I stuck to the schedule, even when I was grinding my teeth, around the 5th hour of Math.
  • I completed even more than I planned, because I over scheduled a few areas (like how long my Math Final would take).
  • I just started feeling tired, and it’s 9:50 pm.

Okay, well that about wraps up my first day. I will post a photo so anyone reading can see exactly how thoroughly I planned my day, and the next three days of the challenge. Not quite sure, if I will continue past these three days, but I can already tell that if I did commit to such a rigorous regiment, I would be miles ahead of my current self, even a week from today. Here’s my 3-day schedule. I had a problem scaling, but you can see the detail, even with the blur.

My First Hackathon

As I’ve been progressing as an Android developer, and been venturing outside my comfort zone, people have suggested more and more activities to further immerse myself in the developer community. The main suggestion that has been floated around the most, was an event called a hackathon.

After, hearing the word “hackathon”, I didn’t think I would be qualified for such an event, after all, I don’t know how to “hack”. Well, some time passed, and I got a hint of motivation so I googled, “what is a hackathon”. For a quick reference, a hackathon is an event, typically lasting several days, in which a large number of people meet to engage in collaborative computer programming. Then I searched, “what experience do I need to attend a hackathon”, “what is a hackathon like”, and “as a new developer, should I go to a hackathon”. Luckily, these searches netted a lot of positive results and encouraged me, a new developer, to give it a shot. What’s the worst that could happen!?

A few weeks before I found a hackathon to attend, I started looking for software meetups in my area. I found a few, including Java Programming Basics and an Agile/Scrum workshop, hosted by the Guild of Software Architects. A few days later, I came across a local hackathon that was going to be held in Dallas, Texas. A short trip from my home, so I registered as a developer on meetup.com, and although I didn’t expect to actually attend. I filled out the forms, and I was officially registered as a developer (how cool!). I was nervous, and as the date got closer I was leaning more towards not attending.

Two days before, I began feeling like I needed to attend because it felt important. Yet, the thought of attending resulted in trying to find reassurance that I was “good enough”. Luckily, google helped appease my concerns, but if one of those searches would of came back negative, I don’t think I would of gone.

The hackathon is finally here, I’m heading out to Dallas with my laptop, and my stomach is full of butterflies. I got lost finding parking, I couldn’t get my google maps to load, and I start wondering aimlessly around downtown Dallas trying to find the correct building. It’s cold, windy, but perfect weather for the toxic thoughts to start rushing back. I think, “hey, just leave, just go home and watch tv, grab something to eat, relax, you don’t have to be here”. The internal battle is raging, but I continue, I find the building, I find the elevator, and I make my way up. When the doors open and I step off, I’m transported. There are hundreds of people, cards lined up on the front table from various businesses, name cards at the check-in desk, and everyone seems friendly and nice.

Finally, I breath a sigh of relief. I had this idea built up in my head that I would be the only one there. That I would be the focal point, and my inabilities would be personified amongst all of these judging people, and no one would accept me. But, it was different, I was one of hundreds, there were people of all ages, and experience levels, and I frankly could go completely unnoticed once I walked into the crowd. So just like a lost tourist, in a foreign area, I followed the crowd and the crowd was lining up for dinner.

Mexican food, was being offered for free, and I followed the crowd around as the line began wrapping around the hallway. I wanted to talk to people, but was still to shy to start up a conversation. Until, I made eye contact with the guy in front of me, and blurted out some type of greeting. This was all it took, and I was now fully engaged with a random stranger. He starting talking about his web development projects, and where he went to school. I told him about my Android development and how I was still new, but was making some progress. After, that short interaction he asked me if I would be on his team, which consisted of three web developers from the University of Dallas. I agreed, followed him to go sit down, and met the other members. At this point, it had only been about 30 minutes and I already had a team, I had some new friends, and I felt like I was part of something.

I think this is a good place to leave it, I’ll post the final part of my hackathon experience later this week (think Dec. 14). This was such an awesome experience, and I learned a lot. In hindsight, I’m proud that I had the courage to follow through, and put myself in a situation that was completely unknown and intimidating. Lastly, the hardest part was not finding a team, but showing up. So if you’re in a similar situation, where you don’t know what to expect. Just show up, you may surprise yourself.

Personal Challenge (Complete):

The last days of the challenge..

The challenge, to cut out all video games, tv shows, and social media for a single week. The goal, to force myself into programming even when I would rather sit on the couch and watch a tv show or play a video game. Well, it has been the full week, here’s some of what I learned.

When it comes to social media, it’s a very little thing, but it can consume hours upon hours of my time. To stop wasting time scrolling through my feed, all I have to do is never log in (simple). This was extremely easy for me and I haven’t broke this part of the challenge once. However, it hasn’t been all forward progression, I woke up on Saturday, and felt like I had been hit with a sledge-hammer. I would have been better off if I had left the house completely, and forced myself only into continuing with my Android course. Instead, when it got a bit tougher, I turned back to tv shows and video games to numb my feelings of discomfort. 

Looking forward, I will be continuing with the absence of social media which for better or worse has shaved many hours off my total time wasted.  I will also be continuing watching limited amounts of tv. In regard to video games, I will take a similar approach to tv. The biggest reason for limiting, and not eliminating, is because I get a lot of enjoyment out of both of those, and I’m not as ready to give up those vices  quite yet. 

Overall, I think this challenge was an interesting experience and it helped expose problems, rather than fix anything. That is the first step in changing a behavior, identification. Moreover, I believe that this challenge could be improved by keeping a daily log of activities, this would allow you to see and calculate how much time was spent in each category. For better or worse, this method of documentation would be a much more effective resolution practice. Finally, I think challenging myself even for a short period, netted some fantastic results, but there is a lot to improve upon.

What did I really accomplish?

  • I have a better understanding of where I waste the most time
  • I was able to cut out ALL social media
  • I progressed more in my Android courses
  • I forced myself into thinking about my actions and how they could be better spent

Did I stick to the challenge 100%? 

No, but to be fair, if the problems I had were deeply rooted, it wouldn’t make sense to fix everything in one week. I would say I stuck to the challenge about 65-70% of the time.

Will I continue parts of this challenge and do a more effective one, later on? 

Yes, I believe that eliminating social media is a huge step forward, and next time I will focus on cutting out video games and tv shows,

You mentioned discomfort on Saturday, what do you think the cause of that discomfort was?

I’ve thought about this a lot, and the cause of that discomfort wasn’t due to being physically sick, but rather my brain sending signals of pain when I knew the course of my day would have been 10+ hours of learning.

How do you combat that feeling of pain, and move past it?

This is something I haven’t fully cracked myself. The only logical answer I would have is, completely take yourself out of the environment. Leave the house, go somewhere and return back ready to work or take your laptop with you and work anywhere with wifi.

Thanks for reading, and challenge yourself!