Following on from yesterday’s experiment of offloading thoughts into Tot I’ve been trying to do the same with Org-roam.
I’ve created a little bit of elisp and added it to my
(defun my-add-to-org-roam-daily-today (text) "Add TEXT to the Org roam today daily as an item at the end." (save-window-excursion (org-roam-dailies-goto-today) (goto-char (point-max)) (org-insert-heading) (insert text) (save-buffer)))
This creates a new command in Emacs for adding some text as an item to the end of today’s Org-roam daily.
The Alfred workflow calls the Emacs command via emacsclient (so Emacs will need to be running):
It isn’t very forgiving of single/double quotes (and may get confused by other characters potentially), however for my purposes of quickly adding a concise thought to my daily log it does the job.
I use Org mode clocking for tracking time spent on billable tasks. Until recently I was using Hammerspoon and a hand crafted Lua script to show my current task, and total time spent, in the macOS menubar. However it had an issue - if I put my Mac to sleep it would stop automatically updating. I’ve now made the move to xbar which is so much simpler. I wrote a tiny zsh script to accomplish the same task which in Lua was tens of lines rather than lines you can count on one hand.
In the Android emulator not that long ago you could give it a longitude and latitude for testing location based apps. They’ve now made location control more user friendly by providing a map on which you can tap to set your location. My guess is that most developers find this anything other than helpful as we want to provide a precise location.
You can do this using the Android console. I always forget the exact steps required so this is a reminder for my future self for the next time I need to do this:
➜ ~ cat ~/.emulator_console_auth_token rWLLmxgfZpw0sb4D% ➜ ~ telnet localhost 5554 Trying ::1... Connected to localhost. Escape character is '^]'. Android Console: Authentication required Android Console: type 'auth
' to authenticate Android Console: you can find your in '/Users/matt/.emulator_console_auth_token' OK auth rWLLmxgfZpw0sb4D Android Console: type 'help' for a list of commands OK geo fix -2.568001 51.809137
(geo fix requires latitude and then longitude, rather than the more usual way around)
A web app I’m working on at the moment contains a domain specific vector graphics editor. I keep going back and forth with the client on scroll direction and zooming. I thought it was down to macOS vs Windows. However I’ve just discovered that the Google Maps website and the Apple Maps macOS app both handle scroll direction when zooming differently. On Google Maps if I slide my finger ‘up’ on my Magic Mouse it zooms out. On Apple Maps it zooms in (with the help of the shift key). I think its time to give up - and have zoom work as it does on Google Maps and be counter-intuitive for us Mac types (I doubt any/many macOS users will use this web app anyway).
A trick used by some manufacturers of low end Android devices is to deliberately disable animations. This makes the phone snappier and stops the UI feeling sluggish as the hardware struggles with animations which are used throughout the system.
Whilst this has no impact on functionality in general usage, there are many cases where the animation is the functionality. I had added a simple feature to an app recently which faded between two images - one a historical photo and another one taken recently. The client had a Huawei P30 lite which has animator duration scale disabled by default - and can only be changed by enabling developer mode. When they tried the image fader what they saw was the app quickly switching between two images - and was essentially a broken feature for this user.
Thank goodness for Stack Overflow. I’m hoping that this workaround, which uses a private API to set animation duration scale back to 1x for the app, doesn’t trigger the app being rejected. This is another demonstration of why indie developers are often iOS first - there are so many more variables to consider when doing Android development.
The office-ish chair I ordered for home last year, as the stay at home order looked likely to continue, is starting to become uncomfortable. The foam in the cushion keeps getting squished to the sides leaving me sitting on the hard surface below. I’m hoping the memory foam seat cushion I’ve ordered resolves my discomfort.
An app I’d been working on for a client was rejected by Apple this morning. It is a location based app which unlocks a small feature if you visit a particular set of places. As this is a feature that Apple couldn’t test they need a video demoing the feature. Whilst annoying to be tripped up by this I’m happy that Apple take the time to make sure apps don’t contain any hidden nasties.
I’m often testing apps which make use of your location. Whilst I have various scripts to make this less frustrating sometimes it is less effort to just enter the location directly into the simulator. There is no keyboard shortcut assigned by default to setting a custom location. So I’m giving Paletro a try. This gives you a command palette for pretty much any application based off of the apps menu.
So far it is speeding up what I’m doing no end - fantastic! Great to see apps like this regularly appearing on my Setapp subscription.
For the first time in many years I’ve found myself using Inkscape. I needed to import a bunch of SVG images into Fontello so I could extend an icon font for a project I’m working on. The SVG export from Sketch resulted in most of the imported images showing up empty. Thankfully the Fontello wiki provided a step by step guide to cleaning up the images in Inkscape suitable for import.
I most definitely identify with this:
I find some days that I struggle to decide what to work on next, self-management is something I struggle with. Deciding what app gets time spent on it is another struggle, users expect features constantly across my line of apps. The most enjoyable part is that moment you get a good review or nice feedback from a user. It makes it all feel worthwhile.
From an interview with the developer Aaron Pearce at Indie Dev Monday.å
The podcasts I regularly listen to are hosted by multiple presenters. I very rarely listen to podcasts about software development, just because it’s what I’m doing all day. This morning on the way back from dropping the children off at school I gave a listen to Abstract Development by Vincent Ritter. As an indie developer myself who mixes client work and work on my own apps it was interesting to hear another developer think through things such as whether to move over to SwiftUI and on the pros/cons of using a platform such as React given the obvious constraints on projects with only one developer. A great example of why podcasts are such a useful medium.
If Apple were to allow purchase of digital products, such as gems in a game or a monthly subscription to a weather app, what measures should they need to put in place to protect users? A benefit of the current mechanism of in-app purchases is that each in-app product is reviewed and approved by Apple. I'm all for opening up the platform where it leads to greater innovation, choice and competition. But I wouldn't want to see scams and other predatory behaviour making the App Store a more dangerous place for the unwary or less knowledgeable.
Released an update to my plain text task management app beorg. I’ve finally got around to allowing the app to sync via a file provider - a much requested feature from my users.
Very useful flexbox cheatsheet for the occasional web developer such as myself
Sketch Export base64/png - handy for small images that aren’t feasible to include in the icon font being used for a project I’m working on this morning.