re: An IoT story

Matt Haughey has an intelligent scale which records and sends your weight data to a cloud. Based on weight the scale takes a guess to match it to different profiles. Turns out Matt found almost like a 100 different data points that didn’t match anyone in the household—it was the cleaning lady, for years. Matt wanted to tell her:

I wanted to apologize, explain how it happened, how it was a big accident, and that it was information I wished I didn’t have.

Now, the interesting part is the last bit: I didn’t have. At this point upon first reading I’d assumed he just wanted to tell the lady not to use his personal belongings. His explanation was a little different though:

The next week when our house cleaner arrived to clean our bathrooms, I took her aside and explained that my bathroom scale was connected to the internet and tracking everyone that steps on it. I learned through a software update that it was tracking her too for years, and I was deeply sorry for that.

He was sorry because he was tracking the cleaning ladys data unbeknownst to her.

How Netflix taught me why User Experience matters

Plex was acting rather sluggish so I naturally started to eliminate the bottleneck thus tried different setups and eventually media playing options at home. For example running Plex Media Server on my laptop connected to the NAS wirelessly, then same with running sample locally, then trying out Video Station which is a stock solution for the Synology product line—the works.

However, this post is not about figuring out how to play media files at home. This is about realizing how important User Experience is, and how features, a solution offers, are not.

Netflix has been my default choice when watching movies and shows. It boils down to a couple of things:

– no fiddling with media files
– launches fast
– accessible from everywhere without needing me to configure anything
– the time it takes to display video content on screen is crazy fast
– seeking time is crazy fast
– handles profiles within the family (and keeps seek positions for the profiles)
– has subtitles which always work and is easy to turn on and off

None of the other solutions I explored offers these at the fidelity Netflix is capable of. If an app fails to deliver me these, I just tend not to use it. Not by conscious choice, it just is. The media player visuals don’t matter that much when I need to wait 10 seconds just to see the movie start to play.

You see, all of the media player solutions provide all these features. But sometimes they choke on media files, but then VLC can play them just fine. Sometimes they don’t display certain subtitles, but that other player does, and sometimes they don’t remember seek times. Netflix, on the other hand, constantly delivers on these and never fails. You have complete trust in Netflix.

If I were to maintain a roadmap for a media player solution, the experience provided by Netflix would be my North Star metric. We wouldn’t take on new features, integrations, podcasts, whatever feature business is convinced we need to have to succeed, unless we’re excellent in launching and seeking time metrics, media handling etc. It would require a completely a radically different thinking about our product architecture.

What I realize is that even though Netflix has limited content options when compared to other offerings, I tend to fall back to it. I just don’t want to fiddle with settings, IP addresses, managing media files, thinking about transcoding problems, and all that jazz.

I’m inclined to say when the core User Experience is great, you’ll win users over. The same way Netflix wins me over even though 2% of all the media produced in the world is available on it. At the end of the day I just want to hit the play button and watch something before passing out.

Action button iconography problems

If you’re like me and use Google Meet and Slack calls for video conferences frequently, you might have been in the same confusion. This is what the controls look like, Slack top, Google bottom:

Slack starts with Audio ON, Video OFF
Google starts with Audio ON, Video ON

Iconography however is completely confusing, especially if you use these apps back and forth. One displays a microphone when you’re talking, the other a crossed out microphone. Am I on mute? What should I press to go on mute? (The video is even more confusing as Slack has it off by default, Google the other way around, and they use icons the opposite way.)

If a button can switch between two states, what should you display on the button: the actual state you’re in (Slack) or the action you can perform on the button (Google)? I’ve always found Slack the oddball, it never felt natural.

Zoom goes the Slack way, but at least they write labels underneath the buttons, it’s a mix of the two worlds:

Apple seems pretty consistent with this, here is FaceTime…

…and Apple Maps:

This latter is displayed on a 2D screen. Press “3D” if you want to switch to 3D map view. Seems logical, tell the user what will happen with pressing the button.

By this time I’ve learned to live with the logic of Slack, in practice I just know if it’s dark, it’s off, if light, it’s turned on. I never look at the icons.

Master Quest: DONE!

Whew! What a game!

My plan worked: finishing and maxing out Ocarina of Time 3DS, then the Master Quest right after, provided an amazing journey in video gaming. Took me around 2 months to do it and I was playing fairly actively. At times I was questioning my decision if I should really pursue this stupid goal, but in hindsight, it was worth it. I can now say that I completed one of the best video game ever, with the optional Master Quest game mode to the fullest.

