Ben Terhechte — journal
--rss
$ grep -l "#swift" ~/terhechte/journal/*.md

Posts tagged #swift

posts 71 years 10 tag swift
[ 2024 ]
01 · posts
2024-03-20

uniffi-swift-async-example: How to use uniffi-swift with async/await

Quick example project to show how to use Rust uniffi-swift with async/await to share code between cross platform apps.

[ 2022 ]
04 · posts
2022-11-15

Why I don't like Xcode

I realized I have to re-iterate my position on Xcode. So here's a brief note about why I don't like it.

2022-06-15

Sharing Code across platforms with Rust

A note on my experience of sharing code across platforms with Rust and Swift

2022-05-23

Belum: Dependency Injection for Swift

A lightweight, experimental, type-safe dependency injection container (cough) for Swift

2022-02-28

New Contravariance Episode: Index out of Bounds

(For now) the latest episode, reminiscing the times of the podcast, and index woes.

[ 2021 ]
05 · posts
2021-10-14

New Contravariance Episode: Because 404 Not Found

In which we talk about build systems, dependency graphs, conferences (who would've guessed), and XCTest.

2021-09-09

SwfitUI and Catalyst

After using both technologies for a while, here's my current opinion on them.

2021-08-19

New Contravariance Episode: A Surprise Guest

In this episode, we meet a 'surprise' guest and talk about the last couple of months and what it is like to work at a big company (... called Apple).

2021-05-18

New Contravariance Episode: Platform Teams

In this episode we discuss platform teams. What are they, when do you need them, how do they work. With Special Guest Patrick Balestra from Spotify.

2021-02-25

New Contravariance Episode: Hello Management, Goodbye Coding

In this episode we discuss the pros and cons of switching to a management position. What is it like, can you still code, and how should you go about it. We discuss this topic with Cate Huston and Tammo Freese. Also: Great recommendations and raccoons in the show notes!

[ 2020 ]
19 · posts
2020-12-22

New Contravariance Episode: A Jolly SwiftUI Christmas Special

In this episode, we initially discuss SwitUI and Apple documentation, but then dive off into a random discussion about pets, time travel, fireworks, and much more

2020-10-29

New Contravariance Episode: A Special Episode Looking Forward

In which Bas announces leaving the podcast (for now), and Bene upgrades his setup. We also take a look back at all the episodes we've recorded in the last three years.

2020-10-22

New Contravariance Episode: iPhone 12 & Apple Silicon

Where we talk about Apple's October event, and the announced iPhone 12 and HomePod mini, as well as Apple Silicon.

2020-10-08

New Contravariance Episode: Bas leaves XING

Where we talk about Swift for Windows, GUI development, ARM Macs, side projects and the recent Apple Event

2020-10-01

New Contravariance Episode: Windows, Apple Event and ARM Macs

Where we talk about Swift for Windows, GUI development, ARM Macs, side projects and the recent Apple Event

2020-09-24

New Contravariance Episode: The History of NSSpain

Where we talk about the history of NSSpain, looking for new jobs, and Bas makes an announcement.

2020-09-17

New Contravariance Episode: iOS is Hard

Where we talk about iOS development being not so easy, blogging, and in-app purchases.

2020-09-10

New Contravariance Episode: CodeConf

Where Pawel introduces his app CodeConf and we talk about how he managed to work on this side project.

2020-07-21

New Contravariance Episode: WWDC 2020

Where Bas has moved to Spain and Benedikt has been spending time at his mom's... and discussing WWDC.

2020-06-17

A touch of Combine

A simple way of introducing Combine into your codebase

2020-06-15

The Hyperdeck Tech Stack

A brief overview of the hyperdeck tech stack, including SwiftUI & Rust

2020-06-11

Hyperdeck Beta 2

Beta 2 of hyperdeck just launched. Including a first step towards interactive presentations.

2020-06-11

New Contravariance Episode: Revealing Benedikt's Side Project

Where Benedikt finally reveals the application he's been working on in the last months.

2020-05-14

New Contravariance Episode: The Star Wars Babka Computer Delivery

Where Benedikt is anticipating a new computer, and Bas is anticipating remote conferences. And Star Wars is anticipating Bas... and chocolate chip babka!

2020-04-16

New Contravariance Episode: Clearly my home screen is better than yours

In which we talk about all things remote, like organizing a meetup, conference, or work. We also take a look at our perfectly normal homescreens. Bene is considering building a silent computer. All this with Pedro Carrasco!

2020-03-19

New Contravariance Episode: What is a CNAME Again?

We talk about open source projects and contributing to them. Where Bas forgets what a CNAME is, and Benedikt has to look it up for him.

2020-03-05

New Contravariance Episode: Chocolate, Time, and Swift Scripts. Your Move, Elon.

Benedikt asks himself 'what door?' watching Westworld, and Bas has a surprise!

2020-02-14

New Contravariance Episode: Ink, Plot, Publish and More - With Special Guest John 'Paul Hudson' Sundell

Where Bas remembers his open source projects and previous talks, Benedikt finally shares more on his secret project... and sets someone up for an interesting challenge, our dear guest, John 'Paul Hudson' Sundell.

2020-01-14

New Contravariance Episode: Live from CocoaHeads Hamburg

Where Bas still has no reason to buy new hardware, and Benedikt learned more about unicode than he wanted to. And both have an exciting year coming up. Live from CocoaHeads Hamburg on January 9, 2020.

[ 2019 ]
18 · posts
2019-12-19

New Contravariance Episode: Donny Wals' Advent of Swift, Disney+ and other things - A special Christmas Episode

We talk with Donny Wals on his Advent of Swift project, Disney+, working on an SDK and more.

2019-11-21

New Contravariance Episode: MacBooks, AirPods Pro, GitHub Mobile & SwiftUI

We're talking about the new 16' MacBook, the new AirPods Pro, GitHub's new Mobile app, SwiftUI learnings and more.

2019-10-17

New Contravariance Episode: SwiftConf, NSSpain, mobiconf, and FrenchKit - With Special Guest Antoine van der Lee

We're giving an overview over some of Europe's awesome iOS conferences in the last months.

2019-08-30

New Contravariance Episode: Our thoughts on Xcode 11

We're talking about our initial Xcode 11 thoughts as well as the joy of just using Apple's latest tech in a brand new project.

2019-08-13

New Contravariance Episode: Implementing SwiftUI on top of UIKit in iOS 12

We're talking about AwfulUI, a project which aims to re-implement the syntax of SwiftUI on top of UIKit in order to support iOS 12 or lower

2019-08-08

New Contravariance Episode: Hackintoshes, new Apple Hardware, and an explanation of why VIM is cool

In which Benedikt explains Vim to Bas, new Apple hardware apparently is(n't) interesting, and interesting projects.

2019-07-11

New Contravariance Episode: The Static Catalyst iPad Window Refactoring Project Conference

We talk about the Swift Island and Swift Aveiro conferences, static site generators and puzzles in our personal projects, iPadOS windowing support, Catalyst woes, refactoring tools and Swift UI guides

2019-06-20

New Contravariance Episode: WWDC: Better Late Than Never

We start talking about WWDC announcements, notably SwiftUI and iPadOS

2019-05-24

New Contravariance Episode: Not Work

We talk about our interests outside of work, like watchmaking, electronic music, coffee and chocolate.

2019-05-10

New Contravariance Episode: WWDC Tips and Rumors

Benedikt and Bas talk about the upcoming WWDC, how to make the most out of the conference, and what to expect. Also, career changes!

2019-04-04

New Contravariance Episode: let substring = string[string.index(string.startIndex, offsetBy: 5) ..< string.index(string.startIndex, offsetBy: 15)]

try! Swift Tokyo, Swift 5, Strings in Swift, Apple Subscriptions, and picks of the week

2019-03-21

New Contravariance Episode: Technical Writing

On technical writing and editing, finding unused code, and more.

2019-03-17

Using protocol composition to untangle your codebase

A simple way to untangle your codebase via protocols. Particularly useful for project configurations.

2019-03-07

New Contravariance Episode: Putting Pieces in Place

Solving puzzles, algorithms, macros, and Swift 5.

2019-02-24

Cleaner Classes with Structs and Tuples

An easy way to add more structure to your classes by leveraging structs and enums

2019-02-21

New Contravariance Episode: application(_:willContinueUserActivityWithType:)

Talking about more conferences (because of course), iPad, and cool projects we've seen on the web.

2019-02-01

Mobile Language Benchmarks

I wrote this benchmark for a talk at Mobilization Conf 2018. It tries to compare modern languages aspiring to become go-to solutions for sharing code between iOS, Android and possibly other targets. The benchmark implements several short problems in Swift, Rust and Kotlin Native, C++ and C.

2019-01-31

New Contravariance Episode: Xcode 10.2 beta 1 and the Swift Community Podcast

Starting fresh into the new year with a discussion on Xcode 10.2 beta 1, the Swift Community Podcast, and more

[ 2018 ]
07 · posts
2018-11-08

New Contravariance Episode: Refactoring Across a Large Code Base

A discussion on how we recently refactored our networking stack at XING, from planning to implementation. And emoji.

2018-10-18

New Contravariance Episode: Paul 'John Sundell' Hudson

An interview with Paul Hudson about his career, talking about journalism, books, Venn diagrams, conference speaking and diversity.

2018-10-04

New Contravariance Episode: Conferences

A general discussion around iOS conferences: Why you should go there, what you should do there, and what to do if you want to give a talk. Also a short report on two conferences we just attended: NSSpain and Try Swift.

2018-09-06

New Contravariance Episode: A Philosophical Treatise on the Definition of Pro

Bas and Benedikt discuss what a 'Pro' device represents at Apple, what a Mac Mini Pro could be, and why the Touchbar should not be in a Pro device.

2018-08-23

New Contravariance Episode: The Most Awful Static Site Engine

Where Bas and Benedikt discuss iPad, our awful static site engine, Swift scripting, Strings in Swift and Zelda.

2018-08-13

New Contravariance Episode: applicationDidFinishLaunching:

Where Bas and Benedikt discuss MacBook Keyboards, Swift's eighth birthday, Swift conferences, Mac Development, and Peanut-Butter Pizza.

2018-05-03

Expanding Swift's Reach

How can we as a community help expanding the reach of Swift

[ 2017 ]
02 · posts
2017-10-08

Taming SourceKitService for Less Xcode Memory Consumption

Taming SourceKitService for less Xcode memory consumption

2017-09-30

Value Types for Simple Difference Detection

Utilize value types to quickly determine a differences between two sets of data

[ 2016 ]
06 · posts
2016-07-15

Data in Swift 3 parsing a Doom WAD File

Swift 3 replaces NSData with the Data value type. Implement a Doom Wad file parser with the new Data type to understand the differences.

2016-04-28

SwiftWatch

Introducing SwiftWatch, a place to share links to interesting Swift resources like tutorials, blog posts, GitHub projects or more.

2016-04-23

Raw value initializers for enums with associated types

Once you add associated types to an enum the task of creating instances quickly becomes very repetitive. See how a simple trick can greatly simplify this

2016-04-14

Force optionals in multi-unwrapped 'guard let' or 'if let'

Mixing optional and non-optional functions in a guard is impossible and requires breaking up the lines. Here's a neat solution on how to circumvent this.

2016-03-29

Three tips for concise Swift using the Guard statement

Three quick examples for how you can use guard to write shorter and simpler code

2016-02-02

Hirundo: Comfortably follow Swift Mailing Lists on OSX

Hirundo is a Mac App for reading the Swift mailing lists like Swift-Evolution or Swift-Dev. You can even bookmark messages of threads because they contain important information

[ 2015 ]
06 · posts
2015-12-08

Swift Package Manager: Create and Use a X11 package on Linux

A tutorial on how to create a Swift Package for X11 on Linux and use it to write a simple X11 app

2015-09-30

Getting your iPhone 6s Chip Foundry from Swift

This quickly explains how you use private apis from Swift in order to figure out the manufacturer of your fancy new iPhone 6S CPU

2015-08-25

Optional throw via try? in Swift 2

Swift 2.0 includes a new way of handling exceptions via the try? keyword. This is a quick post to explain the basics, and why this is cool.

2015-07-18

CoreValue: Lightweight Framework for using Core Data with Value Types

CoreValue is a lightweight wrapper framework around Core Data. It takes care of boxing value types into Core Data objects and unboxing Core Data objects into value types. It also contains simple abstractions for easy querying, updating, saving, and deleting.

2015-06-19

Using try / catch in Swift with asynchronous closures

Swift's `try` / `catch` error handling is great. However, you can't use it in an async context. This article briefly explains which options you have if you intend to use Error Handling asynchronously

2015-06-17

Generic method overloading by protocol in Swift

See how you can even overload methods in a generic manner by using protocols

[ 2014 ]
03 · posts
2014-06-17

Understanding the powerful Switch statement in Swift

2014-06-13

Swift optionals made simple

With Swift, Apple introduced several new programming languages features to iOS and Mac developers. One of them are Optionals. This is a simple introduction into Optionals that glosses over details to make it more approachable.

2014-06-08

Using @autoclosure to write a Swift syntax extension

Swift's @autoclosure allows to extend the Swift syntax in fantastic ways. Observe how we re-implement the `cond` function from Lisp