Blog

Blog

171 articles

.NET 9 is here. The upgrade still needs to earn its place.

.NET 9 brings runtime and tooling improvements. Separate the runtime decision from feature experiments and weigh support windows and testing effort.

#.NET 9

Your mobile menu should not need its own welcome committee

Vague labels like “Discover” make visitors guess. Put the important path in plain sight, don’t bury it inside general menus and let people return without restarting.

#Information architecture

Miami has robot kitchens. Someone still has to handle the missing chicken.

Automated kitchens still need menus that tell the truth about stock and capacity, orders that move forward visibly and exceptions treated as part of the product.

#Automation

Shopify’s REST API is legacy. Your integration needs a plan, not a panic attack.

Shopify marked its REST Admin API as legacy. Find out who owns each integration, migrate one business operation at a time and test the outcome.

#APIs

Interactive articles should let the reader learn something, not earn a badge for clicking

A small calculator can explain an idea fast or get in the way. Start with a question the reader can test, write the explanation first and test it with a person.

#Content design

PayPal’s refresh has a lesson for the least glamorous page on your website

PayPal’s 2024 refresh reaches past the logo into type, color and motion. The lesson: give receipts, forms and other ordinary screens a place in the design.

#Branding

API rate limits: the queue needs a plan, not more enthusiasm

600 labels at 60 requests a minute still takes ten minutes. Plan the queue, share the allowance between workers and let failures return with manners.

#APIs

Paid, packed, shipped: three systems telling three different stories

When checkout, fulfilment and support disagree, give each fact an owner, make duplicate updates harmless and reconcile the expected story with the real one.

#Fulfilment

The page can wait a second. The customer should not have to.

Laravel’s deferred functions, Cache::flexible and queues change when work happens. Choose which kind of later a task can safely tolerate.

#Caching

Tabs are useful when people can work out what is behind them

Tabs can tidy a page or hide what matters. Keep key context in the open, make each label a credible promise, build the interaction properly and test on a phone.

#Accessibility

What if your customer sends you the product?

Buyback businesses run checkout in reverse: the package arrives, gets valued, an offer goes out and a payout follows. Model each step as an explicit state.

#Buyback

A streak works better when someone else is in on it

Shared streaks turn a counter into showing up together. Match the interval to real life, make the commitment mutual and plan for the missed week.

#Community

Turn reading into results

Like what you’re reading? Let’s put it to work on your brand.