Save the Internet

Only You Can Save the Internet Net Neutrality protection is not well understood by people outside of the tech industry, a fact that FCC chair Ajit Pai is capitalizing on.  Ajit has be so heavily on people not understanding, and not caring, that he has openly bragged that he is a puppet for the telecom industry.  Contrary to what he thinks, Americans are not stupid.  So here is a rundown of what net neutrality protections are.  If you have the time, I highly recommend watching this more in depth explanation by Jon Oliver.

What Net Neutrality Protects You From Imagine that you want to watch your favorite show streaming on Netflix.  You load it up, and start playing.  The quality is terrible.  It has to stop and buffer every few seconds.  What is going on?  You pay for 50 MBPS down, which is about 25 times faster than it needs to be able to play a 1080p video smoothly.
The answer?  The Net neutrality protections have been gutted, and Netflix didn't pay the multi-million dollar toll …

Landing Your First iOS Developer Job: My Journey Changing Careers

Landing Your First iOS Developer Job My Journey
I was bored with my job.  Every day seemed to be exactly the same as the day before.  My brain was set to off for all but a few minutes every day.  I wasn't challenged.  I was literally going in circles (you have no idea how literally).  It was time for a change.

Coding is something that I became interested in when I was only about 7 or 8 years old.  My dad was working for Microsoft at the time, and brought home some Basic (the language) programming books for kids.  I can't even express in words the first time I learned how to use Boolean logic that executed a goto statement.  It was like creating my own Choose Your Own Adventure book.  I could get lost inside a world of integers, strings, and goto's for hours.

As I got older, coding started becoming a background hobby, as I was introduced to memory management, arrays, and command line arguments in C, and setting up UI in Visual Basic.  I didn't really connect coding wit…

Stars... They're What Growing Developers Eat for Breakfast

In this day and age, free is nearly expected.  You spent eight hundred bucks on your smart phone, why should you have to pay for the apps on it?  And speaking of free apps, they better be amazing, so why bother downloading something that doesn’t have at least 4 stars attached to it?  Once you download the app, why bother adding a rating of your own?  This extra effort can seem very time consuming and trivial from a consumer’s perspective.

This attitude poses real problems for developers.  Developing software is time consuming, and it can be very expensive.  Many developers can’t even break even to make back their $99 per year developer account that allows them to have apps on the app store to begin with.  Is it because people don’t like their apps, or they make garbage software?

No.  It’s because their apps get burried, and the people who do download them, don’t bother to add a review.  Reviews matter, a lot.  A new app will get burried in the App Store search, when people do r…

Simply Zen

Simply Zen I am nearing completion on my upcoming mindfulness app.  So far I have most of the UI done, all guided meditations have been recorded, there are several bell sounds to choose from for open-ended self guided meditation sessions, HealthKit integration is setup, and Twitter is integrated.
The major TODO's left are to finish up the settings screen, and to complete the intro tutorial, and to tie up a few other loose ends.  After that we will be entering a short beta, and I hope to have it available on the iOS App Store by the end of next month (though release date will probably end up being a little earlier than that).  The app will launch with at a discount of $3.99 for the first month after release, and then it will go up to it's regular price of $8.99.
I wanted to bring a full featured, mediation app to the App Store, with a simple, elegant, relaxing interface that was pay once forever.  Most of the meditation apps currently cost upwards of $100 per year, which is to…

Beginning Zen

Beginning ZenMeditation for the Masses
Changing careers can be stressful.  You can try to expand your education and experience while working full-time to make ends meet, or you can quit your job and rush through as quickly as possible and hope you have enough money to last you through to the finish-line.  Either way it can be stressful, and I wouldn't have made it through my journey to become an iOS Developer—now nearing it's end—without discovering mindfulness.
There are many misunderstandings when it comes to meditation.  Many think that it is deep-thought, others that it is the pursuit of emptyness.  It also seems that you have to be fairly affluent to discover these secrets.  I had already purchased some meditation guides before leaving my job to persue my career change, but most of the good apps charge subscription fees close to $100 per year.  This is not accessable at all to most Americans.  I decided to do something about it.
My final project for the educational program I…


Enumerated() Built in Counting One of the most useful features in Swift is the for in loop.  This makes working with lists like arrays and dictionaries a breeze compared with other languages.  One thing that may not be so obvious is how to figure out where you are currently at in your list.

As a workaround, you could declare an index variable, and add one to it each pass through the loop.  This is a frankly ugly solution, and ugly code often turns into buggy code.  Luckily, Apple has built in a simple, elegant solution by calling the enumerated() method on your list.

Calling this method allows you to keep track of the index during your loop.  All of your setup and iteration is done in a single line:

And that's pretty much it.  Hopefully this simple method will help you become a better programmer.  I know it's helped me!  I hope to see you again as we learn to code together.

Passing Information Between View Controllers

Passing Information Between View Controllers I don't know why, but for whatever reason one of the things that used to really drive me crazy was passing information between view controllers.  I think it is just part of the learning curve, and Apple's strong encouragement toward some type of MVC inspired design pattern.
To help others who are trying to get a handle on this, I wrote up a very simple app that passes data between two view controllers.  One has a text label that displays text, and the other one allows you to change the text displaying on the first one.
After setting up the view, and associating ViewController.swift files with each one, and setting up Storyboard IDs for each View, it's actually very simple to write code to pass the text between them.  In my example, I set the segue up by right-click-dragging from the Enter Text button over to the other view controller and chose "Show" for the segue type.
Without any code, the segue will work, but the t…