Everyone is offering dark mode now. It’s built into Windows and MacOS. You can get it on Android and simulate on IOS.
Is anyone actually using it?
Everyone is offering dark mode now. It’s built into Windows and MacOS. You can get it on Android and simulate on IOS.
Is anyone actually using it?
To get on the subway, you would book a seat in advance. You pay extra to sit close to the door.
When the day of travel comes, you open the subway app and click on a button to “confirm” you will be actually taking that seat you paid for. Diligently the app reminds you to arrive at the subway station a few hours before departure because it will take some time to get to the platform.
You travel to the subway station and enter the building. You stand in line to verify your identity and have them scan your luggage. Thank god you did not bring any large suitcases because you had to stand in line at a desk to give them to an attendant. Large suitcases travel inside a baggage car you know.
When you get through the line, you are an hour early. You spend some time window shopping at the stores selling goods you do not need. Maybe I can get a present? You get a coffee and wait at the platform. There is a constant yelling over the speakers by a woman for some other train 10 platforms away who is boarding. “We are boarding zone 1! If you are in zone 2, 3, 4 or 5 please stay seated. Our million milers and premium members are welcome to board now too via the priority lane.” I am glad I upgraded to priority boarding, I’ll be on the train soon.
Finally, it is close to our time of boarding. I see the platform attendant grabbing the microphone. She yells in the microphone that we have to wait. The crew has not arrived yet. They’re coming from another train which is now entering the station. We should be boarding soon.
I continue reading my book. 20 minutes pass. I see some people in official uniforms hovering by the gate. Is that the train crew?
The lady at the platform informs us that the crew is on board and we will be able to enter the train soon.
Another 10 minutes pass. I hope we get on the train soon. I have a connection at Union Square which I do not want to miss.
Finally, the boarding process starts. There is a pleasant person at the entrance welcoming us and telling us in which direction to walk to get to our seat. It is not always clear with the numbers and letters where you would need to go. A sign could have helped or a more logical layout of the seating numbering, but a person is more pleasant.
I find my seat. I try to stuff my bag in the overhead compartment, but there is just barely enough room. I shove and push. Finally, my bag is in. Pfew. I take my seat.
After 25 minutes everyone is on board. The train machinist is informing us about the trip. It is mostly dark and damp outside. No surprise since we are in a tunnel. He promises to give us an update as we get close to the next station. That was nice of him.
Next, we get a short video on the safety features of the train. They inform me that in case of an accident, there is a life vest under my seat. I am puzzled by that but accept it. There is also oxygen masks. Just in case we run out of oxygen I guess. For the life of me, I cannot remember when there was ever an accident that would save anyone because they had those features. I guess it is mandatory.
I feel the train moving. This is great. I look out of the window and see the platform moving along. We are on our way!
Or not? We came to a stop just outside the station. We have been sitting here for 5 minutes. What is going on? The train machinist informs us that it is busy on the train tracks, but in a chipper voice, he announces we are number 10 in line to leave the station. Great, let’s hope I can make my connection at Union Square.
Slowly the train is moving and then stopping. This goes on for another 10 minutes or so, but then finally we start moving quickly. The train is gaining speed. We are on our way!
During the ride, I am entertaining myself with some TV.
After a while, the train machinist comes back on and he announces with a happy voice that we are about to enter the Union Square station. He informs us again of the local weather. It is still damp, dark and cold.
I feel the train slowing down. It is moving super slowly now. This takes another 10 minutes or so before I can see us entering the subway station. We come to a full-stop. The train attendant tells us we should stay seated until the machinist turns off the seat belt sign. We all wait for that liberating moment and when it happens everyone jumps up and we get our stuff out of the overhead compartments.
Everyone is standing anxious to get out. Unfortunately, the door has not opened yet. Anxiously I look at the clock. My connection is leaving in 20 minutes. Will I make it in time? How far is it to go from platform 12 to platform 67 I wonder.
The doors open and we are let out of the train. I still 15 minutes. I can make it. I start running.
This is one of my favorite things to do to get perspective on the status quo.
I dread calling companies. It is not about customer service agents. I am always polite, patient and understanding. I make it a point to treat them as valuable people, just like how I liked to be treated. This is not what I want to talk about. No, my problem is that helpdesks are still organized to capture and effectively handle 95% of customer inquiries while most of those can be done online nowadays. When I call, I call for that last 5%. It is my last resort. It is when everything else fails to solve my problem. This after going through the app, FAQs, talk widgets on their site or emails. I only call when I literally have no other avenue available to me to try to solve my problem. That is how much I dread calling companies.
Typically it goes like this.
You call and you get a chipper voice telling you about the “main menu”. While listening to the 7 options, I try to classify my problem in one of those buckets. Usually, at number 7 I am puzzled which category to choose. Since the chipper voice has no patience, it starts to repeat all the options. This is good because I already forgot which number was which while still pondering which option to choose. At the second run, I typically lament and choose something which is close.
The next step is “identification”. They ask you for an account number or something similar. Nobody including me knows that number by heart so you go click open their app and find the number you are looking for. Usually, that number is 9 digits long or something which requires you to go back and forth between the app and your phone app. Meanwhile, the chipper voice is announcing “I didn’t quite catch that – please try again.” That is the moment, I just write down the number on a piece of paper and afterward enter it in the phone app.
Then you get transferred to a real person. Finally. Another chipper but real human voice announces themselves; “My name is X. How can I help you today?” You explain your need and then we enter the “identification” procedure. “Let me pull up your account. What is your account number?” Despite that my phone number is tied to my account or that I entered my account number in the beginning, for some reason we always have to go through the whole process again. Usually, I have to recite all my personal details before we can actually start to work on my problem.
We are now 5 minutes into a typical call.
Next comes the dreaded “Hmmm”. The “Hmmm” means “I see your problem, but I cannot help you.” The nifty transfer comes in. I dread those the most. Transfers are tricky. While companies usually have proper call queues for their frontend support agents, this is often the case with secondary support agents. This means that 2 out of 5 calls end up with a hangup. The only option then is to call again and start at the top and do the whole dance again. This is the moment I start to get anxious about my connection. You know you’re going to be talking to that priced secondary agent who is going to help you fix that problem, but you know cannot reach them directly. Please do not hang up on me!
We are now 10 minutes into the call.
The third chipper and human voice announce themselves. “How can I help you today?” “My name is Robert. As I just explained to X, I am calling about Y.”. “Of course, let me pull up your information. What is your account number?”. Dutifully you explain your problem in detail again and provide all the details they need to pull up your account (again) and verify your identity (again). And then the dreaded “Hmmm” comes again. This time “Hmmmm” means “I am not sure what to do here. I need to ask someone else.”. This “Hmmmm” means I am going to put you on hold for a minute. I feel my blood pressure rising because this is another critical moment with a big chance of a “hangup”. I have gone through 3 identity checks by now and the level of effort to get here again is mounting in my head. I dutifully wait on hold. A couple of minutes go by and the person comes back on. The third chipper voice tells me that she fixed the problem for me, but it won’t be reflected on your account until tomorrow. She tells me “It should be alright now. If it is not changed by tomorrow, please call us again.”
20 minutes I hang up not feeling accomplished at all. I might have solved my problem, I might not have. Who knows. I’ll know by tomorrow. I cross my fingers that I do not have to go through this dance again.
Apple surprised me with an update to the iPad mini. It was rumored that an updated version would be released this year and then it came.
I ordered one and it is coming next week. Right on time for my birthday.
I use my current Mini a lot. The size and weight are perfect for me. I use it for reading, some media consumption and play a few games on it. I purposely removed all productivity apps on it. All notifications are disabled and background refresh is off too. It is the perfect wind-down device.
Some were disappointed that they are still using the old form-factor with large screen bezels and no Face ID, but that suits me fine. I would have upgraded to an iPad Pro mini too, but this is what they made.
I am particularly excited for the better screen and pencil support. As luck would have it, I own a Pencil gen 1. It came with my iPad Pro 12 which is on full-time Space Station duty. Maybe I can phase out my paper notebook now. We’ll see.
The internet was rumbling a bit about the odd state of the iPad line up. I can understand that. Apple is known for product line ups which fit particular use cases. You want small and light, you get an Apple Macbook. You want to do video editing on-the-go, you get a MacBook Pro. The use cases for the iPad line-up isn’t that clear. I can’t escape the feeling that Apple is transitioning their line-up and we’re in the middle of it. It’ll become clear where they’re heading in a year or two.
For now, I am excited for my new iPad Mini. I can’t wait to start playing with it.
The last few weeks, this has been on my mind a lot. Who decides what is wrong or right? I have no answer to that question, but this has been on my mind:
Companies have norms like no pornographic content. They ban the content and actively moderate for it.
But how about social norms? I am thinking of:
Recently Amazon pulled a couple of books which promised a “cure” for autism. It was an “outraged” politician who brought it to their attention.
Spreading information like that is not against the law. No laws are being broken. This means that solutions are sought within the realm of social norms and pressure. The problem is that this process is messy and opaque. It does not scale.
We are navigating a very fine line between spreading of misinformation or hate with freedom of speech. There are no laws against misinformation (besides libel) while there are certainly laws against hate.
We invented the “worldwide megaphone” and now it is used to influence millions of people. It is very effective.
But how do we deal with that? I do not think we should look at Amazon, Facebook or Google (or any other company for that matter) to take charge.
I think this is not a private matter, but a public matter. The only thing I am certain of is that the solution begins there.
Generative.fm offers several endless dynamically generated ambient music streams. When you play one of the streams, it generates a unique endless piece of ambient music just for you.
The stream covers are inspired by Ryuichi Sakamoto and Alva Noto’s “Virus” series of albums (photo above). I guess it inspired some of the streams as well.
Alex Bainter who created the site writes:
The pieces featured on this site are not recordings. The music is generated by a different system created for each piece. These systems have been designed such that each performance is unique and plays continuously without repetition.
I am listening to the “Drones” stream while I writing this and looking into how he built it. It is very convincing.
Apple published a press release to defend their position with regard to Spotify’s complaint to the EU about the App Store practices.
The narrative in this press release is…. questionable. Let’s go through it:
At its core, the App Store is a safe, secure platform where users can have faith in the apps they discover and the transactions they make. And developers, from first-time engineers to larger companies, can rest assured that everyone is playing by the same set of rules.
This is an Apple-benefit. They want their devices to be secure. The App Store hurdle is NOT to facilitate companies and developers but to protect Apple’s customer and Apple’s reputation (in case of malware, abuse, high battery usage).
What Spotify is demanding is something very different. After using the App Store for years to dramatically grow their business, Spotify seeks to keep all the benefits of the App Store ecosystem — including the substantial revenue that they draw from the App Store’s customers — without making any contributions to that marketplace.
The App Store was invented to benefit Apple and Apple’s customers. If there was no way to install an app on the iPhone, I am 100% sure it would not be as successful as it is today. I love how they reverse the logic on the existence of the App Store.
Spotify has every right to determine their own business model, but we feel an obligation to respond when Spotify wraps its financial motivations in misleading rhetoric about who we are, what we’ve built and what we do to support independent developers, musicians, songwriters and creators of all stripes.
I love they use misleading rhetoric and calling it “misleading rhetoric”. The App Store has not been developed to support any of these people.
Spotify claims we’re blocking their access to products and updates to their app.
Let’s clear this one up right away. We’ve approved and distributed nearly 200 app updates on Spotify’s behalf, resulting in over 300 million downloaded copies of the Spotify app.
Where is Spotify on my Apple TV? Or the Home Pod? Ah yes, Apple is blocking competing products on their own platform to give themselves a headstart. Now, this is fine since it is their own ecosystem and – in my opinion – they can do whatever they want with that. But it is fair to say that Apple is blocking access.
Let’s be clear about what that means. Apple connects Spotify to our users.
Read the between the lines; Apple thinks they “own” their users and can use that as a reason extract rent for access to “their” users.
We provide the platform by which users download and update their app. We share critical software development tools to support Spotify’s app building. And we built a secure payment system — no small undertaking — which allows users to have faith in in-app transactions. Spotify is asking to keep all those benefits while also retaining 100 percent of the revenue.
Apple made about $15B in revenue from the App Store. This cover more or less the wages of all 132,000 Apple employees. I am not sure, but I do not think they all work on the App Store. The point is that the App Store is a big revenue maker for Apple and no just covering the costs to “provide the platform by which users download and update their app”.
Spotify wouldn’t be the business they are today without the App Store ecosystem, but now they’re leveraging their scale to avoid contributing to maintaining that ecosystem for the next generation of app entrepreneurs.
Apple would not be in business without the App Store ecosystem. Right? They talk about contributing to maintaining the ecosystem while Apple makes more revenue on it than they need to “maintain” the ecosystem. I also love that they are pointing to “app entrepreneurs”. I love how they diminish great companies like Uber, Snapchat, Lyft, Robinhood and others as “app entrepreneurs”. Sounds a bit cocky to me.
Just this week, Spotify sued music creators after a decision by the US Copyright Royalty Board required Spotify to increase its royalty payments. This isn’t just wrong, it represents a real, meaningful and damaging step backwards for the music industry.
This is untrue. I cannot even believe that a reputable company as Apple is spreading misinformation. Spotify has appealed a decision of the U.S. Copyright Royalty Board. The decision ultimately impacts the payout to songwriters, but they did not sue songwriters. It is a lot more technical than that.
The narrative of this press release is odd. I do understand Apple needs to fend off attacks on their revenue model, but this feels like misinformation and spreading untruths.
Apple is a tight run ship and it is extraordinary to see a press release like this.
Lode Runner is a highly addictive puzzle game. I wasted so many hours playing this game on my Commodore 128. An interesting fact is that the game came with a level editor.
The back story of Lode Runner is super interesting (from Wikipedia):
The prototype of what later became Lode Runner was a game developed by Douglas E. Smith of Renton, Washington, who at the time was an architecture student at the University of Washington. This prototype, called Kong, was written for a Prime Computer 550 minicomputer limited to one building on the UW campus. Shortly thereafter, Kong was ported to VAX minicomputers, as there were more terminals available on campus. The game was programmed in Fortran and used ASCII character graphics. When Kong was ported to the VAX, some Pascal sections were mixed into the original Fortran code.
Over one weekend in 1982, Smith was able to build a crude, playable version in 6502 assembly language on an Apple II+ and renamed the game Miner. Through the end of the year, he refined that version, which was black-and-white with no joystick support. He submitted a rough version to Brøderbund around October 1982 and received a one-line rejection letter in response to the effect of “Thank you for submitting your game concept. Unfortunately, it does not fit within our product line.”
Miner, like its text-based Kong predecessors, had only very simple animation where characters move across the screen in block increments. It was too primitive for an acceptable commercial product as Brøderbund wanted detailed pixel-level movement. Smith’s new game would be one of the first to include a level editor, a feature that allows players to create their own levels for the game
Successful games back in the 80s were developed tiny teams – often just a single person. I find that fascinating. Nowadays, the teams are huge with giant budgets. In the 80s, it was often just a handful of people.
The objective of the game is to collect all the gold (boxes). The guards are trying to stop you so don’t get caught. You can dig holes to trap them and you can walk over them. Sometimes you have to dig to get to a gold box. When you collected all the gold boxes, a ladder appears at the top of the screen and you can go to the next level.
Here’s a long play on the Commodore 64:
You can find many versions of the original Lode Runner on various platforms online. Below you can play the NES version.
Since X and Z are reversed, I highly recommend you change the controls. Click on the controller icon at the bottom when you start the game.
The other day, Ben Evans wrote a post “Microsoft, Facebook, trust and privacy” on the parallels between Microsoft’s virus problem and Facebook’s viral toxic campaigns problem. It is worth a read.
As usual, Ben makes very astute observations and sound conclusions. But let’s read between the lines a little:
– The impact of using viruses as an attack vector was reduced because we shifted to data storage and access from the PC platform to the cloud.
– Instead of Microsoft fixing the whole problem, the world fixed the problem for them (mostly).
– If you abolish the Facebook Newsfeed, you will not be confronted with viral toxic campaigns which is today’s attack vector for influencing public opinion.
initially, when confronted with a crisis people tend to look from WYSIATI point of view. This is the point where Microsoft decided to harden its software and the world to offer virus scanners.
But we ended up with cloud software. This rendered the virus attack vector mostly useless, but also solved the PC management issue in corporations. No more need to manage and update hundreds of applications across a large workforce. As long as they have a browser, it just works.
If I have to bet on social media or networks, I would expect a similar shift. Maybe Facebook can do it on their own, maybe something else will pop up. Virality made Facebook grow, but Facebook does not have to grow anymore. They are certainly in a position to reduce the virality on their platform without impacting their bottom line or growth.
If we do look at history than unbundling Facebook is probably the direction we are heading to. Instead of one company “owning” social media or networking, we are going to see hundreds of specialized niche social networks. Small groups are naturally better at keeping toxic behavior at bay which solves the moderation problem. Without a single monolithic platform, it is impossible to use virality as a distribution mechanism.
Maybe Facebook will unbundle itself, maybe someone else builds a “Shopify” for social networks. The future will tell.
The other day, I was reading Albert’s post Freedom from Wanting and it reminded me of the time we moved to New York.
We moved to NYC in early December 2010 from Eindhoven, The Netherlands. Moving to NYC meant wrapping up everything in Eindhoven and putting most of our belongings into a container to ship it over. Since this is old-school shipping with ports and boats, it would take 3 weeks. We lived in a short–term rental in Eindhoven for a week before flying to New York. We had an empty apartment waiting for us in Brooklyn. We only had our suitcases and an air mattress we had delivered from Amazon.
Since it would take another 2 weeks before our stuff arrived, we went to IKEA and bought two Poäng chairs and a Lack table. This is how we lived; an air mattress, a couple of Ikea chairs and our suitcases.
And then the snow blizzard over Christmas happened. The container with our stuff was stuck at the pier and no truck could come to get it. Since it was holiday time, everything slowed down. We had to wait another week before they could deliver our stuff.
In the end, we spent 3 weeks in an empty apartment. We celebrated Christmas in an empty apartment. And you know what? I was fine. It was a life changing experience. You learn that you really do not need most of the stuff you own. You can make do without them and it will not impact your happiness at all. I can even attest that it increased my happiness.
When the stuff finally came, there was a sigh relief. There were some things we did miss. But since that day, I wonder with everything I own why I own it and why I would want it. Over time, I have gotten rid of 70% of my stuff. It is pretty amazing.
You might ask yourself, how is this different from going camping? It is the same in many ways except one and that this was living a normal life. I still had to get up and go to work. There was no campfire, beautiful view or hike to entertain us. We were not “one with nature”, more like “one with the noisy smelly city” which is not the same. Really.
If you ever get the chance to do this, try it. It is truly life changing. At least, for me it was.