Regarding Master Quest, I didn’t know what to expect. Maybe everything will be harder. Indeed, there are harder parts, but if you just have completed the normal game, it shouldn’t be difficult. Often times it’s even simpler than the normal game. The new dungeon arrangements are perfect for every Zelda fan: the geometry is the same, but the items and mobs are completely tweaked and it provides a different experience.

I even completed the Boss Gauntlet where you need to kill the 8 bosses back to back with just 3 hearts. First I thought, nah, I’m gonna skip this. But then I challenged it again and again, and eventually I got lucky.

All in all I’d put 140 hours into this project (3 full playthroughs, first in 2011, then now in 2018 the normal game and the master quest).

I’ll let this cool down a bit before committing to a new gaming project.

Ura Zelda

I think I finally lost my mind.

I mean I liked the Zelda games, started and played most of them, but as things are, I never truly finished them. There were a couple of exceptions though: I almost maxed out the Minish Cap (but didn’t have notes and a Kinstone fusion was missing), then truly maxed out Oracle of Seasons and Ages. It was a very definitive moment in my gaming life. Yet, when Majora’s Mask came in 2015, I stopped playing it at some point. I also stopped playing Wind Waker HD in 2013. This is the usual gamer, you start something, then you don’t finish it.


However, however. When Twilight Princess HD came along in 2016, I completed it. Not only that, I maxed it out along with the new Cave of Shadows dungeon (which is just waves of different enemies, really). It was fun and a great experience. You know, the kind where it’s hard and you need to retry the part over and over and over and over again. But you finally succeed and it’s AMAZING!

Then it was time for me to revisit Wind Waker HD. I picked up my old savegame from three years back, and despite the fact that I’d forgotten everything, I got back into it and not only did I finish it, but I maxed it out. That meant completing the game once again, from beginning to end, with all minigames, figurines, and everything. To my standards it was a crazy ride, but a very satisfactory one.

After this I picked up Majora’s Mask 3DS and did the same feat: not only did I complete the game, but I once again maxed it out, all hearts, sidequests, fishing holes are now done. (Note: in the mean time Breath of the Wild came along and I started playing it on the Wii U and stopped.)

After Majora’s I had to decide where I wanted to go next.

The obvious choice was Breath of the Wild on the Switch. I even bought the game, but yet something was telling me my Zelda destiny is somewhere else. In 2011 I bought Ocarina of Time 3DS and completed it (and even maxed it out, but as I see now a final heart piece is missing). The game contains the Master Quest also which I’ve always wanted to play, but never did. So I thought maybe I should play that next. But if I did, I had to play Ocarina, in this new game mode, which is harder, from scratch. Something wasn’t right.

I then realized my destiny: I need to replay and max out a fresh copy of Ocarina of Time, so it all comes back to me, and when that is done, I need to do experience Master Quest. I mean, we’re talking about one of the best video game of all time, right?

So here I am, at 41 years of age, replaying a fucking game from 2011, which I have completed almost to the fullest, and when that’s done, I’ll replay it one more time where the whole gameworld is inverted and dungeons are even harder. And oh, yes, did I mention there is also a fishing minigame that needs to get completed? And a boss challenge mode and a boss gauntlet?

Notes on how to finish the fishing minigame in Majora’s Mask 3DS

After 90 hours of net gametime I can finally claim the 100% completion of the 3DS version of Majora’s Mask.

Bought this game back when it was released in 2015, put around 25-30 hours into it, then ended up not playing it any more. Things are changing and I’m back in business: this year I picked it up again, played and played until it was all smooth again for my fingers then completed it to the fullest.

This means fishing out the two fishing holes that are exclusive to the 3DS version. Here is my guide that I feel is worth sharing because the available guides don’t really mention these – or parts were news to me.

First, the guides from around the net!

Gamefaqs (mainly used this one)
IGN guide
– Zeldadungeons Swamp and Ocean holes with fish pictures (useful)
Tourian Tourist’s guide (scroll down to 2016)
– Videos: Swamp Fishing Hole Guide, Ocean Fishing Hole Guide

Here are my notes:

– First, I suggest doing the fishing holes last, when you have all the masks. It’s not compulsory, but since you’ll need to use various masks to catch the fish, it’s worth getting the masks, then do the holes in a focused effort.

– Start with the swamp hole which is the smaller of the two. When you enter, just explore the area first from underwater as a Zora, identify the parts and observe the fish in the water.

