swiftrocks.com 14. 10. 2024Working at startups vs large companies – swiftrocks.com 1. 9. 2024My process for learning new languages – swiftrocks.com 28. 6. 2024What are mobile release engineering teams and when do you need one? (Runway) – swiftrocks.com 17. 6. 2024Recommended WWDC24 Sessions – swiftrocks.com 14. 3. 2024Using @_silgen_name to forward declare functions in Swift and improve build times – swiftrocks.com 3. 3. 2024Software engineering book recommendations – swiftrocks.com 22. 2. 2024What the hell are passkeys? (Runway) – swiftrocks.com 28. 12. 2023There is no right or wrong in software engineering – swiftrocks.com 15. 12. 2023What even is code signing in iOS? (Runway) – swiftrocks.com 11. 12. 2023How I'm using ChatGPT for software engineering – swiftrocks.com 28. 9. 2023How async/await works internally in Swift – swiftrocks.com 7. 9. 2023Faster iOS performance debugging with ETTrace – swiftrocks.com 1. 6. 2023Performance Trace Profiles in iOS: Debugging performance issues you can't reproduce – swiftrocks.com 20. 10. 2022Thoughts on SwiftUI vs UIKit – swiftrocks.com 12. 9. 2022What's the 'any' keyword? Understanding Type Erasure in Swift – swiftrocks.com 31. 8. 2022Architecting iOS apps for fast build times (Runway) – swiftrocks.com 18. 7. 2022Are your frameworks bulletproof? – swiftrocks.com 15. 7. 2022Mobile Platform Teams (Runway) – swiftrocks.com 8. 7. 2022Using a Macbook Pro as a gaming console – swiftrocks.com 12. 6. 2022Sentiment Analysis with NSTagger: Ranking popular subreddits by the negativity/hostility of its comments – swiftrocks.com 26. 5. 2022Managing Provisioning Profiles as your team grows (Runway) – swiftrocks.com 24. 5. 2022Understanding Certificates and iOS Provisioning Profiles – swiftrocks.com 28. 4. 2022How and why to think about mobile app versioning (Runway) – swiftrocks.com 14. 3. 2022Avoiding release anxiety, part II (Runway) – swiftrocks.com 8. 3. 2022Avoiding release anxiety, part I (Runway) – swiftrocks.com 9. 2. 2022Merge queues: An intro for mobile engineers (Runway) – swiftrocks.com 25. 1. 2022How successful mobile teams release apps at scale (Runway) – swiftrocks.com 6. 1. 2022Focus on concepts, not approaches – swiftrocks.com 3. 1. 2022Future of SwiftRocks – swiftrocks.com 22. 11. 2021Detecting Broken Constraints in Swift – swiftrocks.com 1. 11. 2021How To Solve Any iOS Crash Ever – swiftrocks.com 26. 10. 2021Enabling Module Stability in Swift Package Manager Projects – swiftrocks.com 13. 10. 2021Unit Testing Weak References / Retain Cycles in Swift – swiftrocks.com 28. 9. 2021Solving CPU Usage Crashes with Xcode's Energy Organizer – swiftrocks.com 20. 9. 2021How AsyncSequence works internally in Swift – swiftrocks.com 31. 8. 2021Reverse engineering a 5 year old Xcode issue – swiftrocks.com 17. 8. 2021Swift's Documentation Markup – swiftrocks.com 3. 8. 2021StaticString, and how it works internally in Swift – swiftrocks.com 27. 7. 2021Extending / Creating Combine Publishers the Right Way – swiftrocks.com 20. 7. 2021Benchmarking Swift Code Properly with Attabench – swiftrocks.com 6. 7. 2021How Actors Work Internally in Swift – swiftrocks.com 22. 6. 2021Creating 3D Models from Photographs with RealityKit in Swift – swiftrocks.com 18. 5. 2021How necessary are the programming fundamentals? – swiftrocks.com 11. 5. 2021Thread Safety in Swift – swiftrocks.com 12. 4. 2021Adding Intelligent Code Generation to Swift Projects with SourceKit – swiftrocks.com 6. 4. 2021Creating a licensing system for paid apps in Swift – swiftrocks.com 2. 3. 2021Be careful with Obj-C bridging in Swift – swiftrocks.com 22. 12. 2020Understanding @inlinable in Swift – swiftrocks.com 24. 11. 2020DispatchSource: Detecting changes in files and folders in Swift – swiftrocks.com 29. 9. 2020How Swift API Availability Works Internally – swiftrocks.com 15. 9. 2020UI Testing Deeplinks and Universal Links in iOS – swiftrocks.com 25. 8. 2020Improving Observer Pattern APIs in Swift With Weak Collections – swiftrocks.com 11. 8. 2020App Attest: How to prevent an iOS app's APIs from being abused – swiftrocks.com 21. 7. 2020Entry Points in Swift: How @main and @UIApplicationMain work internally – swiftrocks.com 14. 7. 2020Adapting Objective-C APIs to Swift with NS_REFINED_FOR_SWIFT – swiftrocks.com 30. 6. 2020Creating Debug Menus in Swift with UIContextMenuInteraction – swiftrocks.com 23. 6. 2020How to create Widgets in iOS 14 in Swift – swiftrocks.com 16. 6. 2020Benefits of using throwing functions (try) - Swift's most underrated feature? – swiftrocks.com 12. 5. 2020How Random Numbers Work In Swift – swiftrocks.com 7. 5. 2020iOS Responder Chain: UIResponder, UIEvent, UIControl and uses – swiftrocks.com 5. 5. 2020Unit Testing Preprocessor Macros in Swift – swiftrocks.com 28. 4. 2020Discovering which DispatchQueue a method is running on – swiftrocks.com 14. 4. 2020Weak Dictionary Values in Swift – swiftrocks.com 31. 3. 2020Understanding Swift's ObjectIdentifier – swiftrocks.com 24. 3. 2020Useful Global Swift Functions – swiftrocks.com 18. 3. 2020How Collection Diffing works in Swift – swiftrocks.com 5. 2. 2020Swift Codable: Decoding / Encoding With Context – swiftrocks.com 23. 1. 2020Reducing iOS Build Times by using Interface Modules – swiftrocks.com 23. 1. 2020Reducing iOS Build Times by using Interface Modules – swiftrocks.com 13. 1. 2020How Hashable works in Swift – swiftrocks.com 2. 1. 2020Using Type Erasure to Build a Dependency Injecting Routing Framework in Swift – swiftrocks.com 23. 12. 2019Faster Array Operations With CollectionOfOne in Swift – swiftrocks.com 3. 12. 2019How OptionSet works inside the Swift Compiler – swiftrocks.com 5. 11. 2019NSCopying uses in Swift – swiftrocks.com 25. 10. 2019Swift's Sequence Inside The Compiler: How for loops work internally – swiftrocks.com 15. 10. 2019Building a Face Detecting Robot with URLSessionWebSocketTask, CoreML, SwiftUI and an Arduino – swiftrocks.com 29. 9. 2019Using SIMD Vector Types in Swift – swiftrocks.com 4. 9. 2019Timsort and Introsort: Swift's Sorting Algorithms – swiftrocks.com 8. 8. 2019Advanced lldb tricks for Swift - Injecting and changing code on the fly – swiftrocks.com 17. 7. 2019Swift ExpressibleBy protocols: What they are and how they work internally in the compiler – swiftrocks.com 26. 6. 2019Useful (and obscure!) Foundation types in Swift – swiftrocks.com 10. 6. 2019Understanding Opaque Return Types in Swift – swiftrocks.com 4. 6. 2019Inside SwiftUI's Declarative Syntax's Compiler Magic – swiftrocks.com 22. 5. 2019autoreleasepool uses in Swift – swiftrocks.com 7. 5. 2019Avoiding Release Anxiety 2: On the importance of creating a code Style Guide – swiftrocks.com 20. 4. 2019Avoiding Release Anxiety 1: Block-based UI Testing in Swift – swiftrocks.com 20. 2. 2019Adding iOS Home Shortcuts to Specific Parts of An App in Swift – swiftrocks.com 17. 12. 2018Avoiding Callback Hell in Swift – swiftrocks.com 6. 12. 2018How @dynamicMemberLookup Works Internally in Swift (+ Creating Custom Swift Attributes) – swiftrocks.com 14. 11. 2018How Never Works Internally in Swift – swiftrocks.com 29. 10. 2018What's .self, .Type and .Protocol? Understanding Swift Metatypes – swiftrocks.com 26. 10. 2018Writing Custom Pattern Matching in Swift – swiftrocks.com 26. 10. 2018Writing Cleaner View Code in Swift By Overriding loadView() – swiftrocks.com 26. 10. 2018Unowned Properties in Swift – swiftrocks.com 26. 10. 2018Understanding DispatchQueues – swiftrocks.com 26. 10. 2018The Forbidden @inline Attribute in Swift – swiftrocks.com 26. 10. 2018Swift Associated Types With Default Values – swiftrocks.com 26. 10. 2018Running Other Apps' Siri Shortcuts Through Deep Links in Swift – swiftrocks.com 26. 10. 2018Memory Management and Performance of Value Types – swiftrocks.com 26. 10. 2018Lazy Sequences in Swift And How They Work – swiftrocks.com 26. 10. 2018How CaseIterable Works Internally in Swift – swiftrocks.com 26. 10. 2018Detecting TouchID fingerprint/FaceID face changes – swiftrocks.com 26. 10. 2018Competitive Programming With Swift – swiftrocks.com 7. 11. 2016iOS Security: Reverse Engineering Messenger's Chat Bubbles – swiftrocks.com
14. 10. 2024Working at startups vs large companies – swiftrocks.com 1. 9. 2024My process for learning new languages – swiftrocks.com 28. 6. 2024What are mobile release engineering teams and when do you need one? (Runway) – swiftrocks.com 17. 6. 2024Recommended WWDC24 Sessions – swiftrocks.com 14. 3. 2024Using @_silgen_name to forward declare functions in Swift and improve build times – swiftrocks.com 3. 3. 2024Software engineering book recommendations – swiftrocks.com 22. 2. 2024What the hell are passkeys? (Runway) – swiftrocks.com 28. 12. 2023There is no right or wrong in software engineering – swiftrocks.com 15. 12. 2023What even is code signing in iOS? (Runway) – swiftrocks.com 11. 12. 2023How I'm using ChatGPT for software engineering – swiftrocks.com 28. 9. 2023How async/await works internally in Swift – swiftrocks.com 7. 9. 2023Faster iOS performance debugging with ETTrace – swiftrocks.com 1. 6. 2023Performance Trace Profiles in iOS: Debugging performance issues you can't reproduce – swiftrocks.com 20. 10. 2022Thoughts on SwiftUI vs UIKit – swiftrocks.com 12. 9. 2022What's the 'any' keyword? Understanding Type Erasure in Swift – swiftrocks.com 31. 8. 2022Architecting iOS apps for fast build times (Runway) – swiftrocks.com 18. 7. 2022Are your frameworks bulletproof? – swiftrocks.com 15. 7. 2022Mobile Platform Teams (Runway) – swiftrocks.com 8. 7. 2022Using a Macbook Pro as a gaming console – swiftrocks.com 12. 6. 2022Sentiment Analysis with NSTagger: Ranking popular subreddits by the negativity/hostility of its comments – swiftrocks.com 26. 5. 2022Managing Provisioning Profiles as your team grows (Runway) – swiftrocks.com 24. 5. 2022Understanding Certificates and iOS Provisioning Profiles – swiftrocks.com 28. 4. 2022How and why to think about mobile app versioning (Runway) – swiftrocks.com 14. 3. 2022Avoiding release anxiety, part II (Runway) – swiftrocks.com 8. 3. 2022Avoiding release anxiety, part I (Runway) – swiftrocks.com 9. 2. 2022Merge queues: An intro for mobile engineers (Runway) – swiftrocks.com 25. 1. 2022How successful mobile teams release apps at scale (Runway) – swiftrocks.com 6. 1. 2022Focus on concepts, not approaches – swiftrocks.com 3. 1. 2022Future of SwiftRocks – swiftrocks.com 22. 11. 2021Detecting Broken Constraints in Swift – swiftrocks.com 1. 11. 2021How To Solve Any iOS Crash Ever – swiftrocks.com 26. 10. 2021Enabling Module Stability in Swift Package Manager Projects – swiftrocks.com 13. 10. 2021Unit Testing Weak References / Retain Cycles in Swift – swiftrocks.com 28. 9. 2021Solving CPU Usage Crashes with Xcode's Energy Organizer – swiftrocks.com 20. 9. 2021How AsyncSequence works internally in Swift – swiftrocks.com 31. 8. 2021Reverse engineering a 5 year old Xcode issue – swiftrocks.com 17. 8. 2021Swift's Documentation Markup – swiftrocks.com 3. 8. 2021StaticString, and how it works internally in Swift – swiftrocks.com 27. 7. 2021Extending / Creating Combine Publishers the Right Way – swiftrocks.com 20. 7. 2021Benchmarking Swift Code Properly with Attabench – swiftrocks.com 6. 7. 2021How Actors Work Internally in Swift – swiftrocks.com 22. 6. 2021Creating 3D Models from Photographs with RealityKit in Swift – swiftrocks.com 18. 5. 2021How necessary are the programming fundamentals? – swiftrocks.com 11. 5. 2021Thread Safety in Swift – swiftrocks.com 12. 4. 2021Adding Intelligent Code Generation to Swift Projects with SourceKit – swiftrocks.com 6. 4. 2021Creating a licensing system for paid apps in Swift – swiftrocks.com 2. 3. 2021Be careful with Obj-C bridging in Swift – swiftrocks.com 22. 12. 2020Understanding @inlinable in Swift – swiftrocks.com 24. 11. 2020DispatchSource: Detecting changes in files and folders in Swift – swiftrocks.com 29. 9. 2020How Swift API Availability Works Internally – swiftrocks.com 15. 9. 2020UI Testing Deeplinks and Universal Links in iOS – swiftrocks.com 25. 8. 2020Improving Observer Pattern APIs in Swift With Weak Collections – swiftrocks.com 11. 8. 2020App Attest: How to prevent an iOS app's APIs from being abused – swiftrocks.com 21. 7. 2020Entry Points in Swift: How @main and @UIApplicationMain work internally – swiftrocks.com 14. 7. 2020Adapting Objective-C APIs to Swift with NS_REFINED_FOR_SWIFT – swiftrocks.com 30. 6. 2020Creating Debug Menus in Swift with UIContextMenuInteraction – swiftrocks.com 23. 6. 2020How to create Widgets in iOS 14 in Swift – swiftrocks.com 16. 6. 2020Benefits of using throwing functions (try) - Swift's most underrated feature? – swiftrocks.com 12. 5. 2020How Random Numbers Work In Swift – swiftrocks.com 7. 5. 2020iOS Responder Chain: UIResponder, UIEvent, UIControl and uses – swiftrocks.com 5. 5. 2020Unit Testing Preprocessor Macros in Swift – swiftrocks.com 28. 4. 2020Discovering which DispatchQueue a method is running on – swiftrocks.com 14. 4. 2020Weak Dictionary Values in Swift – swiftrocks.com 31. 3. 2020Understanding Swift's ObjectIdentifier – swiftrocks.com 24. 3. 2020Useful Global Swift Functions – swiftrocks.com 18. 3. 2020How Collection Diffing works in Swift – swiftrocks.com 5. 2. 2020Swift Codable: Decoding / Encoding With Context – swiftrocks.com 23. 1. 2020Reducing iOS Build Times by using Interface Modules – swiftrocks.com 23. 1. 2020Reducing iOS Build Times by using Interface Modules – swiftrocks.com 13. 1. 2020How Hashable works in Swift – swiftrocks.com 2. 1. 2020Using Type Erasure to Build a Dependency Injecting Routing Framework in Swift – swiftrocks.com 23. 12. 2019Faster Array Operations With CollectionOfOne in Swift – swiftrocks.com 3. 12. 2019How OptionSet works inside the Swift Compiler – swiftrocks.com 5. 11. 2019NSCopying uses in Swift – swiftrocks.com 25. 10. 2019Swift's Sequence Inside The Compiler: How for loops work internally – swiftrocks.com 15. 10. 2019Building a Face Detecting Robot with URLSessionWebSocketTask, CoreML, SwiftUI and an Arduino – swiftrocks.com 29. 9. 2019Using SIMD Vector Types in Swift – swiftrocks.com 4. 9. 2019Timsort and Introsort: Swift's Sorting Algorithms – swiftrocks.com 8. 8. 2019Advanced lldb tricks for Swift - Injecting and changing code on the fly – swiftrocks.com 17. 7. 2019Swift ExpressibleBy protocols: What they are and how they work internally in the compiler – swiftrocks.com 26. 6. 2019Useful (and obscure!) Foundation types in Swift – swiftrocks.com 10. 6. 2019Understanding Opaque Return Types in Swift – swiftrocks.com 4. 6. 2019Inside SwiftUI's Declarative Syntax's Compiler Magic – swiftrocks.com 22. 5. 2019autoreleasepool uses in Swift – swiftrocks.com 7. 5. 2019Avoiding Release Anxiety 2: On the importance of creating a code Style Guide – swiftrocks.com 20. 4. 2019Avoiding Release Anxiety 1: Block-based UI Testing in Swift – swiftrocks.com 20. 2. 2019Adding iOS Home Shortcuts to Specific Parts of An App in Swift – swiftrocks.com 17. 12. 2018Avoiding Callback Hell in Swift – swiftrocks.com 6. 12. 2018How @dynamicMemberLookup Works Internally in Swift (+ Creating Custom Swift Attributes) – swiftrocks.com 14. 11. 2018How Never Works Internally in Swift – swiftrocks.com 29. 10. 2018What's .self, .Type and .Protocol? Understanding Swift Metatypes – swiftrocks.com 26. 10. 2018Writing Custom Pattern Matching in Swift – swiftrocks.com 26. 10. 2018Writing Cleaner View Code in Swift By Overriding loadView() – swiftrocks.com 26. 10. 2018Unowned Properties in Swift – swiftrocks.com 26. 10. 2018Understanding DispatchQueues – swiftrocks.com 26. 10. 2018The Forbidden @inline Attribute in Swift – swiftrocks.com 26. 10. 2018Swift Associated Types With Default Values – swiftrocks.com 26. 10. 2018Running Other Apps' Siri Shortcuts Through Deep Links in Swift – swiftrocks.com 26. 10. 2018Memory Management and Performance of Value Types – swiftrocks.com 26. 10. 2018Lazy Sequences in Swift And How They Work – swiftrocks.com 26. 10. 2018How CaseIterable Works Internally in Swift – swiftrocks.com 26. 10. 2018Detecting TouchID fingerprint/FaceID face changes – swiftrocks.com 26. 10. 2018Competitive Programming With Swift – swiftrocks.com 7. 11. 2016iOS Security: Reverse Engineering Messenger's Chat Bubbles – swiftrocks.com