gqt

Off late I have been dealing with API at work and home, REST and GraphQL. Came across this fantastic utility today – gqt. It’s a simple GraphQL client, but runs in the terminal. Using this in Visual Studio Code’s Terminal is so helpful when you don’t have to switch windows while working.

Give it a spin.

Markdoc

Came across Markdoc today, made by Stripe.

Stripe is know for its excellent developer documentation – well it has to be, its probably the most important feature for the company. If you go through their documentation is not just a good reference guide, but they also allow you to interact with it to get a feel on how to use the API effectively.

Stripe built their own content authoring system and have now released this as an open source project. It supports Markdown which makes it a joy to use this tool. The tool looks great too.

The tool is so easy and pleasing to use, that I have been using this to simply write my notes 😊

mitmproxy2swagger

Came across an interesting library (or tool) – mitmproxy2swagger that reverse-engineers REST API just by running the web app and sniffing traffic in the background. Once you are done, the tool allows you to download a yaml file. Open up the file in Swagger and voilà! Beautifully formatted API endpoint. Can be useful to document API for your application.

Pretty fascinating.

Microplastics are confirmed in human blood for the first time

Brad Bergan for Interesting Engineering:

These tiny particles can move freely throughout the body, and become stuck in organs — which could cause significant health issues. But now that we know, scientists are on watch to understand the full scope of effects — both short- and long-term, on human health.

It’s an unnerving discovery, but we’re all in this together as scientists rush to explore the potential health effects.

fuck.

Star”bucks”!!!

With the earnings season in full swing, this tweet just blew my mind:

JP Koning further writes about this on his blog:

Starbucks has around $1.6 billion in stored value card liabilities outstanding. This represents the sum of all physical gift cards held in customer’s wallets as well as the digital value of electronic balances held in the Starbucks Mobile App.* It amounts to ~6% of all of the company’s liabilities.

This is a pretty incredible number. Stored value card liabilities are the money that you, oh loyal Starbucks customer, use to buy coffee. What you might not realize is that these balances  simultaneously function as a loan to Starbucks. Starbucks doesn’t pay any interest on balances held in the Starbucks app or gift cards. You, the loyal customer, are providing the company with free debt.

And I thought Starbucks sold coffee (average coffee). The more I read, it feels like they are a bank (unregulated) where we have loaned them money for an interest rate of a free coffee every 120 points.

Let that sink in.

The New York Times buys Wordle

New York Times buy Wordle:

Wordle was acquired from its creator, Josh Wardle, a software engineer in Brooklyn, for a price “in the low seven figures,” The Times said. The company said the game would initially remain free to new and existing players.

I’m very happy for Josh Wardle, especially after the twitter-verse got behind him to take down all the copy cats, but this news hits hard. Guess we will find out how much we pay to play this game once a day.

Emotional Intelligence – An example

Justin Bariso writing for Inc. on explaining emotional intelligence when reporters asked Tom Brady if he was going to retire after the Bucs lost to Rams last weekend:

Never make a permanent decision based on a temporary emotion.

Nice, short and simple read, but does extremely well to explain how not to be emotional when making decisions.

As product managers we tend to get attached to the products we build and work on day in and day out but it is very important to keep our emotions aside while making decisions.

The 5G Airline Controversy: What is it about?

If you heard “5G”, “airlines” and “problem” and trying to figure out what is going on. You are not alone. James Fallows wrote a wonderful FAQ style article explaining what’s happening between the airlines and the wireless companies who operate 5G.

Short version: 5G versus the airlines is potentially a real issue, rather than a bogus threat. But it’s likely that the parties involved will work out adjustments soon. Which is a good thing.

Head over to the link to understand what exactly happened. I think the regulators have their hands full to read and probably re-write the rules.

Scaling with Process vs. People

Marty Cagan writing for SVPG on scaling your product with people instead of processes:

I loved reading this article particularly because he simply uses quotes from former CEO’s who have focused on people rather than processes to scale new heights for their product.

My favorite quote here is from Reid Hastings talking about Netflix:

“[The reason Netflix has been so successful is because it has] a culture that values people over process, emphasizes innovation over efficiency, and has very few controls. Our culture, which focuses on achieving top performance with talent density and leading employees with context not control, has allowed us to continually grow and change as the world, and our members’ needs, have likewise morphed around us.”

You need people to continue scaling your product which simply means creation of new software, hardware, service, etc

What’s in a Good Error Message?

I came across this great article by Gunnar Morling and have been wanting to repost this for a while… better late then never.

So what makes a good error message then? To me, it boils down to three pieces of information which should be conveyed by an error message:

Context: What led to the error? What was the code trying to do when it failed?
The error itself: What exactly failed?
Mitigation: What needs to be done in order to overcome the error?

The reason I find this article get is cause its coming from a Software Developer keeping other developers in context. I have worked as a Product Manager & a UX professional for several years now and Error messages is one of those areas which does not get much attention.

Its always at the back of your mind but other important aspects take over and error messages typically get overlooked.

Good error messages are important. When things go wrong, these error messages are the only communication channel between your software and customer. A good error message will allow your customer to recover well or submit a support ticket – and thats $ we are talking about.

The first comment by RossVertizan on this blog also has an important aspect for good error messages:

One thing that I would add is an indication of severity. Personally, I like to have every message preceded with a word which indicates the severity of the message