1st Hackathon — Great Success

This was an absolutely crazy weekend.  Not only did I participate in my first Spartan Race, but I also participated in my first hackathon – sponsored by The Iron Yard Academy and SolTech.

Now if you don’t know what a hackathon is, don’t worry, I’m only about a week ahead of you, for I didn’t know what it was either until it was announced.  Basically, the Atlanta based tech company, SolTech, had some of their movers and shakers come in and pitch 3 different application ideas to our cohort.  We split up the Iron Yard students into 6 different groups, 2 per project idea.  My group had the privilege of creating a sports management app for managing recreational sports leagues – we called it Genius Sports.

gs-logo

 

Genius Sports, the smartest way to manage your recreational sports team, was a blast to produce.  Our group, consisting of 2 front end developers, 3 back end developers, and 2 iOS developers were able to create a nice looking, basic functioning prototype in 36 hours.  We had great communication throughout the project and our back end server guys were particularly solid.  They had our endpoints and documentation produced in no time and were forging on, creating functionalities that we knew we weren’t going to be able to get to in the short time given, a nice problem to have.  It was a great project to be a part of and I made some great strides working with Angular.js.

Presentation Day:

In real world fashion, each of the projects were presented as if we were asking for funding from investors.  It felt like our very own Shark Tank.  This is where I really shine, giving presentations is in my DNA.  My mother is a 5th grade teacher, my father is a musician and long-time church choir member, and I’ve taught 2 years of CrossFit classes and attended 4 years of business school at Georgia Tech – giving a great presentation is my ace of spades and comes very naturally, plus I enjoy it.  So I volunteered to give our product presentation and am very glad I did.  We ended up winning the best presentation accolade and got noticed by some employers in the industry, pretty cool.  Even though we were a fictional company, I wanted to give the impression that we were the real thing and make it feel like we wanted the audience’s business.  That meant not getting too technical, not showing any code, and focusing on the consumer benefits and the why’s.  It was a fun exercise and a memorable experience overall.  All of the groups did an excellent job creating functional products in under 36 hours and major props to the Iron Yard faculty who organized it for us.

 

 

Advertisements

1st Hackathon this Weekend

In case I didn’t have enough planned this weekend with my 1st ever Spartan Race, it also happens to be the weekend where The Iron Yard Atlanta is hosting its first Hackathon of 2015.

What is a Hackathon?

Truth be told, I’m not entirely sure.  If I had to guess, it’s somewhere between a Halo LAN party and a ton of JavaScript and server talk.  And yes, Halo is yet another Spartan reference, 2 for 2, I’m on a freaking roll.

Ok, I’m beating around the bush… a hackathon is where a company, or multiple companies, give some participants a software project and the goal is to get it finished in a certain period of time.  For me and the rest of my classmates, we’ll have from Friday night @ 6pm to Sunday @ 3pm to give our best shot at completing a project they assign us.  At this time, I have no idea what the project topic is, who my group is, or the who the companies are – but I can assure you it’s going to be a crazy, fun, most likely sleepless weekend.

Let’s freaking do this – AROO!!!

I Love Teaching

Last night The Iron Yard Atlanta introduced a new satellite for their existing Free Kids Course – and they needed volunteers.  I, again, raised my hand even though I’m bogged down with work and probably should be focused on refactoring assignments – but I’m also an entrepreneur at heart and see raising my hand as saying yes to a new opportunity, changing some kids lives, and building up my personal brand and network.  Unlike the first and second kids classes, this one I taught by myself and didn’t have any support from my classmate Alex.  No worries, we followed the lesson plan from the first class and by the end I had all the kids chanting “Everything is a Box” – great success!

These classes will be taking place at the Exchange Park Recreation and Intergenerational Center – an activities center in Decatur about 9 miles east on I-20 from 75/85 in the heart of downtown ATL – ya I just went SNL “The Californians” on you there.

Admittedly, I was not in a great mental state on the way over there, I was tired, feeling overwhelmed, hungry, and worried about my financial future.  After teaching that class, I had this joy that could not be squandered.  The kids were really interested and I got a few “Oooohs and Ahhhs”  when they saw how to get a YouTube video on their page.  A couple of the kids stayed after to ask more questions and find out what other resources they could work with when they got home.  It’s just incredible to work with people who are passionate about what they’re learning and I’m thankful to play a small part in that.

If you’re interested in getting you kids involved in a Coding After School Program – please let me know!

Group Therapy – Takeaways from our 1st (multi-tier) Iron Yard Project

What is this sad Aura?

Monday morning everyone shows up by 9:00am, but there is a weird defeated feeling in the air.  Everyone is sharing how far they got on their recent Checkers group project and no one is excited to share about their accomplishments – we all failed to meet the minimum requirements and therefore we all felt like failures.

Then, instead of going directly into a new lecture, we all meet in the back to present our projects and what we were able to accomplish.  Great… this is going to be more painful than turning away kids on Halloween because you forgot to purchase candy… (maybe that’s a pain point, maybe it’s not…)

