Swift Developments is a hand-curated newsletter containing a weekly selection of the best links, videos, tools and tutorials for people interested in designing and developing their own apps using Swift.
I hope you’ve had a good week.
I just wanted to mention before we dive in that I’ve posted some of the back issues of this news letter if you missed any of them. I would also really appreciate it if you could share the link with you’re friends if you think they’d find it useful.
Apart from that though I think we should dive in this week as we have lots to talk about…
Has the Mac development community finally lost patience with Apple and the Mac App Store? This week saw another major player leave the store with Bohemian coding announcing that they would be removing their best-selling design tool Sketch from the Mac App Store and would instead be selling it via their own website. In their post they cite extended app review times, sandbox restrictions and a lack of upgrade pricing as some of a much longer list of issues that have lead to their departure.
I wouldn’t say I was a Mac developer but for some reason I feel quite sad by this story. Not because of Bohemian Coding leaving the store, but more as a lament for what the Mac App Store could have been. From my point of view as a consumer in this area rather than a developer, the Mac App store could have been a great one-stop-shop. A clean, integrated way of delivering high quality software without the need to visit multiple websites to get the app installers. With that said, I don’t blame the various developers for their actions. A combination of neglect and from what I can see ambivalence, to the issues that Mac developers have raised, sees Apple slowly killing the indie development scene, something I think the entire platform will be poorer for. Beyond this, I’m also concerned that even if Apple did now address the issues, my guess is that they have completely lost the support of the Mac development community and thus the store will never be what it could have been. Only time will tell on this front but I suspect we will continue to see the slow exodus of apps from the Mac App Store in the coming months. In the mean time though I did come across this which did bring a little levity to the situation.
The award-winning video game Monument Valley was a great success. I played it myself and for someone who isn’t a massive gamer, that’s saying something. In this article, the team at InVision provide some interesting insights from @kenwongart, lead designer at ustwo (makers of the aforementioned game). In the article, they discuss what made Monument Valley so different, why the designers made some of the decisions they did as well as providing a peek into the process that was used to bring such a highly successful game into fruition.
Dan Counsell – Almost Impossible!
Staying on the theme of what it takes to launch a successful iOS game, we have this article from @dancounsell in which he gives us an overview of the development, launch and revenue figures from his hit puzzle game Almost Impossible!. In the article he goes over some of the marketing decisions he made as well as the subsequent issues he has had with people ripping off his game and assets.
In this article, we the team at Intercom take an interesting look at just how important it is to make sure that the things that you design (whether they be apps or anything else) actually solve the problem your users have. In the article they look at the growing separation of the community on the popular design website Dribbble into those designing to impress their peers and those designing to solve actual problems. In doing so, they bring up some interesting points to consider in your own design endeavours.
Although I don’t 100% agree with all of the facts in this article, but the importance of a great user experience for first-time users of your app cannot be understated. In this article, @skreutzb suggests some good ideas about how to improve the experience by removing the need for users to enter a username or email address and using their iCloud ID instead.
Optionals in Swift are often confusing for those new to the language and frustrating for those who don’t have a clear idea of what they are and what they are used for. Often they are faced with obscure compiler errors and often, the suggestions the compiler makes to fix the issues are not necessarily the best approach. In this article, we dive into the basics of Swift Optionals. What they are, what problems they solve and how to use them.
NSOperation and NSOperationQueue are two of the core classes from the Foundation Framework when it comes to performing asynchronous tasks within your applications. In this Article @krzyzanowskim takes us through a neat little dependency trick to allow blocks of code to be executed after all of the operations on your queues finish. Toward the end of the article he also provides an example of using dispatch groups in Grand Central Dispatch to achieve the same effect.
As I’ve mentioned, I’m not an OS X developer myself, but I did have a bit of fun this week working my way through a series of tutorials released by @iwantmyrealname over on RayWenderlich.com to help those of us who haven’t done much Mac programming, to get our feet wet. If you haven’t done any before, I’d recommend taking a look.
One of the major criticisms of mobile devices as well as the new Apple TV is user experience associated with logging people into their devices. Tiny keyboard don’t do it and don’t get me started not the Apple TV remote. On tvOS though the situation looks to have improved though with Facebook providing their tvOS SDK which, amongst other things, provides a more integrated way of logging users into your tvOS app.
I’ve been digging around in a whole bunch of networking code this week. One of the things I came across as part of that process was this little gem from Christos Kasketis. Netfox is a lightweight one-line network debugging tool that captures all the network requests that are being performed by your app. It’s likely I’ll be messing around with it some more later in the week but it from my initial investigations, it definitely shows some promise.
The concept of material design originated as a brainchild of Google as consistent design language in which to encapsulate the best practices and principles of good design. Since then its expanded beyond the confines of the Google platform and has reached the iOS platform in the form of this Swift framework from CosmicMind.
I might be a bit late to the party on this one but I came across this video during the week which I loved. It’s a talk by @orta from AltConf 2015 in which he discusses the importance of community and being “nice”. Personally I think it’s great to see people helping each other out as well as seeing people thinking about how to get new developers involved in open-source projects, an ethos that is reinforced by this other article that I came across. It’s definitely worth watching.
AltConf 2015 Videos
In similar vein, when I was poking around, I also came across the entire archive of AltConf 2015 that are being hosted by the team over at Realm. I completely missed this resource when it first came out but with Christmas approaching, it looks like I have a whole slew of videos to watch over the Christmas period.