Monday, November 25, 2013

Ah! No Time!

I have to get this to a point that I can demo it by Dec 4 (next Wednesday)! I spent some time polishing it this weekend, and although I am not done playing around with the colors and the styles, I am having a lot more fun with it now that it kinda looks real. I feel like a little girl would want to play this game. Don't have time to tell you much more than that. Here is a picture:


Monday, November 18, 2013

Help Me Name My Game

If you have read my previous posts, you know I am creating a game that is supposed to attract young girls and expose them to programming concepts. I wanted the game to focus on helping a pet get to its treat by giving it directions and then hitting the go button. These are the three pets I currently have available as a choice for the user:


What I am trying to accomplish in naming my game:

  • I don't want it to sound more exciting than the game itself (ex: Pet Bonanza! - that would be a huge letdown) 
  • I don't want it to sound competitive or time-constrained (ex: Pet Race, Pet Run)
  • I want to trick the little girls into coding by luring them to my game with cuddly animals, so I don't want to let on that this is a puzzle game or that it's about coding. (ex: Pet Code, Pet Puzzle)
  • I don't want to use a name that is already a thing elsewhere (ex: Petly, PetGo)
With those criteria in mind, I think my final candidates are:
  • Fluffy Trails
  • Fuzzy Trails
  • FluffGrr
Please, please, please click here to vote and/or suggest alternatives to my final candidates. Don't be shy! I need as much input as possible, and no ideas are bad. Thanks!

Saturday, November 16, 2013

Second Week of Projects

Anki Donates a Set to Hackbright

One of the Hackbright mentors has been working on Anki Car for quite some time and they donated a set to Hackbright yesterday. You must watch this video. It is a very cool toy and I had a lot of fun playing with it. Even the tutorial is really fun - they got Sir Patrick Stewart to voice it. And we can now play anytime we want! Once Hackbright is over and after I decompress a bit, I will totally take guests to Hackbright on weekends to play with it if you want to try it out.

A Glimpse of my Project

I hesitate to share with you a picture of my project so far because I need to fix the color scheme/layout and not everything is working yet. But I have been working very hard on it and I am proud of what I have accomplished so far. I can feed my program a string of letters that represent the background map for any given game level, a pet type (choice of bunny, dog, or penguin), a pet name (the player gets to name their pet), and a list of directions, and the pet will execute those directions. Eventually, the game map, pet type, and pet name will come from my database - every new person who logs in will choose their pet and start playing at level one, and my app will update their progress in the database so that every time they log in to my site they can view their own account with all their saved data.

As I said, right now I am just feeding the bunny a list of directions and it executes those directions. Currently I am working on the "go" button and the arrows so that when you drag and drop arrows into the blue code bar and hit go, the bunny moves according to the directions you gave. I spent a lot of this week putting restrictions on where the bunny can go, what to do when it reaches the carrot, what to do if it doesn't reach the carrot, what to do if you tell the bunny to move to a spot where he isn't allowed to go, and how to make the bunny delay between each move so that you can watch him go from one square to the next instead of him moving instantaneously to the endpoint.


So far from this project I have learned:

  • html5 canvas - that's the game board and the bunny
  • html/css organization - the arrows/buttons/code bar and their layout
  • a ton of javascript - the game logic
  • DOM - using javascript to tell html what needs to change on the page depending on changing factors
  • jQuery - a weird javascript library that allows you to do things like drag and drop the arrows into the code bar
  • how to use my amazing mentors to help clarify fuzzy spots (or gaping holes) in my understanding

Anyway, I have a lot of work to do and I am going to get back to it now. But I did want to show you what I've spent the last two weeks working on. Every little step is a new challenge, and although it's been very up and down, I am slowly making progress. Onward!

Tuesday, November 12, 2013

Superheroes

Yesterday was a roller coaster, and I feel like I need to give a shout-out to two heroes of mine who were particularly heroic.

The Husband

If anyone was ever uncertain, my husband is one of the most kind-hearted, genuine, caring, passionate, and compassionate people on the planet. He also happens to be very smart and ludicrously funny, but now I'm just bragging. In any case, one of my classmates needed help with a big data problem and was struggling to find someone who a) understood the problem, and b) could explain it to her. I told her to email John and see if he could help. John looked into the article she was trying to understand, studied it, got interested in it, discussed it with a coworker, and then explained it to her over skype. He is so passionate about learning, and he is passionate about helping other people learn too.



John St. John
Husband of the Year


The Teacher

Furthermore, head instructor Liz at Hackbright makes miracles happen every day. I had broken my code and started over three times without success. I had gotten help from a couple of different sources and had googled the crap out of my problem but I felt like I was missing something and I was almost literally pulling my hair out. I told Liz I was having a Lizmergency and needed her help. It turns out there was a javascript function I didn't know about, and just knowing it existed changed the course of my day. After helping to point me in the right direction, she told me that my code is really well-organized and that that is what is going to get me a job. She said she was "pretty effing impressed" with how well I organized my code. Liz sure has a way of turning discouraged-insecure-lonely-me into empowered-understanding-excited-me. She is superhuman.