The Project Makeup

There were 4 groups total.  Each group was comprised of 3-4 Rails developers, 2 Front-end developers, and 3-4 iOS developers.  The goal was to create a game of checkers that was available to play on iOS, the web, and all the moves and game logic work and communicate back to the server.  But this post is not meant to be technical.  This post is about my 3 takeaways from working in this first, cross-platform, group type.

My 3 Takeaways:

  • Pair Programming: Pair programming is a great way to tackle and troubleshoot issues – my partner Mark and I would fill in each other’s gaps a lot of times and it made breaking through barriers a lot smoother.  Outside these walls, I will want to be part of an organization that supports pair programming between senior and junior developers – even if it’s a once a week practice.

  • Lay the Foundation Early:  Laying the foundation for our project and setting up the ground rules for communication is imperative early in the project process.  We did this by setting up our project Trello and a Slack channel, yet over the course of 5 days we became more virtual with our communication.  We would have done better with a daily, face-to face stand-up between the 3 groups (front end, back end, and iOS) to keep everyone in the loop of what pieces we were currently working on and where we were being blocked.

 

If only SCRUM was this black and white…

 

  • Butting Heads can be a Good Thing: Butting heads can be a very productive way to build great products, so long as the people butting heads maintain a high level of respect for each other and it doesn’t get too personal and venom isn’t being spat.  Our group did not butt heads, however we did witness one group that had 2 people butt heads consistently and they ended up turning in one of the best looking and functioning projects and it was all smiles by presentation day.  As someone who is normally anti-conflict, this can be hard for me to grasp, however I do see where being able to communicate exactly what your team needs to another team’s manager is crucial for a great final project.

There you have it, 3 takeaways from my first coding group project… it was surprisingly like many of the other projects I’ve been a part of in the past, except a lot more time in a text editor.  In the end, our instructors paid us many compliments, and even though we didn’t get as far along as we originally expected to, we had a lot of great takeaways in the process and felt much better after our early morning group therapy.

Just keep swinging, Just keep swinging…

Yes, tonight I had to take a chill pill.  I got really frustrated and hard on myself when I left the Iron Yard today because this week overall feels like it’s just not clicking.  It’s even more frustrating because the beginning of this week started on such a hight point with the creation of my first JavaScript game Five Die.  Through building that game over the weekend, everything was clicking and I broke down a lot of barriers and mental blocks to get it done.  This week, it’s just cloudy, difficult, and tough to focus – my girlfriend, who 99.9% of the time is right 😉 ,  told me I’m just overthinking things and once again she’s right.

So what did I do when I left Iron Yard?  I went to the gym to sweat it out.  Going to the gym is such a great mental and physical escape for me, and I love the people and community we have there.  Tonight, I was able to catch up with my preacher, #FittestPreacherOnEarth, and have a conversation about what I was experiencing.  And as I’m explaining myself to him, a giant wave of humble epiphany consumes me.  What I’m experiencing with coding, is the same exact experience most newbies feel when they start CrossFit classes at our gym.  They’re inexperienced, sometimes really out of shape, and in the beginning they struggle with the most basic movements… then the cycle goes something like this… they get discouraged, start comparing themselves and their progress to other people, get down on themselves, miss a couple days, fall out of the routine, and sometimes just stop showing up all together.  This will happen within the first 4-8 weeks of their journey – so they weren’t patient enough to stick through the mucky times.

I find myself experiencing the same exact hardships 4 weeks into coding with JavaScript.  Last week I had a big win.  This week I’m in a classic hitter’s slump.  So, who better to ask about slumps than one of the greatest batters of all time and the true Home Run King – Henry “Hank” Aaron.

Knock! “There’s a drive!”

 

My motto was always to keep swinging. Whether I was in a slump or feeling badly or having trouble off the field, the only thing to do was keep swinging.

Hank Aaron

Boom Steak with a side of Wowwy Sauce!  That’s why he’s the King and an ATL living legend.

If you find yourself experiencing hardship in a new activity – whether it be learning a new language, starting a gym routine, starting a business, or whatever…! Just know that it’s completely natural to have the days where stuff juuuuust aaaaain’t clickin’.  The thing you must do in these times is to relax, keep your eye on the ball, and keep swinging… it will get better.

Everything is a Box. I Repeat. Everything is a Box!

Tonight was a first for me in my learn to code journey – which began a mere 2 months ago when I registered for my first HTML/CSS course on Codecademy.  Since then, I’ve completed their HTML/CSS, Javascript, and jQuery courses to completion.  Then, first week of January I enrolled into the Iron Yard Academy’s 12 week Front End Engineering bootcamp.  The knowledge gained has been incredible thus far.  So much so that I had another first tonight…

