Skip to main content

Moments 2.25: Silver Edition

Kenneth P. Wong 
CSO (craftsman of soft objects)

So much better, it could have been called Moments 3, but we still have big plans ahead...

New Features

  • Category and Tags support!
    • Each Moment can be assigned a Category and one or more Tags.
    • The Picker (inside the Filter menu) allows you to easily find the Moments you are looking for.
    • AutoFill
    • Sounds familiar? Yes, the same simple yet powerful organizing feature from Kase. In some ways, the implementation in Moments is even better...

Kase 4.6: Money w/Currency

Kenneth P. Wong 
CSO (craftsman of soft objects)
updated 2025/02/25, 2025/01/17

4.6

Probably the biggest update since 4.0, Kase 4.6 packs a lot of new goodies.

One important addition is the new Money field with multi-level Currency support! Another big improvement is, under the hood, Kase is now moving to a new internal framework based on modern Collection View and Diffable Data Source, bringing to the table: collapsible sections, more powerful sorting and searching, and fully animated changes.

Kase 4.4: Split View & In-App Store

Kenneth P. Wong 
CSO (craftsman of soft objects)

4.4

New Features

  • new column-style Split View with updated Side Menu
    • much better for iPads and the large iPhones (e.g. the Max and Plus models)
  • In-app Store (iOS 17 required)
    • e.g. CE users can purchase upgrades from inside the app

Kase 4.3: Recover from Trash

Kenneth P. Wong 
CSO (craftsman of soft objects)

4.3

New Features

  • Recover from Trash
    • Now when you delete a Card, a Deck, or even an entire Box, they go into the Trash instead of getting deleted immediately.
    • You can open the Trash and recover the items (available in the Full Edition, not CE).
    • Items you leave in the Trash will be automatically deleted after 32 days (so you always have at least a month before they are permanently deleted.)

Kase 4.2: Number w/Unit

Kenneth P. Wong 
CSO (craftsman of soft objects)
updated 2024/03/15

"42!"

Kase 4.2 will be realizing a major part of my dream that started 10 years ago...

A number is usualy not just a number. It is often a quantity associated with a unit. Without the unit, it is a figure floating in a vague dimension. But when paired with a unit, the number becomes a measurement carrying a concrete value.

Kase 4.2 helps you keep track of numbers with units.

Open letter to all numbers

Here is an open letter to all numbers:

Kase 4.1: Date w/Time Zone

Kenneth P. Wong 
CSO (craftsman of soft objects)
updated 2024/03/13
  • 2024/02/02
  • 2024/02/01

4 = 4.0 + 0.1

Kase 4.0 was a huge update. It was so big that compiling the list of changes was almost as big a task as making the app itself...

Inevitably, bugs got in. Especially when we are supporting three major releases of iOS/iPadOS (15, 16, and 17), and Apple likes changing things around with little to no documentations... (e.g. SF Symbols names, hi, what are you now?[^sfs])

4.1 is what 4.0 should have been, if i had more time...

4.1

But 4.1 is much more than bug fixes. It is a very important release on its own:

UserDefaults in Swift

Kenneth P. Wong
software craftsman

(2022/04/01: updated and expanded)

NSUserDefaults → UserDefaults

In the beginning, when Cocoa was hot (circa 2001), there was already NSUserDefaults, a thoughtful API for the seemingly simple task of persisting preference settings.

Swift (since 2014) gave it a cleaner name (UserDefaults, without the NS prefix), but it also created new expectations that the plain old class was not delivering:

  • strong type checking
  • easy value types usage
  • modern Swiftness, etc.

This is where Swiftified UsersDefaults libraries come in. Here we look at a few of them:

  1. SwiftyUserDefaults: "Modern Swift API for NSUserDefaults"
  2. Defaults: "Swifty and modern UserDefaults"
  3. Foil: "A lightweight property wrapper for UserDefaults done right"