The Curious Engineer

All blogs / Mobile / iOS / Android

Andrew Bancroft

andrewcbancroft.com

Recent content about iOS development with Swift from Andrew Bancroft.

Mobile / iOS / AndroidSoftware / engineering practiceEngineering blogs

’05’10’15’20’25
Posts
211 from 1 Jan 2001 to 22 Jul 2026
Posting
now and then (1 in the last year)
Kind
personal blog
Feed
https://www.andrewcbancroft.com/index.xml

2026 1

  1. How I Learned to Copy and Paste, and Why I Never Do

2024 2

  1. Download macOS Beta Installer
  2. SwiftUI Fundamentals

2023 3

  1. iOS 17 Fundamentals
  2. Pre-populate a SwiftData Persistent Store
  3. Add SwiftData to an Existing App

2021 2

  1. Building iOS User Interfaces with SwiftUI
  2. Swift Five - Week of February 14, 2021

2020 10

  1. How to Download Old Versions of Xcode
  2. iOS 14 Getting Started
  3. What Are All of the Possible Environment Keys in SwiftUI?
  4. WWDC - The Worldwide Developer Community
  5. StoreKit Testing Swift Start
  6. Implementing In-App Purchases on iOS
  7. iOS Receipt Validation: Understanding and Troubleshooting the Original App Version Field
  8. Privacy Policy
  9. 4 Reasons Your iOS App Is Crashing
  10. 4 Things You Should Never Do When Debugging iOS Apps

