Happy 2017

hsoi blog, talk 0 Comments

Sorry for all the silence, but 2016 was a interesting year. I joined Oven Bits. I left Oven Bits. Consulting work ebbed and flowed. Swift continues to evolve and it’s been a lot of work to keep up with it. But I think it’s one of the best languages to come along. I even dabbled with it as a scripting language and …

Java of Antiquity

hsoi blog, talk 0 Comments

While Swift and Objective-C might approach nil/null differently, ultimately they both allow me to do something with the syntax: Forget about it. While working in Java, dereferencing null is possible and of course leads to crashes. Thus, everywhere in code you have to do this: if (foo != null) { foo.something(); } Which becomes verbose and tiresome (and error prone). In Objective-C, if …

The Joys of Swift – Enums

hsoi blog, talk 1 Comment

I’ve been using Apple’s Swift programming language fairly exclusively since around December 2014. While it started out with frustrations, I’ve really come to love and embrace the language. I cannot see going back to Objective-C – I don’t see what the gain would be. Well, in fairness, there are a few gains. The Swift toolset is still nowhere as mature as the Objective-C toolset. Xcode woes are …

From 2015 into 2016

hsoi blog, talk 0 Comments

If I had to choose one thing that, in 2015, made a significant impact on our goings on at Hsoi Enterprises? It’d have to be Swift. Apple’s new programming language, Swift, has been a huge boon to what we’ve been doing at Hsoi Enterprises. It’s not just the open source, be it HEAlert, HEAnalytics, or HELargeCenterTabBarController. It’s general productivity. The Swift …

on Custom Operators

hsoi blog, talk 0 Comments

One nifty feature of the Swift programming language is the ability to define your own custom operators. Why would you want to do this? Because it can make reading and writing code better/easier. Just like factoring code into a function can help with maintenance, reusability, and readability, so can a custom operator. However, one must remember that the custom operator must enable maintenance, reusability, …