41554 blogs · [ { "id": "01a087da-ccdf-7175-8a0d-4205a66bacee", "title": "Migrating to Swift 6 by keeping code on Swift 5 forever", "url": "https://samhuri.net/posts/2026/07/migrating-to-swift-6-by-keeping-code-on-swift-5-forever", "published_at": "2026-07-23T04:38:40+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a6c1d22a", "title": "→ Swift Concurrency Lab at Swift Rockies", "url": "https://samhuri.net/posts/2026/06/swift-concurrency-lab-next-month", "published_at": "2026-06-22T02:24:29+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a7021847", "title": "Type-safe notifications and async stream monitoring with Swift 6", "url": "https://samhuri.net/posts/2025/06/type-safe-notifications-and-async-stream-monitoring-with-swift-6", "published_at": "2025-06-06T21:27:11+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a708a484", "title": "Reverse-engineering the photos-navigation URL scheme on iOS", "url": "https://samhuri.net/posts/2024/04/photos-navigation-url-scheme", "published_at": "2024-04-19T03:08:02+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a713ef46", "title": "A nil-coalescing alternative for Swift", "url": "https://samhuri.net/posts/2017/10/swift-optional-or", "published_at": "2017-10-06T21:20:13+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a7e35590", "title": "Easy Optimization Wins", "url": "https://samhuri.net/posts/2016/08/easy-optimization-wins", "published_at": "2016-08-10T17:30:49+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a861a921", "title": "A Git Pre-commit Hook for iOS", "url": "https://samhuri.net/posts/2016/08/ios-git-pre-commit-hook", "published_at": "2016-08-04T16:38:03+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a8bc6ea2", "title": "Tales of PRK Laser Eye Surgery", "url": "https://samhuri.net/posts/2016/04/tales-of-prk-laser-eye-surgery", "published_at": "2016-04-12T03:52:53+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a94d9107", "title": "→ Reduce the cognitive load of your code", "url": "https://samhuri.net/posts/2016/03/reduce-the-cognitive-load-of-your-code", "published_at": "2016-03-30T14:10:29+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205a99a0ab0", "title": "→ Moving Beyond the OOP Obsession", "url": "https://samhuri.net/posts/2016/03/moving-beyond-the-oop-obsession", "published_at": "2016-03-28T16:08:47+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205aa92eddc", "title": "→ Cloak's Updated Privacy Policy", "url": "https://samhuri.net/posts/2015/08/cloaks-updated-privacy-policy", "published_at": "2015-08-27T02:56:54+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205ab1850f3", "title": "→ Acorn 5's Live Help Search", "url": "https://samhuri.net/posts/2015/08/acorn-5s-live-help-search", "published_at": "2015-08-25T05:00:27+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205abbdd15b", "title": "→ Swift: New stuff in Xcode 7 Beta 3", "url": "https://samhuri.net/posts/2015/07/swift-new-stuff-in-xcode-7-beta-3", "published_at": "2015-07-09T16:17:13+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205ac749e3f", "title": "→ Scripts to Rule Them All", "url": "https://samhuri.net/posts/2015/07/scripts-to-rule-them-all", "published_at": "2015-07-01T14:37:04+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205ad4fbdeb", "title": "→ Debugging Layouts with Recursive View Descriptions in Xcode", "url": "https://samhuri.net/posts/2015/06/debugging-layouts-with-recursive-view-descriptions-in-xcode", "published_at": "2015-06-02T23:35:35+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205ae025c21", "title": "→ The Unofficial Guide to xcconfig files", "url": "https://samhuri.net/posts/2015/06/the-unofficial-guide-to-xcconfig-files", "published_at": "2015-06-01T15:16:51+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205ae4a77d4", "title": "→ GitHub Flow Like a Pro", "url": "https://samhuri.net/posts/2015/05/github-flow-like-a-pro", "published_at": "2015-05-28T14:42:27+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205aeb7be0f", "title": "→ Magical Wristband", "url": "https://samhuri.net/posts/2015/05/magical-wristband", "published_at": "2015-05-27T05:17:29+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205afa04878", "title": "→ Undocumented CoreStorage Commands", "url": "https://samhuri.net/posts/2015/05/undocumented-corestorage-commands", "published_at": "2015-05-24T02:58:36+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205afb7eb2d", "title": "→ Lenovo ThinkPad X1 Carbon", "url": "https://samhuri.net/posts/2015/05/lenovo-thinkpad-x1-carbon", "published_at": "2015-05-22T00:36:29+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b00bcf7b", "title": "→ A bitcoin miner in every device and in every hand", "url": "https://samhuri.net/posts/2015/05/a-bitcoin-miner-in-every-device-and-in-every-hand", "published_at": "2015-05-19T02:53:54+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b0658315", "title": "→ Constraints and Transforms in iOS 8", "url": "https://samhuri.net/posts/2015/05/constraints-and-transforms-in-ios-8", "published_at": "2015-05-15T14:26:35+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b11dc5c9", "title": "→ Importing Modules in LLDB", "url": "https://samhuri.net/posts/2015/05/importing-modules-in-lldb", "published_at": "2015-05-12T02:03:35+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b13325cf", "title": "→ Apple Watch Human Interface Guidelines", "url": "https://samhuri.net/posts/2015/05/apple-watch-human-interface-guidelines", "published_at": "2015-05-10T01:57:19+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b138ac0c", "title": "Structure of an Ember app", "url": "https://samhuri.net/posts/2014/02/ember-structure", "published_at": "2014-02-04T02:05:49+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b1aff8ec", "title": "Linky", "url": "https://samhuri.net/posts/2013/09/linky", "published_at": "2013-09-28T04:49:02+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b289cf10", "title": "Zelda Tones for iOS", "url": "https://samhuri.net/posts/2013/03/zelda-tones-for-ios", "published_at": "2013-03-07T02:51:13+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b3229a0c", "title": "→ Fujitsu has lost their mind", "url": "https://samhuri.net/posts/2012/01/fujitsu-has-lost-their-mind", "published_at": "2012-01-20T04:05:33+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b359dd24", "title": "→ SOPA lives - and MPAA calls protests an \"abuse of power\"", "url": "https://samhuri.net/posts/2012/01/sopa-lives-and-mpaa-calls-protests-an-abuse-of-power", "published_at": "2012-01-17T10:46:40+00:00" }, { "id": "01a087da-ccdf-7175-8a0d-4205b366e188", "title": "→ Recovering From a Computer Science Education", "url": "https://samhuri.net/posts/2012/01/recovering-from-a-computer-science-education", "published_at": "2012-01-17T08:00:00+00:00" } ] posts Claim your blog
Back to samhuri.net
Blog · corpus.blog/blogs/samhuri.net/posts

samhuri.net

samhuri.net

2026

2025

2024

2017

2016

2015

2014

2013

28 Sept 2013

2012