Tonight, my classmate Alex and I taught our 1st Iron Yard Kids class for HTML/CSS – 1 of 6 classes that this amazing course offers FOR FREE.  Our class is made up of twelve 13-18 year olds, and some of these kids are already WAY ahead of the curve – having already completed more Codecademy courses than I have… :/

I may be slightly biased, however I think the first class went incredibly smoothly and I think the kids are going to get a lot out of this course in a short period of time.  Here is how today’s lesson plan went:

  1. Alex and I introduced ourselves, gave a brief history of who we are, why we’re here, and what our hobbies were.  Yes Alex claimed with great pride that he enjoys smoking meats in his spare time – lol.
  2. Next, we laid 3 ground rules for the course: 1) Have Fun   2) Learn A Lot   3) Ask Tons of Questions
  3. Next, we went around the room, and every student had to state their name, grade, and their favorite website.  An interesting takeaway – 3/4 of the room said MineCraft and YouTube were their favorite sites.
  4. Then we had an unexpectedly short download party – everyone already had Chrome installed and the planned Sublime Text install came to an abrupt halt once we realized half the machines were Chromebooks and couldn’t install it – so we worked with Codepen instead.
  5. Then I took the stage and we entered into a general discussion about how building a house is ALOT like building a website.  I polled the room and they said in order to build a house you need a Plan, Foundation, Walls, Floors, Wiring, Paint, Furniture, etc.  This prompted my GRAND metaphor for how HTML is the Foundation, Walls, and Floors of a webpage and the Paint, Wallpaper, and Trim is the CSS.  I hope they got this metaphor – I certainly was proud of it.
  6. Next came the “BOX” mantra that certainly got in grained into every child and parent in the room.  Everything that lives on a page is a box.  The page is a box, and the images are boxes within that box, and all the text you see are also boxes inside that main page box, box, box, box, box this, box that, box salad, box and potatoes, box stew…. uh that’s about it, Forrest.

    box & potatoes, box soup, box gumbo, box & grits…
  7. We then started playing in Codepen and gave them a visual demonstration about how to setup basic header tags and how when you open a tag you ALSO have to close that tag.  And once we had some basic text on the page, we made that text different colors and changed the Left, Center, Right positioning on the page.
  8. Then we shifted gears, and showed them Chrome’s Inspect Element and how their favorite websites were just a TON of HTML boxes and CSS styles.  I witnessed some light bulbs turn on when this happened.
  9. Then one of the students recommended we check out Cookie Clicker and that was a bad idea because I lost control of the class for about 5 minutes and heard ~10,000 clicks in that period.  No more Cookie Clicker became Ground Rule #4.
  10. We wrapped up the class by giving a homework assignment of complete the first 2 modules in Codecademy’s HTML/CSS module AND to create a Codepen that included 5 of their favorite youTube video embeds (another thing we went over earlier in the class).

Overall I think the 1st class was a big success and every student walked away with learning at least one thing — that EVERYTHING IS A BOX!

but you already knew that by now…

{quick aside} – some of the students pulled us aside after class and asked for MORE work – so we told them to challenge themselves in Codepen and make a really awesome page that represents their 3 favorite hobbies.  I greatly look forward to what they come up with by next week’s class.

MLK Dr. on Dr. MLK’s Day

Today is Martin Luther King Jr’s birthday and while many people were at home laying low and lounging, I was up at the crack of dawn and getting over to the Iron Yard campus over off of Martin Luther King Jr. Drive because I had JavaScript to learn.  This isn’t some “oh hey internet – give me a pat on the back for working on a holiday…” NO.  I bring that to your attention because I humbly proclaim that I wrestled this weekend with some very basic JavaScript concepts and I was determined to sort them out today and not get left behind.  See, as I learn more and more and dive deeper and deeper into JavaScript, I notice how it’s the a lot of the same core concepts over and over again – just written a different way or seeking out a different result.  So if I don’t hammer the foundational principles early, well I’m going to be up the creek without a paddle in the next week or so.

So were there any breakthroughs today?  Short answer, yes.  I threw my hands up a couple of times like I was doing the “Y” from YMCA and gave a couple fist bumps to some other fellow students (jellyfish!)

The best thing accomplished today was building confidence with creating functions and realizing the power of pre-defined methods on strings and arrays, particularly arrays.   After researching the Google-sphere for answers, I came across the .split(), .reverse(), and .join() methods to be used on arrays.  Here is the exercise that turned on the Ah-Ha! lightbulb.

Instructions: Define a function reverse() that computes the reversal of a string. For example, reverse(“jag testar”) should return the string “ratset gaj”.

My Answer:

var reverse = function(string) {
var split = string.split("");
split.reverse();
console.log(split.join(""));
}

Now this may seem easy to a professional, but for a 2nd week beginner like myself, this was like Forrest Gump learning he could run and break free from those silly “stupid is as stupid does” leg braces.

He might be the stupidest son a b**** alive, but he sho is fast! HAHAAA!

Thanks for reading, more to come I’m sure.