2019 34

  1. What Is Debugging (And What Isn't)?
  2. iOS Debugging Fundamentals
  3. How to Use @FetchRequest in SwiftUI
  4. How to Pass NSManagedObjectContext to a SwiftUI View
  5. Using Core Data With SwiftUI - An Introduction
  6. NSPersistentCloudKitContainer Buggy Behavior List
  7. Apple's SwiftUI Essentials Tutorial Series as Playgrounds
  8. Why is Swift ABI Stability a Big Deal?
  9. Make a Bash Script Executable
  10. What is an ABI
  11. How Smart (Or Dumb?) Should NSManagedObjects Be?
  12. On Core Data Object Fetching and Display Strategies
  13. Using SwiftUI in a Playground
  14. Getting Started With NSPersistentCloudKitContainer
  15. Accessing the Root View Controller at Launch on iOS 13 with SceneDelegate
  16. New Delights With Xcode 11
  17. Resolving Failed to Load Model Named... with Core Data
  18. First Impressions of NSPersistentCloudKitContainer
  19. SwiftUI is Declarative. What Does That Mean?
  20. Taking First Steps With SwiftUI
  21. Displaying and Updating Currency in a UILabel
  22. Load a CSV File With R
  23. Showing the Live View in a Swift Playground
  24. What is the Difference Between axis=0 and axis=1 When Working with Pandas Dataframes?
  25. Load an Excel File With Python and Pandas
  26. Load a CSV File With Python and Pandas
  27. Cheat Sheet - Jupyter Notebook Keyboard Shortcuts
  28. Create a SQL Server Credential for Accessing Azure Blob Storage
  29. A Mnemonic for Remembering Type I vs Type II Errors
  30. iOS Data Persistence: The Big Picture
  31. What is the tilde (~) symbol in R?
  32. Resolving No Events Found When Sampling Data with Azure Stream Analytics
  33. Deciphering U-SQL's Error Messages
  34. U-SQL Pickiness - Resolving Common Syntax Errors

2018 17

  1. CloudKit Fundamentals
  2. Do Core Data Entities Need Primary Keys?
  3. The Case for CloudKit
  4. Create an HDInsight Cluster in Azure with PowerShell
  5. Swift Cheat Sheet for iPhone Location Services Access and Usage
  6. Swift Cheat Sheet for iPhone Camera Access and Usage
  7. Winning with Dimensional Models in the Age of Big Data
  8. Predictive Analytics vs Machine Learning - What's the Difference?
  9. Work in Progress?
  10. Fix SSIS Flat File Destination Error: Cannot open the datafile
  11. Breaking Down Data Analysis vs Data Analytics: A Look at the Suffix
  12. Swift 4 Upgrade Error: ‘init(colorLiteralRed:green:blue:alpha:)’ is unavailable
  13. Where is the SQL Server 2017 Reporting Services License Key??
  14. What Types of Data Analysis Are There?
  15. Search Database Object Definitions for Text
  16. Kill All Sessions
  17. Get Out of SINGLE_USER Mode

2017 24

  1. What is a Dimensional Model?
  2. Stages to Machine Learning
  3. Patterns and Key Words of Predictive Analytics Questions
  4. What is Data? (Like I'm 5)
  5. Local Receipt Validation for iOS in Swift From Start to Finish
  6. Finalizing Receipt Validation in Swift – Computing a GUID Hash
  7. Receipt Validation – Parse and Decode a Receipt with Swift
  8. Receipt Validation – Verifying a Receipt Signature in Swift
  9. Using an Existing SQLite Store with NSPersistentContainer
  10. Why is it called a “Closure” anyway? A Swift Conceptual Look.
  11. A Swift Implementation of the Core Data Stack Using NSPersistentContainer
  12. Why Do We Need to Annotate Escaping Closures in Swift?
  13. What in the World is an “Escaping Closure” in Swift?
  14. Every Developer is an API Designer
  15. Core Data Model Attributes and NSManagedObject Property Types Must Match!
  16. Solving React Native’s “No bundle url present” Error
  17. 3 Effective Ways to Keep You Focused as a Creator
  18. How to Unwrap Multiple Optionals with One If-Let in Swift
  19. Creating the Core Data Stack with Backwards Compatibility in Swift
  20. Swift Tip – Accessing a User’s Documents Directory with URL Extension
  21. Core Data Fundamentals with Swift
  22. Entity Framework Tip – Specifying Decimal Precision
  23. Core Data: Solving Ambiguous Type / Redeclaration of Type
  24. Solving ‘Spatial types and functions are not available’ with Entity Framework

2016 20

  1. Disabling Xcode’s OS-Level Debug Logging
  2. Using a Core Data Model in Swift Playgrounds
  3. TypeScript Build Errors When Publishing ASP.Net Web Project
  4. Force Unwrapping Swift Optionals: Code Smell!
  5. Is Protocol Oriented Swift Better than Object Oriented Swift?
  6. Extracting a PKCS7 Container for Receipt Validation with Swift
  7. Creating Calendar Events with Event Kit and Swift
  8. Swift Cheat Sheet for Dates, Formatters, and Date Components
  9. Parse PFCloud – “JSON text did not start with array or object”
  10. Working with Swift: Adopt a Protocol or Pass a Function?
  11. Listing Calendar Events with Event Kit and Swift
  12. Deploying Parse Dashboard
  13. Adding Buttons to the Navigation Bar with Storyboards
  14. FIX – Query in Parse Cloud Code Returns Unauthorized Error
  15. Swift Functions as Types
  16. Fade Views In/Out with Fadeable – A Swift Protocol Extension
  17. Fundamentals of Callbacks for Swift Developers
  18. Managing Xcode Project Dependencies with CocoaPods
  19. 401 Unauthorized Browsing Site From Local IIS Instance
  20. Swift Framework Woes – Unresolved Identifier? No Member?

2015 46

  1. Working with Unwind Segues Programmatically in Swift
  2. Using PowerShell to Install a DLL into the GAC
  3. Get Social With Swift – Posting to Facebook and Twitter
  4. Creating Trust-able Unit Tests in Swift
  5. Considerations for Choosing 3rd Party Swift Libraries
  6. Loading a Receipt for Validation with Swift
  7. Preparing to Test Receipt Validation for iOS
  8. OpenSSL for iOS and Swift the Easy Way
  9. Testability Tip for Swift Developers – Parameterize and Push
  10. Sharing a Core Data Model with a Swift Framework
  11. Diagnosing “Restore failed” with ASP.NET 5 on Mac
  12. Analyzing Swift Protocol Extensions and C# Abstract Classes
  13. Setting Up Carthage for the Terminal-Timid
  14. Dissecting 10 Read 10 Said – My New Swift iOS App
  15. UITableView Swipe to Delete Workflow in Swift
  16. Circular Progress Indicator in Swift
  17. Every Swift Value Type Should Be Equatable
  18. Swift UIColor Extension – Create using RGB Values (Not %)
  19. Creating Calendars with Event Kit and Swift
  20. Improvements to Unit Testing in Swift with Xcode 7
  21. Access Sub-Controllers from a UINavigationController in Swift
  22. Sync Table View Data: NSFetchedResultsController and Swift
  23. Swift How-To: Setting up a Table View
  24. Beginner’s Guide to Event Kit in Swift – Requesting Permission
  25. Strong, Weak, and Unowned – Sorting out ARC and Swift
  26. SQL Sever Synonyms, Entity Framework, and Integrated Security
  27. Testing is to Software as Experiment is to Science
  28. Clarifying Swift Access Control (Hint: Swift Isn’t C#)
  29. 3 Nuances of Swift Extensions
  30. Testability Tip for Swift Developers – Public Over Private
  31. How Delegation Works – A Swift Developer’s Guide
  32. Enums Instead of Booleans – An Example Implementation
  33. Announcing the Birth of……
  34. What is Delegation? – A Swift Developer’s Guide
  35. Basics of Pull to Refresh for Swift Developers
  36. An (Almost) TDD Workflow in Swift
  37. Displaying Data With NSFetchedResultsController and Swift
  38. Using Swift to Seed a Core Data Database
  39. Core Data Cheat Sheet for Swift iOS Developers
  40. Custom UITableViewCell for Text Input in Swift
  41. NSNotificationCenter vs Delegation – An Analysis
  42. Converting Complex Objective-C Macros to Swift Functions
  43. Conveniently Transforming Immutable Types in Swift
  44. Fix MAMP, MySQL Workbench “Failed to Connect to MySQL”
  45. Unit Testing Model Layer with Core Data and Swift
  46. Immutable Types with Changing State in Swift

2014 35

  1. Getting Started with Unit Testing in Swift
  2. Swift Unit Testing – Verifying Method Calls
  3. Swift Unit Testing Resources
  4. TDD for iOS in Swift – What’s the Goal?
  5. Don’t Write Legacy Swift
  6. Send a Type to Obedience School – Using Swift Extensions for Additional Protocol Conformance
  7. Swift UITableViewDataSource Cheat Sheet
  8. Agile Blogging
  9. Distinguishing Between Multiple UIActionSheets with Swift
  10. The 5 W’s of Swift Extensions
  11. Send Text Message In-App – Using MFMessageComposeViewController with Swift
  12. Up and Running with Unity IOC Container for ASP.Net MVC
  13. 7 Reasons You Should Write About Swift
  14. Resolving “Variable used within its own initial value” Error in Swift
  15. Rotate Animation in Swift
  16. Fundamentals of NSNotificationCenter in Swift
  17. Date, Date?, and the ToString Method in VB.Net
  18. Swift Alternative to Objective-C Macros
  19. Slide In Animation in Swift
  20. Swift iOS Version Checking
  21. Create Documentation for your Swift Playground
  22. Replace Magic Strings with Enumerations in Swift
  23. Pick a Delegate… Any Delegate… On Clean View Controllers in Swift
  24. Send Email In-App – Using MFMailComposeViewController with Swift
  25. Expanded Thoughts on Swift’s Type Inference
  26. Sort It Out – Sorting an Array in Swift
  27. Clean Coding in Swift – Type Inference
  28. Clean Coding in Swift – Functions
  29. Fade In / Out Animations as Class Extensions in Swift
  30. Swift Optionals? Don’t Forget to Unwrap!
  31. Swift Access Control – Implications for Unit Testing
  32. Implement NSManagedObject Subclass in Swift
  33. How to Create Mocks and Stubs in Swift
  34. NuGet app.config / web.config Transformation Trouble
  35. iOS KeychainItemWrapper – Obstacles Overcome, Inconsistencies Resolved

2013 7

  1. DotNetZip – Solving Mac Decompression Issues
  2. “Unexpected System Error” in DataStage Sequence Job
  3. How Old is Silas Allen?
  4. DataStage Range Lookup Failure – What Gives?
  5. Journey in iOS Development Series – In the Beginning…
  6. Report Studio Bullet Chart – Missing Target
  7. Removing Chart Gridlines and Plot Area Background in Report Studio

2012 9

  1. Resolving “UDA-SQL-0569 Unable to load the driver manager library ( db2cli.dll )” with Framework Manager 10.1
  2. SSRS: Which server sent my e-mail subscription?
  3. Troubleshooting SQL Server 2012 Reporting Services and SharePoint 2010 Integration (Part 2)
  4. Troubleshooting SQL Server 2012 Reporting Services and SharePoint 2010 Integration (Part 1)
  5. Pointer Pointer #2
  6. Create Sound Clips from iTunes
  7. Pointer Pointer #1
  8. From SQL Queries to Data Modeling
  9. Contributing My Share of Bytes

2001 1

  1. Andrew Bancroft - Portfolio