Martian Mirrors [#5]

Photograph of a wooden framed mirror with weather and calendar events projected onto the glass
Do I look Smart in this?

I absolutely love the execution and concept behind this “smart” mirror by Alex Repty (from MartianCraft). Sure, it’s clearly a labour of love rather than a commercial concept, but it’s also the kind of DIY tech project I aspire towards. Everything within the execution is custom made (even if the occasional part, such as the mirror, were purchased) so the end result can truly be called one-of-a-kind. Most impressive of all, to me at least, is that the software is also custom code whipped up to suit Alex’s particular needs. Whilst a “smart” mirror isn’t exactly top of my list of IoT devices, and the cost of the two-way mirror itself is a little off putting, I’d definitely like to try my hand at something similar in the future. Plus, with the whole process neatly written up for everyone to follow, it shouldn’t be too hard to reassemble the concept for my own needs. Top marks all round!

Scrobbling from the Void

Looking back over what I’ve previously written about is a little, well, shameful. Since as long ago as July 2015 I’ve been noting how the service has a large void: analog music. I love having a record of my listening habits, but that record currently lacks any music consumed on CD or vinyl which skews it quite heavily towards bands I’m just getting to know, rather than incorporating those I’ve listened to for years.

The solutions to this glaring issue have grown up a little since 2015. I’ve previously mentioned the Universal Scrobbler, which has become more feature rich than ever, supporting bulk scrobbling as well as integrating database searching from both Discogs and to make scrobbling entire albums as easy as single tracks. There is also now a healthy competitor in the form of the Open Web Scrobbler, a brain child of Github and Reddit which does a fantastic job of letting you fine tune your listening record. It also has some surprisingly powerful little features, including the ability to customise a Scrobble’s time stamp which then self-updates with each tracks duration to keep it effectively in-sync.

Despite that, manually entering an entire album in the OWScrobbler is time consuming and prone to errors. Luckily, does have an option to delete scrobbles, but still it was enough of an irritation for me to rarely use the service for anything more than a lone track here and there. Whole albums on vinyl or CD? To much effort.

Today, though, released my “2016 in Review”, driving home which artists and albums have mostly been lost to the void. I briefly looked at API hooks to develop a self-hosted solution, but was quickly reminded that WordPress remains a barrier. Back to looking longingly at the Universal Scrobbler’s Premium service then I guess. But hold on… something else seems to have changed since 2015. Back then I wrote how I couldn’t “justify the price” of a premium subscription. Well, either the price has come down or my definition of expensive has changed,  because a life time membership only costs $4.99 (USD), which currently seems very affordable.

It’s half an hour later and, as far as I’m concerned, I’ve already made my money back. I’ve scrobbled several albums I own on vinyl multiple times over, effectively updating my listening records for each artist for this year. There’s plenty more I still need to add, but I can now take five minutes out of a day and fire in a months worth of listening habits that would otherwise have stayed lost to the void. As a result I’m hoping my “2017 in Review” will be a much more interesting and balanced affair.

Palliative Bug Fixes

A palliative is a treatment that soothes even if it can’t cure the illness.

By all means, whenever you can, fix the problem, go to the root cause, come up with a better design…

But when you can’t (and that’s most of the time, because the straightforward problems have already been solved), the effort you put into providing a palliative will not go unnoticed or unappreciated.

~ Seth Godin

I’ve been catching up on Seth’s blog (I’m woefully behind on pretty much everything at the moment) and this post in particular caught my attention, largely because it reminded me of the reason why I haven’t really been reading/posting/watching anything much lately: Pokémon Go. I’d still like to do a full breakdown of that game, which isn’t this, but Seth’s words really summed up one of the aspects of the game’s development that has impressed me.

Anyone who has had anything to do with Go by now has probably come up against one of their many bugs. When the game first launched there were dozens; the game would freeze when you caught a Pokémon, when you didn’t, when you span the map too quickly, when you randomly encountered the wrong species or item. It crashed routinely, the servers were completely unstable and core features, such as the Pokédex and tracker, straight up didn’t work. The game was a mess and often very frustrating, but many people saw the gem at the core and decided to stick around anyway (yours truly, clearly, included).

Over a month later and many of these issues persist. However, quite a lot of the bugs have been addressed. Sometimes, as with the now infamous “three footsteps” glitch or the more recent issue where some Pokémon randomly changed upon a successful catch, it seemed like each fix broke something else. Despite this the game is now far more robust than at launch and barely ever force quits for me any more. I can tell several of the bugs still exist, but wonderfully were they couldn’t instantly cure the problem they’ve introduced palliative solutions.

Sometimes, the game hangs when loading. When it first launched, you couldn’t do anything when this occurred except either wait it out and hope or force the app to crash and reload. Now, after a certain time has elapsed, a “Sign Out” button automatically appears. Press it and you’re returned to the initial splash screen where you can reattempt to connect. It’s not a fix – the loading screen can still hang – but it presents a much less frustrating solution than the previous alternative. Same goes for one of the earliest bugs where the “rocking Pokéball” animation would just fail to load, locking you into a useless screen and forcing you to (again) force quit the app. This bug still occurs for me from time to time, but now the app deals with it, forcing the next animation to trigger and ignoring that the previous one never did. These are simple, easy “fixes” that don’t solve the (I imagine) rather complex underlying root causes of these issues, but make the game infinitely more enjoyable to play regularly.

I’ve never seen a games developer or software company really take this approach before, but Niantec seem to be making it work for them and personally, I think I’ve learnt something about how to handle problematic code.

Toshl Finance

Toshl is one of those weird little apps that, on paper, appear extremely useful but which I’ve never quite clicked with. On at least three separate occasions over the past year I’ve signed up for a free account, started setting it up, hit a road block and ultimately never returned. Every time, it goes like this: I’ll get an email regarding some new feature, think little of it and move on. Then, a couple of weeks later, I’ll decide I need to sort out my life and *bing*, up pops Toshl in my recent memory. “Perfect” I think, restart my account and… well, ultimately, remember some reason why the service isn’t right for me and abandon it again.

It happened again over the weekend. My partner and I are in the planning phase of a big holiday, unlike anything we’ve done together since officially entering “adulthood” and it’s becoming apparent that we’ll need to start budgeting and tracking our finances in order that we pull it all off. We were discussing this on Saturday when Toshl, obviously, popped into my head. It was only about a week ago that I got an email from them about some new feature (genuinely no idea what), so it seemed like fate. I fired up my account, set up a couple of payments, recorded all our monthly outgoings and began to get a decent overview of what we were spending money on. Recording every little purchase was a bit of a pain though, as it requires “adding” each one individually, which involves a number of dropdown boxes and deciding on stuff like categories (which didn’t always work: car, for example, should not be a “tag” or subgroup), and simply didn’t seem time effective. It was much quicker to create a Google Sheet, import our bank statements and quickly move cells around – plus we can both work on it simultaneously without having to share passwords, logins etc. However, this worked nicely in conjunction with Toshl, so was more of a speed bump than a roadblock.

As a result, it looked like I’d finally found a use for Toshl. The inbuilt calculators and setup, though a little fiddly, are genuinely great for recurring amounts of money (both in and out of accounts) and allowed us to quickly see how much it genuinely cost for us to live. Once set up, it was also easy to see break downs of what portion of our outgoings were flexible and which were not (e.g. taxes and rent). Excited and ready to start putting all this neatly sorted data to good use, I began setting up some savings pots. That’s when I hit the roadblock.

A free Toshl account can only have 2 “Accounts”, i.e. bank accounts, and 2 “Budgets”, which we were going to use as savings pots. Only two of the latter, however, was too little to even get a feel for how they worked. I do understand why companies restrict certain features and offer “Pro” or premium experiences at a cost, especially data heavy cloud services like Toshl. However, in this instance, the “free” version feels too much like a chore to actually use and restricts you from what I would consider its “core” feature: the ability to set and monitor savings targets.

So here we are again. My latest liaison with Toshl is already over and the account is now permanently closed. We moved over the monthly outgoing/incoming calculations to the spreadsheet, added some new functionality to mimic savings pots and everything’s working pretty great. Is our solution as shiny and well designed as Toshl? No, absolutely not. But it’s a lot more flexible, gives us exactly what we need and makes it very easy to expand upon, both from the perspective of functionality and the data being stored.

To be clear, this is definitely not meant as a take-down of Toshl, its services or methodology. I think it’s a genuinely good service and, especially outside of the US, is one of the best variants of this business model out there. Ultimately, though, it doesn’t do enough of what I want it to do and I’m not willing to spend extra money on something without finding it indispensable, which Toshl just doesn’t achieve. Oh well, maybe I’ll find another use for it in after another few months have passed.

Edge of Frustration

For about two years now I’ve become increasingly annoyed at my PC screen. The left-most edge has been “clipped”, missing about 2mm across all programs. I’m not sure when the issue first occurred, I just noticed it one day, so trouble shooting was a complete nightmare. Secretly, I theorised that a Windows Update screwed up some settings and resigned myself to live with it. It was annoying, but not massively problematic.

I hoped upgrading to Windows 10 would fix it, but lo!, the problem persisted. Frustrated, I re-installed graphics drivers, display drivers, nVidia’s programs; basically anything I could think of. I fiddled with resolution, changed all the settings on the monitors own control panel, rotated the screen, downloaded apps… no dice. Once again I gave up, defeated and bored.

Fast forward to two two days ago, when a friend introduced me to the browser based RTS/Risk analogue: Call of War. It’s a fun little game, running a freemium model with an active and friendly community (who are largely against using the “paid for” perks, which is nice) and a level of complexity I really wasn’t expecting*. Unfortunately, some of the menus are pretty thin and almost entirely disappear off the edge of my monitor!

As a result, this afternoon, I re-attempted a brute force attack to fix the display. I refreshed drivers, updated control panels, searched through dozens of Windows menus and eventually, thanks to a comment on this forum thread, I found my solution. Irritatingly, I’ve likely hit upon it before but not noticed, as it requires a specific combination of settings/refreshes. The culprit was not Windows, as it turns out, but nVidia, whose (normally very useful) Control Panel had scaled my screen based on their “Aspect ratio” setting. That, it turns out, was causing the issue. I hadn’t noticed it before because just turning the setting off doesn’t fix the issue, I also had to refresh my monitor directly. With that weird combo learned it took 30 seconds and snap! my screen popped back into it’s rightful place.

I guess there’s some moral here about not giving up, persevering or thinking outside the box, but you know what? I’m not bothered. My screen finally looks “right”, everything’s a little sharper, menus are no longer absent and I can’t help but feel the “call of war” (ahem). So, with technical issues defeated, I guess Central Africa is next on the list. Bring on the weekend!

* On that note, the provided tutorial and guides are fairly woeful, but the in game chat is a pretty good place to go if you have any questions.

Lightroom Resource List

Humurous graph outlining relative skill level of photographer compared to self worth
I’m definitely still in the first quartile…

My new PC is up and running and starting to be “just right” (we’ll get to further details later, I promise), so one of the big “new” things I’ve got for the new year is a subscription to Adobe CC – specifically the “Photographer” plan. I have previously mentioned worries regarding this plan; the insecurities of relying so much on software that you never truly own, but only “rent” for a given period. Ultimately though, I caved. Adobe still produces the best image editing software in the world, as far as I’m concerned, and although it’s been many years since I last truly used Lightroom I remain impressed by its suite of features.

That said, referring to myself as “rusty” is probably so overly-polite it’s borderline fictional when it comes to using both Lightroom and Photoshop. Not only have I taken a several-year absence, I haven’t had an “up-to-date” version of either program since CS3, so there are a lot of new features and “enhanced” (read: totally different) navigation options. As a result, I’m regarding myself as a total beginner and slowly compiling an Adobe 101. I’m also continuing my war against the easily forgotten, losable “bookmark”, so I figured I would just keep a rolling list going on here. With that said, here’s some links to tips/advice I’ve found useful so far:

7 Steps to Getting Organised in Lightroom ~ Layers Magazine
Understanding the Histogram (Basics) ~
JPEG Export Comparisons ~ Jeffrey Friedl
Virtual Copies ~ Laura Shoe
Focus Stacking ~ Phlearn
Noise Reduction ~ Daniel Laan (seriously awesome and includes other, non-LR tools for comparison)
Custom Metadata for Importing Photos ~ Digital Photography School
Local Adjustment Brush Settings ~ MCPactions
Colour Balancing Tips ~ Adobe Tutorials
Lightroom -> Photoshop -> Lightroom ~ Adobe Tutorials
10 Ways to Speed Up Lightroom ~ Lightroom Zen

And of course Adobe’s own tutorials page, which is really very impressive in both scope and detail: Official Lightroom Details (especially combined with their Coffee Break Tips series)

I’ve decided to add a couple of links for straight up photography as well:

Depth of Field Quick Guide ~ Aperture Tours
Composition Study ~
UK Image Copyright Laws ~
Photo metadata/IPTC explained ~ IPTC
Astrophotography Tutorials & Tips ~ sympathink