Liz Howard
Instructor / Badass



Saturday, November 9, 2013

First Week of Projects

On Monday we officially started our projects. That means that the schedule is much more flexible. At 10am we do tech talks, and then we do a daily scrum. Then we spend the day working on our projects, meeting with mentors, and scheduling office office hours with instructors as necessary. We really have to manage our own time, which I am happy to do because I really like working at my own pace.

Daily Scrums

Every morning the members of my house, Ravenclaw, meet to briefly list our progress, our goal for the day, and any blockers we might have that could get in the way of further progress. The "scrum master" from each house then reports all that info to the instructors so that they know who needs immediate help and they have a sense of how each person's project is coming along.

My Progress

If you are interested in seeing what I've accomplished every day, I having been pushing my code to Github regularly (think Google Docs but for code), and if you look at my project folder, you can look at my code or just scroll down and see my readme that shows the most updated description of what I have accomplished and what my next steps are. 

If you do want to look at some awesome code I wrote, click on the static folder, and then the js (short for Javascript) folder, and then the canvas.js file. I am super proud of the work I've put into that file, which is the heart of making my game show up and do stuff in the browser. It's still got a long way to go, but I had a major breakthrough last night when my mentor Tim, from Zillow, helped me understand a bug in my code that had been making my life hell for a couple of days. It was a hugely victorious moment. There was a lot of shouting and jumping involved.

I mostly want to take the weekends off from my project because I need the break, but I coded a little today because I was super excited to work on the next part of my goal for Monday, now that I finally got past this hurdle. 

The next three weeks will mostly be devoted to our projects, followed by one week of polishing, and then it will be career day. That's when representatives from about 35 Bay Area tech companies come to do a speed-dating-style interview process and we demo our projects. 


As many of you know, my best friend Lindsey just moved down to the Bay Area to go to Hack Reactor, which starts on Monday. Last week I took her with me to Hackbright, where she coded, blogged, and helped me with my project because she is amazing. We also went to a Girl Geek Dinner at Cisco Thursday night, which was a lot of fun. They had a photo booth with fun props, so Lindsey and I took advantage of that:


Lindsey's program is super intense, and it runs six days a week. So I am very happy that we will be able to ride the BART together in the mornings. 

Looking forward to continuing my project, and I am hoping to blog every week for the remainder of Hackbright. I will try to post pictures of my progress soon!

Sunday, November 3, 2013

Also at Facebook

I forgot to mention a couple of cool things about our trip to Facebook.

1. They totally had a giant cooler full of Thai iced tea, among other fun and fancy beverages.
2. There were a lot of people wandering around campus with a baby in an Ergo or toddler in a stroller.
3. I liked that a lot of their artwork is done by people who work for Facebook. An engineer brought in his seven-year-old daughter to help him paint/draw this in the hallway of his building:


Also, apparently at one point Mark Zuckerberg walked right past us. I wasn't really paying attention but I probably wouldn't have recognized him anyway.

They posted a photo of our visit on the Facebook Diversity page. At the time of writing this, it is the most recent photo in their photo stream.

Saturday, November 2, 2013

Movie Ratings App, My Project, and Visiting Facebook

Movie Ratings

We spent four days working on a movie ratings app similar to Netflix. My amazing partner Amy and I had a little fun with the design. Here is our homepage:

This is me adding a new account:

These are all the ratings one person gave to a bunch of movies:


We also wrote a function that could predict how much you would like a movie based on your previous ratings and the way that other people rated movies (we were given user data from about 900 people). That was pretty cool, but I'm pretty sure I'm not into big data. I had more fun making it pretty and funny.

My Project

I am going to build a game for young girls to introduce them to basic programming concepts. I want to do something that's a bit of a combination of Blockly Maze and Cargo-Bot.

    <-- Cargo-Bot (addictive game on iPad)

I like the idea of using drag-and-drop arrows to learn about programming, but I really want my game to appeal to little girls in a genuine way, like Goldie Blox does. I am going to create something like Blockly Maze in concept and like Cargo-Bot in design. But it will be with a little bunny trying to get her carrot. The user will help direct the bunny to her carrot by dragging and dropping arrows and other simple buttons. I am going to map out a few levels to get a sense of where I am going with it. But I am really excited about getting started and it has been officially approved by both Liz and Christian.

Facebook

Yesterday we took a field trip to Facebook's Menlo Park campus. It's a lot like Disneyland there. You go through security and get special badges and then inside there's a weird, fake village. A 50s burger and milkshake restaurant, a sweetshop with gourmet pastries and ice cream, an arcade, a bar...It was pretty strange. The food was pretty healthy and extremely tasty. We met with several women who work with Diversity at Facebook, and one of them was a computer science dropout turned software engineer who has been working at FB for about two years. She works in "capacity," which means that she is trying to make sure all the photos you uploaded to Facebook five years ago never have to be deleted.

A tech accessories vending machine:


Their thumbs up sign had been dressed up for Halloween:



Going to pick up Lindsey from the airport in two hours! She starts at Hack Reactor in a week and a half! It's about to get magical.