– The idea of this minigame is to cast your line in the direction of the fish. Let the bait sink or float, reel slowly until the fish notices it. When there is a bite, quickly press “A” and use the analog pad to drag towards you. It requires some effort to reel them in and usually some direction change opposite from where the fish is trying to swim. If you hear the reel clicking sound it means, it’s getting closer to you. Often times the fish jumps and gets further away. Patience.

– By the hole entrance there are 11 drawings of the fish with hints how to catch them. The drawings are not very good and pretty captain lorez, so I suggest using Zeldadungeons excellent PNG’s instead. I also suggest using a spreadsheet with the list of the fish to mark where to focus next.

– By the counter there is a board with all your catch. This is how you can tell what you’d achieved. (If only Nintendo would’ve put a completion marker on the savegame!)

– Catch the common fish first that don’t require a mask to catch. This is a good warm-up to understand the mechanism.

– Some of the fish require that you wear a certain mask. The idea is that you go relatively close to the fish you want to catch and put the mask on. Of course, the fish needs to have been spawned in the pool, so confirm that first, then wear the mask. You’ll hear a chime which means the fish is now “triggered”. When this occurs there is a splash in the surface vertical to where the fish swims. This way you can identify on the surface in which direction you need to cast your line. Note: some trigger is shorter, some longer. If trigger goes off, you need to take off your mask and put it back on again.

– Workflow is the following: select a fish from the list you want to catch. Enter the hole, switch to Zora Link and try to find the fish underwater. This might seem daunting at first, but after a while it’ll get easier. A new set of fish spawns when you enter the hole. If you can’t find the fish you’re looking for, exit the hole and re-enter. If you see your fish, go and buy the rod and go to a convenient place from where you can cast your line in the direction of the fish. Use the mask, observe the chime, then search for the splashes on the water surface. If you switch to camera mode you can fine tune the direction where you’ll cast your line. If you don’t have the trigger or run out of time, the fish won’t bite. Once you have a catch, exit the hole and save.

– This way each fish will cost 50 rupees. To make money, just collect it outside the hole while you’re working on getting the spawn. For instance, if you exit the Swamp Hole, go to the target shooting next door. Do not enter the room, instead, climb up to the higher ledge where there is two bush. They usually contain 3 x blue and 1 x red rupees. Every time you enter this area you can harvest the money. Very easy to get the 50 rupees for the fishing rod session. Same applies to the ocean, but you need to kill the Like Likes on the beach. Use night time to harvest more.

Tips for fish I found a little harder to catch:

Sweet Ranchfish – short trigger time and always spawns by the waterfall pond. Enter the hole go there, see if there is a fish, if not, repeat. Once you see it, buy the rod, walk there and play Epona’s song. You’ll hear the chime then you can cast the line. Be quick with the cast.

Fragrant Reekfish – wear the Mask of Scents and enter the hole. The purple fog above the surface of the water will tell you where the fish is.

Ferocious Pirarucu – swims around the pillar, easy to notice. Then just have a smaller fish bite your lure and this will trigger the Pirarucu. Similar strategy applies to the fish that bites on smaller fish.

Colossal Catfish – on the final day switch to Deku Link, hop to the pillar, switch to Goron Link and ground pound. If you hear the chime, locate the surface and cast the line. If you don’t, exit the hole and re-enter.

Ninja Flounder – go to one of the left pillars, wear the mask and listen to the chime. If you don’t get the chime, immediately exit, and re-enter the room. Once you get the chime, it will require some patience to locate from above (as it is unseen with the Zora mask).

Nuptuna – hard to spot because it looks like a common fish, wear the Couple’s Mask and listen to the chime.

Great Fairy Fish – this worked for me: have all 11 fish on your roster. Once you do, start a new cycle, slow the time, and catch fish for the first two days. It will be boring and long, but don’t get discouraged. When the third day starts, immediately go out and save. Come back to the hole with the Fairy’s Mask on your head and check if it shimmers when you enter the hole (this is to check if there is a Fairy Fish around). If there isn’t, re-enter. If there is, swim as a Zora to the crystal cave on the top right portion of the area. The Great Fairy Fish will be hard to spot, but from the right hand side there is a little way to look inside. Do this process until you spot the fish and it’s not later than 11:00 PM on the last day. If it is later, reload your savegame and repeat (you’ll need the time for this fish). Once you see the Great Fairy Fish, buy a pass, go to the closest pillar and wait until the Fairy Fish bait swims relatively close to the cave. Put on your Fairy’s Mask to get a fresh chime, cast your lure and try to get it to bite. When there is a bite, let it swim towards the cave. You need to let the reel go and direct the fish by pulling the rod. Eventually the Great Fairy Fish will come out of the lair and eventually it’s going to bite. Patience is needed for this, because it will be a long fight.

