Any[Object]

You use Swift AnyObject wrong. Don't use AnyObject as a generics constraint. Don't do "is AnyObject", "as? AnyObject" to check if a variable is a class type. Don't use "AnyObject". Use "class" for a class-only protocol. Use "Any".…

Swift Runtime Performance - talk

Last week I had my last appearance with talk about Swift runtime performance [https://speakerdeck.com/krzyzanowskim/slow-swift]. I enjoy the topic, and I had a ton of fun with preparing the speech, with the on-stage experience and afterward discussions. Since I'm done with this talk, I'd like to make…

Funding (my) OpenSource work

Yes, ObjectivePGP [http://objectivepgp.com] is backed by the organization of a Fortune 500 company founder. We signed a 1-year long grant agreement, two months ago, and I'm delighted with it. What does that mean? That happened. My three years old project got funding. Around May we had the first…

Selling t-shirt > selling mobile apps. Dinosaurs.

Stop doing the apps. Start selling t-shirts. I spent an enormous amount of time doing apps, or even programs (before we begun to call it apps). I spent days on doing more or less challenging stuff like PGP [https://github.com/krzyzanowskim/ObjectivePGP] implementation or Cryptography [https://github.com/krzyzanowskim/…

Framed faces. The real world status board.

Three weeks ago I got this idea to build something new. The Idea At PSPDFKit [http://www.pspdfkit.com] we use Slack a lot [https://pspdfkit.com/blog/2017/what-cultural-diversity-means-to-us/]. It's in our veins. One of the routines is to check-in whenever one starts work. To do so, we go…