Swift Package Manager Plugins [talk]

Last week, I gave an impromptu talk at the CocoaHeadsNL November meetup.

I’ve recently been working on R.swift version 7, which adds Swift Package Manager Plugin support.

After a brief overview of R.swift itself, I demo’ed the way SPM plugins can be added to an Xcode project, as well as an SPM project. I then showed the two types of Plugins; BuildTool plugins and Command plugins.

In the Q&A afterwards, people asked some great questions about SPM plugins and R.swift.

See the R.swift project on Github for a full example of how to use SPM Plugins.

Hacking “Marzipan” – Running iOS apps on Mac [talk]

A recording from my talk at the Do iOS conference last month.

At WWDC 2018 Apple announced that in the future it will become possible to run iOS apps on macOS. Rumours about this first appeared in December 2017 and was believed to be codenamed Marzipan. Although there is no official API or support for it yet in this talk Tom Lokhorst shows how he experimented with Marzipan and what he learned.

The example project used in the talk is available on GitHub: MarzipanDemoApp.

Rijksmuseum ArtViewer [talk]

A recording from my talk at CocoaHeadsNL last month

Tom Lokhorst from Q42 talks about how they developed the ArtViewer for the Rijksmuseum app. This viewer is a highly optimised image viewer to display very large images. It efficiently uses caching and tiling to save memory and bandwidth.

Rijksmuseum ArtViewer, Tom Lokhorst from CocoaHeadsNL.

See the Rijksmuseum app in the App Store.

From Sketch to Xcode [talk]

Last month at Q42, we organised a conference called Segue 16, a conference for designers and developers to meet and talk about app design.

A one-day, single track conference for mobile app designers, both aspiring and experienced. A full day on new mobile technologies that influence your design process. Learn about new and upcoming design related trends in iOS, Android, mobile web, accessibility, new navigation structures, responsive/adaptive app design, and new hardware (im)possibilities.

From: segueconf.nl

I gave a talk, demonstrating how a mobile developer takes a Sketch design and turns that into a real iOS app.

The audio of the recording is pretty crappy, but you can turn on subtitles with the “CC” button, and read along.

Segue16 — From Sketch to Xcode — Tom Lokhorst from Q42.

AwesomePrelude presentation (video)

Last monday (February 8, 2010) Sebastiaan Visser and I presented our ongoing work on the AwesomePrelude at the Dutch Haskell User Group meeting.

In a previous post “Deeply embedded DSLs in Haskell”, I introduced the AwesomePrelude. While the ideas behind that post haven’t changed, the implementation of the AwesomePrelude is radically different now.

The AwesomePrelude is reimplementation of the Haskell prelude in which all data types have been replaced with type classes. Embedded Domain Specific Languages (DSLs) can implement these type classes to get access to the functions defined in terms of the type classes. For example: by implementing the BoolC type class, a DSL gets to use the (&&), (||) and not functions.

Here’s a recording of our presentation:

The slides are online, and the code is available on github.
The reactive javascript example Sebastiaan mentions in the talk doesn’t use the AwesomePrelude per se, but is based on the same ideas.