I don’t believe it either. Have fun! 🙂

How to play Commodore 64 games on your modern Mac

Bought a couple of games for the Commodore 64. Sam’s Journey seems a very nice Warioland/Mario based platformer with very interesting graphics. Here is how to play it on the Mac.

You need to download VICE for the Mac. The latest version is 3.1 and you want to grab the Cocoa version called vice-macosx-cocoa-x86_64-10.12-3.1.dmg. Create a folder in your /Applications and dump everything in there.

You can now start the emulator by clicking on Here is what you need to set up in order to play from the keyboard. First, go to “Settings” and check “Save settings on exit”. Now set up the joystick emulation. Go to “Settings – Joystick” and then “Keyset” and select “Keyset B”. This is a very confusing UX, but what you need to do is press a button that you’d like to map the joystick to and then set it to a direction. Middle one is the fire button. I use the left Alt for fire and the cursor keys for directions. You don’t need to set the NE, NW, SE, SW directions. Here is what it looks like:

Games usually use the joystick port 2, so I set Joystick #2 to Keyset B. (Don’t use the default Keyset A because it maps to regular keyboard characters and you won’t be able to type. Just set it up like the screenshot above.) Quit VICE, restart it and make sure that your joystick emulation parameters are correctly set.

Now, it’s time to load a game. Go to “File – Attach Disk Image” and point to the disk image into disk unit 8. In the C64 screen type the famous LOAD"*",8,1 line, then when it loads, start by entering RUN. You can usually skip waiting screens by pressing space or pressing the fire button. There is nothing left but to enjoy some 8 bit retro game action!

Super Mario Odyssey moon count

How big is Super Mario Odyssey? How many moons are really there? Been wondering about this since got my copy back in October. Finally I have the answer! Took me around 20 hours to complete the game, and 65 more to true 100% it. There were a lot of nasty moons in there, played several weekends to complete the last 10 moons including the usual stupid adorable minigames. Everything is doable, it just requires practice and after a while you’ll figure out a good strategy.

There are 14 different kingdoms in the game, some small, some big. Three more kingdoms are to be discovered on top of that. You can collect 581 (75,0%) moons in the game and 194 (25,0%) post game. These add up to 775.

Out of the 775 moons 22 count as 3 (multi-moon), therefore the total number on the Odyssey’s sail adds up to 819. On top of that there are 61 moons which you get by completing certain achievements, which brings the counter to 880. If you reach this, the sail will turn to gold. You even get to replay the final Bowser fight with slightly tweaked settings.

To max out the counter on the sail, you need to purchase additional 119 moons which will bring the counter to 999 and the sail will reach its final size. At this point a giant cap on top of Peach’s castle will appear with some animation playing should you climb it. (Note that in each kingdom with a shop, the first moon purchased will be listed as “Shopping in [kingdom name]” individual moon.)

To sum it up:

1. 775 moons
2. 61 achievement moons

Interested in the complete moon list? Here is my sheet.

Exceptional platformer game, lots of great moments, detail and care – I just recommend it for everyone. I might even replay it at some point, but for now I’m looking into other gaming projects. (I have to pick up again Majoras 3DS, Metroid 3DS, Zelda Breath just to name three that I want to finish really bad before moving on to Skyrim on the Switch.)

What can I tell you guys about the HomePod?

A guy from Reddit Audophile tested the HomePod:

When the song calls for it, there is bass. When the song turns to crystal clear highs, they are reproduced faithfully. What really was interesting is the instrument separation in the room. At about 45% volume, the HomePod FILLED the room I was in with some great sound. When you walked away from it, the sound gets quieter, but not as quickly as you’d expect. All the details were still there, just softer. there was no feeling of walking out of the sweet spot that you get with a normal speaker. And that’s when it hit me… Apple really has done it.

The whole review is music to my ears.

Re: How one employee ‘pushed the wrong button’ and caused a wave of panic

Washington Post:

Around 8:05 a.m., the Hawaii emergency employee initiated the internal test, according to a timeline released by the state. From a drop-down menu on a computer program, he saw two options: “Test missile alert” and “Missile alert.” He was supposed to choose the former; as much of the world now knows, he chose the latter, an initiation of a real-life missile alert.

