Skip to main content

Latest Entries

This year Apple's World Wide Developer Conference was held in San Francisco from June 13th to the June 17th and there was no shortage of big announcements. These announcements were mixed with platform changes, to new developer API's, to complete updates with Swift in Swift 3.0.  However, in an technical blog such as this, it would be hard to cover all of the big announcements and every new API so I thought I would at least cover what I consider 5 interesting points that I took away from the announcements and videos this year at WWDC.

Swift 3.0
Featured Post

At the time of writing this Swift is the number one language project on Github.  Apple is very proud that Swift is open source and I would have to agree that this is an excellent step forward for the language and for Apple.  Another great step forward from a language and platform perspective is the ability to run Swift on macOS, iOS, watchOS, tvOS, and Ubuntu Linux.  This is very interesting because it displays the the commitment on Apple's part to drive the language forward and gain support from the C community on Linux as well.

Profiling memory allocations in a iOS project is probably one of my favorite things to do when building a project besides coding.  Profiling gives you a sense of validation about how you have technically designed certain aspects of a project and it also gives you a sense of where you may have gone wrong and inadvertently created retain cycles,  memory leaks, or zombies.

In my most recent adventures in iOS I had a string hashing problem that led me down the road of creating a machine learning algorithm in order to find the correct random hash string I was looking for.   Looking back at the solution now, I was able to solve my problem successfully, but the solution I came up with to solve this problem is quite unsettling due to the variable results in time complexity derived from my solution.

Recently I was faced with a situation where I needed to get the value of an HTML5 date input field when it was changed by the user.  My first reaction was to setup a JavaScript listener that listens for a change or a click on the input element and then grab the value of the date accordingly.  So I setup my listener with jQuery and with vanilla JavaScript but I was unsuccessful in getting consistent result values no matter how I setup the listener.