Our DNA is written in Objective-C

Jump

XcodeJobs v2

In 2012, when I had been working full time in iOS development for 2 years, I used to frequently see tweets about companies looking for Apple developers. This is why I established the @XcodeJobs twitter account because I felt it would make most sense to retweet those job offers with a dedicated channel.

My thinking was that if you were looking for your next iOS gig you would just follow this channel and – once you found it – you could simply unfollow it. At the same time I wouldn’t spam people who are not looking for a job with these job offers.

Read more

BSA Banner

PSA: Xcode hanging opening projects

There is bug in Xcode 8 that has not yet been fixed as of Xcode 8.2.1. If you running macOS Sierra you might find that Xcode hangs if you try to open a project, for example via Finder or the open command. The original bug report was filed as rdar://29319747 which mine was closed as a duplicate of.

Read more

The Exclamation Function

Four months ago, I reported a scenario where LLVM would crash with a segmentation fault. A later Xcode version fixed the LLVM crash, but now the crash would occur during runtime. This surprised me: Why would it be valid syntax accepted by the compiler, yet crash during execution?

Read more

Sheet dismissal bug when window is hidden

Our customer found the following issue. In our apps we are showing some sheets for displaying progress to the user (downloading a bunch of images for example). I was not aware that if you ALT + CLICK in macOS ouside your window it gets hidden. When you do this and dismiss the sheet meanwhile an empty sheet remains on top of your window.

This bug is filed as rdar://30071930 and on Open Radar.

Read more

Use Legacy Swift Language Version

There is a bug in Xcode 8.2 that – after upgrading to this version – it is no longer able to build your project. The build error message is:

Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift.

We saw this in projects where we are not using any legacy Swift, i.e. everything is Swift 3. Also there is a project-wide setting to NOT use legacy Swift. The new bug seems to ignore the project-setting.

Read more

POEditorAPI 1.1.0

In the month since the initial release of  the POEditor.com API and command line utility, I did some refinements which become necessary to support ongoing development projects. Generally speaking you should use the poet tool without parameters to refresh your strings files.

Read more

Introducing the POEditor.com API and Tool

If you want to be successful in international markets you need to localize your app in as many languages as you can. For iWoman we use POEditor.com. As the number of localization grows it becomes increasingly time-consuming to update all localizations in your Xcode project, let alone deal with plurals which are not supported in the XLIFF format.

Today I am showing off, how I got the update process to be a matter of seconds. I achieved this by writing a POEditor.com API and building a command line tool – I call POET (for POEditor Tool) which greatly simplifies the update process.

Read more

DTCoreText 1.6.19

Hot on the heels of the previous release for DTCoreText this update hot-fixes several issues which were introduced in the previous release.

Read more

DTCoreText 1.6.18

Since the prior release of DTCoreText, 9 months ago, a few issues became apparent with Xcode 8. Some people contributed cool stuff like support for use in app extensions as well as tvOS support.

Read more

Bug: NSCollectionView Move Sections Crash

We are so foolhardy that we are using NSCollectionView in an internal project that gets widely used by an enterprise client of ours. We found this latest crashing bug while updating the application for macOS 10.12 wich is where the issue first appeared.

The only workaround at this time is to remove animation via animator() and replace it with a reloadData. Thus we vote NSCollectionView for worst Apple API on macOS.

This bug is filed as rdar://28337446 and on Open Radar.

Read more