ATX Diversity Hackathon 2017

This past weekend I participated in the Austin Diversity Hackathon hosted by Women Who Code – ATX.  I pitched an app to make a nature journal for pre-literate children.   This idea came about because my son, Eli, is 4 years old and loves to go on nature walks and collects rocks, leaves, and flowers as we go on our walks.  I don’t like finding rocks in the laundry machine all the time 😂 and I don’t like that he disrupts nature for his collection, so an app that a child could use and didn’t require a cell phone or wifi connection.  I had one person join me, Gabby, and she was the designer for the app and I was the programmer.

The repo for this project can be found at https://github.com/StabbyMcDuck/nature_journal

I was able, in 1.5 days, to get the initial table view, adding something to your collection, add a camera, video, or add a photo from your photo library and also record an audio file (pre-literate kids can’t write either!) and play the audio file back.

We didn’t win any prizes, but I got some serious work done and I’m already planning on my next app!  I wasn’t planning on going to this, as I was convinced I wouldn’t win.  I didn’t win 🤣 but it turns out that wasn’t what I found to be the point of this weekend – it was about doing something I didn’t know I could do.

There’s a lot left to do but I’m excited what else I can do to make this app amazing for Eli to use.  I plan on putting it on the app store soon.  🎉

Add Constraints

Adding constraints to elements in your app helps your app look consistent between different devices that run iOS.  You can have a button that is centered in an iPhone 6 and is also centered in an iPad Pro.  You can also have that button be centered depending on if you are viewing in portrait vs. landscape mode.

Add Constraints

In your project, select the element to which you will add constraints.  You can select it in the view controller navigation on the left side of Xcode.  See it below, the button is highlighted.

Screen Shot 2016-09-06 at 12.06.00 PM

Next click on the bar graph button on the bottom right of the view board.  You can see a menu pops up.

Screen Shot 2016-09-06 at 12.06.12 PM

Then you can click both Horizontally and Vertically in Constraint buttons on the left, then click the bottom button that says “Add 2 constraints”

Screen Shot 2016-09-06 at 12.06.29 PM

Now your element is both vertically and horizontally aligned!  Pretty neat and pretty easy!

What Makes a Good App?

I’ve been brainstorming new app ideas and I’ve been coming up with a list of qualities that makes for a good app.

  • Thumb/finger friendly buttons
  • Doesn’t use up all my battery life
  • Doesn’t use up all of my data
  • Runs fast enough that I don’t give up and switch to something else
  • Does something that would be harder to do without the app —> MAKES LIFE EASIER

I feel like that last point is where we get hung up as app developers.  It’s fun making apps!  It’s fun adding functionality!  But is it easier to do whatever it is we are doing on the app than it is on the website or using some other tool.  That’s the real pickle we’re in.