Geoff Hackworth

758 Followers
179 Following
320 Posts
Indie and freelance software developer for iPhone, iPad and Mac. You may know my Adaptivity app for iOS developers.
My appshttps://apps.apple.com/us/developer/geoff-hackworth/id463855590
Websitehttps://hacknicity.com
Medium articleshttp://medium.com/@hacknicity

The Mac App Store is highlighting two of my apps in the Develop category 🎉

Essential Apps for Developers: SF Menu Bar

Mock Up Your Apps: Adaptivity

This has given a nice spike in impressions but unfortunately has not translated to a noticeable increase in sales 😞

Just a few days after @hidde, @swiftlee and @jordibruin release their Roadmap package, there’s a nice tutorial video on YouTube by @FloWritesCode showing how easy it is to use: https://www.youtube.com/watch?v=-KKtXryytVE.

And what’s that I spot in Florian’s menu bar? It’s my app for browsing #sfSymbols, SF Menu Bar! 👍

Roadmap: https://github.com/AvdLee/Roadmap
SF Menu Bar: https://apps.apple.com/app/id1615595104

Let Users VOTE For New Features in SwiftUI

YouTube

My algorithm is smarter than I implied in my earlier post. Where the token in a symbol name is made up of multiple words I treat them as separate tokens. "poweroutlet" is two tokens.

I match search tokens in any order against prefixes of any tokens in the symbol names. For example, a search for "sq outlet f" matches all the filled square power outlets but also "poweroutlet.type.f.square" as it has "f" as a token prefix. Adding an "i" to my search causes only the filled symbols to match.

I much prefer the matching algorithm used in my own SF Menu Bar and Adaptivity apps. It splits the symbol names into tokens and only matches based on token prefixes or exact matches starting from the start of the name. When I search for "z" I don't get "puzzlepiece" and I certainly don't get power outlet symbols!

The algorithm I use is described here: https://hacknicity.medium.com/a-simple-smart-search-algorithm-for-ios-in-swift-65f71b2f221a

#iosdev #indieapp

A Simple, Smart Search Algorithm for iOS in Swift - Geoff Hackworth - Medium

This article describes a simple, smart search algorithm that I have used in several iOS apps. The algorithm is smarter than a trivial substring match but not as complex as something like Xcode’s…

Medium

Xcode has had a way to search #sfsymbols for a while now. It's one of the tabs in the Library (access from the + in the top right or cmd-shift-L).

It has a *very* loose matching algorithm based on simple string containment. I think this makes it hard to use.

Not only does it match on the symbol name, it matches on semantic tags. If I search for "z" I get lots of matches, including "poweroutlet.type.e.fill". Why? Because the letter "z" is in one of the semantic tags ("czechia")!

Apple's rules for which changes warrant inclusion in the "What's New" category continue to confuse me. Added or renamed symbols in a specific data set are always included. Changes to supported render mode or localisations also seems to count.

In the iOS 16.1 data set (SF Symbols v4.1), only the changes made in that version were included in What's New. But it looks like the iOS 16.4 (SF Symbols v4.2) data set includes all changes made in any of the iOS 16.x data sets (i.e. 16.0, 16.1 and 16.4).

iOS 16.4 beta 1 has a few small changes to #sfsymbols

There are four new symbols for individual left/right powerbeats and powerbeats3 earpieces.

The "axel" symbols added in iOS 16.1 have been renamed to "axle". The old names still work, but the new names require iOS 16.4.

list.clipboard now supports multicolor rendering.

1.lane to 12.lane now support Arabic and Hindi localizations.

These images are taken from an upcoming release of Adaptivity running on iOS 16.4b1.

#iosdev #indieapps

I just realised that a display bug with iOS widget configuration introduced in iOS 16 is still present. Widget parameters are configured in an intent definition file and can either provide a static or dynamic list of options. Adaptivity’s random #sfsymbol widget uses both.

In iOS 14-15 they would both be shown with the widget’s orange tint color. In iOS 16, static parameters have the default blue tint. I suspect this is because it uses the new pop up menu design, not an action sheet.

#iOSDev

Bin Day Alert does one thing and does it well: it reminds you when it is time to put out your bins/garbage and which type of collection it is. Flexible schedules, configurable notification times (I prefer one the day before with a fail safe reminder on the day). Calendar view. Widgets to show next collection date for a single schedule or all schedules for the next collection date. #indiedev

App Store: https://apps.apple.com/app/id762807953
More Info: https://hacknicity.com/bindayalert

‎Bin Day Alert

‎Never forget when to put your bins out for collection. Is this week recycling or is that next week? Configure your different bin schedules in the app and then forget about it! Notifications will remind you when it is time to put out each type. Use the Apple Watch App or Widgets to quickly see your n…

App Store

Pommie for Mac is a menu bar version of Pommie. Again, no sync (but it does support Handoff to/from iOS). Siri Shortcuts (as does the iOS version, but I forgot to mention that 🤦‍♂️) #indiedev

App Store: https://apps.apple.com/app/id963504129
More Info: https://hacknicity.com/pommie/osx

‎Pommie - Pomodoro Timer

‎Increase your focus and boost your productivity by managing your time into strict work and break periods. Focus on a task for 25 minutes then take a 5 minute break. Repeat this three more times, taking a longer 15 minute break before starting the cycle again. Features: • Menu bar app with a simple…

Mac App Store