Optionals are a concept that isn’t in Objective-C, which makes them instantly cool already (and that’s disregarding the usefulness of these, as I’ll go into shortly). What are optionals? An optional is a variable with a question-mark (?) on the end of it. It means that the variable has a value, and it’s X, or that there isn’t a value at all. If you’re from a C# background, you’ll know of the Nullable concept - I believe it’s pretty similar to that.
It was a pretty big surprise all round when Swift was announced at WWDC on Monday. Very exciting news. It can work alongside Objective-C! It also has a bunch of cool features that I’ve missed since transitioning over to Objective-C. Generics are probably the biggest thing for me - after using C# for so long I wasn’t sure I would be able to handle not having them (I obviously did learn to not have them).
After much deliberation I’ve decided to take Diving Buddy from a paid-only app to being a freemium app. This means the app itself will be free, and some of the calculators will be In-App Purchases (IAPs). There’s been a lot of controversy regarding IAPs lately - mostly when used in games. I tend to agree with most of the issues. If you take a look at the iOS App Store Top Grossing chart, the top few apps haven’t actually changed in the last year or so.
Everyone knows Objective-C is very verbose. Some people like it because it can be easier to understand when you know what the five parameters in a particular method actually mean. Many people dislike it though, as it takes a long time to type things out. There are a couple of solutions to getting around its verbosity: Suck it up and get on with it Macros for most used functions Code snippets For a long time I kind of just went along with #1 - I never found it a deal breaker since I type at a pretty quick rate (typing tests put me at 130+ WPM) but obviously there’s no point in giving myself RSI when I don’t need to!
It only recently came to my attention that Heroku added Web Socket compatibility last month (October)! I’ve been wanting to create something “real-time” for a while, but every BaaS (Backend as a Service) that I looked at either didn’t work with web sockets, didn’t provide real-time updates, or just wasn’t up to providing what I wanted well enough. I’ve found more recently that Parse was really quite enjoyable to play with, so I’ll be using that as my data storage, and I’ll be creating a web socket server on Heroku that will cater to all my real-time needs (hopefully).
The latest update to my app Desk Jockey Workout was just released. So far, the feedback on the app has been astoundingly positive, which is great. I hope it’s something people can get a lot of value from. I also got a lot of feedback on version 1.0 - mostly small tweaks that they thought needed doing. This update aimed to fix those. So what did I do? Well, the most common thing mentioned was the icon.
I have been thinking about this quote quite often lately. The general idea is that the more you wish something hadn’t happened, or worry about something in the future, the more it occupies your mind. I suppose from a purely neurological point of view, by constantly thinking of something, you are constantly creating new connections in your brain, solidifying the memory/thought even further. For example, a man has an interview and something goes wrong - it doesn’t matter what - the point is that after that interview he keeps thinking about it, wishing it would have gone differently, thinking up scenarios to have made it better.
My latest app, Diving Buddy, recently hit the iOS app store. The app contains a bunch of reference material, diving tips, and calculators for divers of all skill levels. The app is capable of calculating oxygen toxicity levels over multiple dives, the minimum gas required for an ascent from any depth, the overall run time of a dive, the maximum operating depth, the weight of air in a cylinder so you can determine how much weight to add or remove, and various other calculators.
One of the things I have been working on lately is my first official iOS app, Desk Jockey Workout. It’s a straightforward app that aims to fix issues caused by prolonged sitting. Sitting causes many issues with your body, including muscular imbalances surrounding the hips. Increased imbalance, with the anterior muscles becoming stronger than the posterior, can then cause Anterior Pelvic Tilt (APT). APT is simply the pelvis rotating forwards and down.