Yes, it was a huge design fail closing these buttons in the vicinity of each other, blah blah. I’m still curious about this, though. Isn’t there a second confirmation dialog in place for sending out the real alert? (I mean, come on.) How can you change the text for the alert? It’s set and you press a button, whole thing goes off? If this is a standard drill that is supposed to be botched just by pressing the wrong button, how come this hasn’t surfaced earlier? The report doesn’t go into details.

But I’m asking this: wouldn’t you have come up with a similar story if Kim Jong-un have indeed fired a missile that you could successfully shot down mid air? Always blame it on design and the operator?

Oracle Java spinner, October 2017

If you update Java on your Mac there is an experience during the install process where you end up on their website. There is a large red button that checks if you have latest Java installed. It’s a nice way to test if the install process went fine. Here is what it looks like:

Did you see it?

There is a thing of spinner beauty when the Java applet runs. Gradient BLOBS that rotate by 30 degrees in a slow fashion that exemplifies the very nature of Java itself. Here, I recreated it in Photoshop, so we all can look at it until there is a new post on this website. YAY!!

Touch input as the future of computing

A couple of days ago Apple released a set of videos explaining the new powers of iOS 11. Here is the first one, showing you how to use the dock on an iPad:

(The other videos in the series.)

In September 2015 Tim Cook asserted: “The iPad is the clearest expression of our vision of the future of personal computing.”

I’m not sure. Here is why: this strikes me as an argument for creating, say, 3D models in VR. It’s certainly nice to be in it, but physically it’s exhausting, like standing on a ladder and doing actual sculpting work. This is what I see in these videos above. It’s nice to have this stripped down Mac interface that allows you to do more on an iPad, but I wonder if this is the future of input.

Just imagine five finger pinching every time to see the desktop instead of doing a small flick either on the touchpad or the mouse to activate a hot corner. Selecting multiple files is the same, you need to utilize both your hands, making all these movements instead of just command clicking a couple of files and dragging them. I don’t think that’s more efficient. (But then again, you could make the same argument for using the CLI in favor of the GUI.)

Again, I’m not sure, it’s just I tried to picture myself in the future of personal computing learning all these new interaction patterns and waving with both of my hands. I see it as a different kind of input (just like VR), and touch input might prevail for the masses, just like GUI did after CLI. You’ll be able to use all of them depending how you like to work. In that sense Tim Cook may just be right.


Someone on Twitter shared this tweet. (update: had to delete embedded tweet because video was removed)

I watched it, but seemed like one of those captioned viral videos, I have no interest in watching. The premise of this man building a lush oasis somewhere in India with elephants and tigers seemed out of whack. Turns out the story is true. Jadav Payeng has devoted his life of building this forest bit by bit.

In 2012 William Douglas McMaster made a short documentary of Jadav Payeng. If you’re interested in getting to know more about this man of nature, watch it:

Metroid II

This weekend I finished playing Metroid II for the Game Boy on my 3DS. The idea was that I complete this game before Metroid: Samus Returns (remake of this) comes out in September.

The original came out in 1991, when I started high scool at the age of 14. I didn’t play it back then, never had the Nintendo Game Boy. This metroid can feel weird at first, because the main sprite is a little too large compared to the tiny screen, but the game is all right. Here is my end screen:

What a game!

Had it not been for the save/reload console state at the emulator (my actual game time was around 10 hours), or the fact that Nintendo Power published maps in 1992, I wouldn’t have been able to finish it in a reasonable time. Although the game is largely linear, it doesn’t have an automap feature so you need to draw something on your own. It’s actually crucial as there are parts which largely resemble each other and easy to get bogged down in the backtrack hell. I also cheated at the final boss fight and read up on the easiest strategy plus watched a couple of videos on YouTube. With this arsenal I made it!

I can’t even fathom to imagine what it’d have been in 1991 to play this game as a 14 year old kid. Figuring this game out on your own would’ve been just too much trial and error.

Games back then were hard, man.

Slack app icon comparison

Yesterday I looked at my phone and something was off with the Slack icon. I didn’t know what it was, but there was this feeling about some “more”. I couldn’t put my finger on it, then I realized: Slack design team has done a facelift on the app icon. Let’s fire up the good old zoom-to-pixel rockets and see them side by side:

A little more focus was given to the letter “S”, it’s now dark gray with a dash of gradient, the pink has become a little more red. A lot more clarity, the “S” is not cramped any longer into the tablecloth pattern, can breathe – and with that I can breathe more with my online communications.

update: here is the official post on Dribbble with nice looking animations illustrating it for different platforms.