Alex Ozun
@alexozun.com
📤 898
📥 861
📝 159
Staff iOS Engineer |
https://swiftology.io
Based in 🇬🇧 Born in 🇺🇦 All opinions are my own
pinned post!
I'm new to
#bluesky
, and since I'll likely never meet most of my new connections here IRL, to put a face to a name I thought I'd share a video of this talk I gave recently. It's the highest fidelity representation of myself I currently have online.
#swiftlang
#xcode
#functionalprogramming
loading . . .
Type-Driven Design with Swift - Alex Ozun - SwiftCraft 2024
YouTube video by Swift Craft
https://youtu.be/cCZ00b_RNyc?si=PaweOjrxR2zt7F2O
about 1 year ago
2
26
2
Hey friend, I've got a new article on Swift Testing for you! 📝 I share my insights on avoiding common pitfalls of Parameterized Tests, gained from overseeing the migration of tens of thousands of tests from XCTest to Swift Testing.
swiftology.io/articles/pit...
#swiftlang
#swift
loading . . .
Pitfalls of Parameterized Tests | Swiftology
In this article, I share my experience adopting Swift Testing at scale and the lessons I learned about **Parameterized Tests**, including five common pitfalls teams may encounter. I also recommend bes...
https://swiftology.io/articles/pitfalls-of-parameterized-tests/
27 days ago
0
7
1
Hey look what just dropped! A recording of my recent talk from iOSKonf25! The recording didn't capture the stage camera's feed, but that's totally fine because I have a radio face anyway 🫥
youtu.be/AnUS_zmSnVg
#swiftlang
#swiftui
#ios
loading . . .
Make Invalid States Impossible in Your App | iOSKonf25 | Alex Ozun
YouTube video by iOSKonf
https://youtu.be/AnUS_zmSnVg
about 2 months ago
0
5
2
reposted by
Alex Ozun
Matt Massicotte
6 months ago
Finally got around to watching
@alexozun.com
‘s talk here. Truly fascinating stuff, and I learned something about non-Copyable types too!
youtu.be/qPHjDlqHsUQ?...
loading . . .
Typestate - the new Design Pattern in Swift 5.9 | Swift Heroes 2024 Talk
YouTube video by Swift Heroes
https://youtu.be/qPHjDlqHsUQ?si=UbjdCDB_QrbtXPwP
2
13
3
RIP Google's
#Flutter
team who will have to replicate the Liquid Glass look and feel for their Cupertino widgets.
#wwdc
6 months ago
0
11
2
reposted by
Alex Ozun
Oliver Binns
7 months ago
This is the second time I’ve seen
@alexozun.com
’s talk on making invalid state impossible and it’s a really cool approach to improved software safety!
1
4
1
Doug Gregor takes the stage of
@swiftcraft.bsky.social
with a keynote talk On Progressive Disclosure in
#swiftlang
7 months ago
1
2
0
I had a blast presenting at
#iOSKonf25
this week! I heard great things about this conference and I now can say that the praise was well-deserved! It was pretty scary to be on the lineup with so many accomplished engineers and speakers, but the vibe was really good and everyone was easy to be around.
7 months ago
0
3
1
reposted by
Alex Ozun
Daniel Saidi
7 months ago
Next up:
@alexozun.com
on how to make invalid states impossible in your app.
0
3
1
The secret to introducing people to scary-sounding concepts like Free Monads in
#swiftlang
is in never mentioning these two words until the very end of the presentation.
8 months ago
3
24
1
Tiers of Swift development sins by Pietro Messineo at
@swiftheroes.bsky.social
8 months ago
0
2
0
Good software design is about adding the necessary amount of indirection without compromising performance too much. Good performance optimization is about removing unnecessary indirection without compromising software design too much.
9 months ago
1
4
0
Now, that it's official, I'm sharing my 2025
#swiftlang
conference schedule, so far: 1. Swift Heroes (April 8-9): Controlling Side Effects with Swift. 2. iOSKonf (May 13-15): Make invalid state impossible in your apps. 3. Swift Craft (May 20-21): Swift Abstractions Demystified.
9 months ago
4
7
0
Feedback like this is what keeps me going (even at my snail's pace 😅)
add a skeleton here at some point
9 months ago
0
8
0
My 2025
#swiftlang
conference schedule is shaping up 🗓️ This year, I'm bringing not one, not two, but *three* brand new talks to the community! So far, these are confirmed: 1. Controlling side effects with Swift 2. Make invalid states impossible in your app 3. Swift abstractions demystified
10 months ago
2
13
0
Caffeinated and ready to learn how to build fast and efficient apps from
#Apple
engineers at the new Dev Center in Battersea Power Plant.
10 months ago
0
6
0
I've been putting off reading
#brandonsanderson
books for a few years, but finally got to them. Now that I've finished the Mistborn trilogy and started the Stormlight Archive, he's quickly becoming my favourite modern fantasy author - on par with Sapkowski (while having a more pleasant personality).
10 months ago
0
3
0
It's great to see
#Apple
bringing these in-person sessions to local dev centers around the world. I look forward to hearing about "Building faster and more efficient apps" in two weeks.
10 months ago
0
4
0
My talk from Swift Heroes 2024 has just been published. If you're interested in Noncopyable types, type-level programming, and State Machines, check it out. I had a lot of fun researching Typestate programming in
#swiftlang
, and I'm happy with how this talk turned out.
youtu.be/qPHjDlqHsUQ
loading . . .
Typestate - the new Design Pattern in Swift 5.9 | Swift Heroes 2024 Talk
YouTube video by Swift Heroes
https://youtu.be/qPHjDlqHsUQ
10 months ago
3
19
2
I'm a weird type of an application developer because when it comes to customer support I absolutely hate any sort of automation or self-service like chat bots or phone robots. If I'm performing a BAU operation, like changing a PIN number, I just want a button that's directly hooked up to API.
11 months ago
1
1
0
It was nice visiting
#apple
developer center in Singapore the other day
11 months ago
0
12
0
Yes, they really flew me all the way from London to Singapore just so I could show a photo of an elephant to
#iosconfsg
audience.
11 months ago
1
7
0
Heading out to my first conference of the year at
#iOSConfSG
If you happen to be around, drop me a message and let's have a coffee ☕️ P.S. I prefer to travel light and only pack essentials.
11 months ago
0
8
0
Holy smokes🤯! I think I was just able to create a proof-of-concept of
#swiftlang
effect system that allows to write direct style imperative code and then test it WITHOUT mocks by stepping through each suspension point and directly feeding input arguments to effects (e.g. readline).
12 months ago
1
7
1
I'm having a "do I even know Swift?" moment. I understand that
#swiftlang
generics are invariant, i.e. F<Dog> is not a subtype of F<Animal>, even though Dog is a subtype of Animal. But some stdlib generic types like Optional and Array do track subtyping (see pic), while others, like Result, don't.
12 months ago
3
15
1
I like this Onboarding UX from Mozi where each step reveals a new tab on the tab bar
#ios
#ux
loading . . .
12 months ago
0
4
0
A/B testing is one of the most overused and misused engineering techniques ever. And what's worse, the majority of dev teams are pretty oblivious to the immense complexity even the simplest A/B test brings to their mobile systems. It's crazy how we got here.
youtu.be/cTbTZ-uShr8
#ios
#swiftlang
loading . . .
Hidden engineering challenges of A/B Testing - Anastasia Petrova | SwiftLeeds 2024
YouTube video by SwiftLeeds
https://youtu.be/cTbTZ-uShr8?si=V-xybxJuifq9O99w
12 months ago
1
7
1
A procrastinating conference speaker's equivalent of an indie dev "spending an entire day designing the app icon before writing a single line of code" is "spending an entire day designing the title slide before adding any content." And I'll redo the title slide 15 mins before the talk anyhow. Twice
12 months ago
0
4
0
With
#swiftlang
It's easy to forget that the diff between a point-free and pointed styles of function argument passing is not just syntactic but semantic. It's normal to consider these to be equivalent: 1. [1, 2].map(String.init) 2. [1, 2].map { String($0) } But we shouldn't forget that: 1/4
12 months ago
2
12
1
Loving this "unlock, generously" paywall option 😁
about 1 year ago
0
3
0
Honestly,
craftinginterpreters.com
is the funniest technical book I read in a while.
@munificent.bsky.social
writing style is 😙🤌
about 1 year ago
1
12
0
A problematic little
#swiftlang
pattern I often see is "unwrap-then-nullify" for optional values that hold some temp state. This oft comes up when dealing with local caches or scrollOffsets or in-flight tasks, etc. Forgetting to nullify a value to "reset" state is a common mistake. Use take method.
loading . . .
about 1 year ago
3
28
2
This might be my favorite new warning in
#Xcode
16! I totally missed SE-0364, so it was a pleasant surprise to see that
#swiftlang
compiler nows warn about potentially conflicting protocol conformances. This is super helpful for any highly-modularized project (aka freaking all of them these days!).
about 1 year ago
1
7
0
It's my annual learning week at Amex, and I'm building a small programming language using
#swiftlang
, following a fantastic book
craftinginterpreters.com
by
@munificent.bsky.social
Super pumped about this challenge, I already know I'm gonna have a great time!
loading . . .
Crafting Interpreters
https://craftinginterpreters.com
about 1 year ago
2
13
1
Semi-accidentally found Slava Pestov's book "Compiling Swift Generics". It looks demanding, but def not as dense as a typical compilers textbook. And being based on
#swiftlang
, the lang I more/less know, gives me some hope. This might be my next big reading project
download.swift.org/docs/assets/...
about 1 year ago
2
14
2
Last week, our
#iOS
engineering team at
#amex
in London had the privilege of hosting a
#SwiftUI
Workshop by the highly regarded
objc.io
team,
@chriseidhof.bsky.social
and Florian Kugler.
about 1 year ago
4
26
2
Good read! Though, some points went over my head since I haven't had a chance to dig deep into Swift 6. I'll take another pass, but here are my immediate thoughts:
add a skeleton here at some point
about 1 year ago
1
1
0
Blue sky is literally on our flag! 🇺🇦 Ukrainian
#swiftlang
programmers, join this starter pack to quickly connect.
add a skeleton here at some point
about 1 year ago
17
18
4
Dunno how this information evaded me this long, but I learned from
@chriseidhof.bsky.social
the other day that you can interact with backgrounded apps without bringing them to foreground by CMD-clicking. My life will never be the same.
#macOS
#mac
loading . . .
about 1 year ago
5
50
12
Ok, this looks like a must-read with my tomorrow's morning ☕️
github.com/hborla/swift...
#swiftlang
loading . . .
https://github.com/hborla/swift-evolution/blob/approachable-concurrency-vision/visions/approachable-concurrency.md
about 1 year ago
1
11
2
reposted by
Alex Ozun
Point-Free
about 1 year ago
We’ve covered countless topics on Point-Free, but this year’s deep dive into Equatable/Hashable was a standout favorite of our viewers. Master these protocols and learn why classes should (almost) never conform based on the data they hold. 😳
www.pointfree.co/blog/posts/1...
0
10
5
So
#bluesky
has Starter Packs. What about Starter Packs of Starter Packs? A Higher-Order Starter Pack, if you will?
about 1 year ago
0
1
0
Had a great time at
@nslondon.com
event at
#Apple
shiny new office at Battersea Power Station. The first photo is mine, but the second is from the internet, the security people looked way too intimidating for me to break the no-photo rule 👮♂️ Great talks by
@oliverbinns.co.uk
and
@beccais.online
about 1 year ago
1
18
1
Feedback like this is what keeps me going ☺️
add a skeleton here at some point
about 1 year ago
1
8
0
Maybe a nitpick, but I dislike that Swift Testing snippet defaults to `async throws` test. I prefer starting with the most restrictive type and extend it as needed. I only noticed half my tests were needlessly async throwing hours later, bc the compiler was silent.
#swiftlang
#swifttesting
#xcode
about 1 year ago
4
14
0
I'm new to
#bluesky
, and since I'll likely never meet most of my new connections here IRL, to put a face to a name I thought I'd share a video of this talk I gave recently. It's the highest fidelity representation of myself I currently have online.
#swiftlang
#xcode
#functionalprogramming
loading . . .
Type-Driven Design with Swift - Alex Ozun - SwiftCraft 2024
YouTube video by Swift Craft
https://youtu.be/cCZ00b_RNyc?si=PaweOjrxR2zt7F2O
about 1 year ago
2
26
2
I've never built a complex
#macOS
app before, and planning to work on a document-based app idea (think, Keynote) over the Christmas break. Any must-see/read recommendations to avoid common macOS newbie pitfalls? Stack is
#swiftlang
#swiftui
#swiftdata
(maybe?)
#textkit
(likely)
about 1 year ago
4
5
0
Hullo
#bluesky
! Any
#swiftlang
programmers here wanting to connect?
about 1 year ago
10
25
2
you reached the end!!
feeds!
log in