The World

Don’t Panic! The Universe Expanding Faster Than Expected.

When things seem a little “off”, you might be right. Not only is the universe expanding, but it is expanding faster than we (i.e. astrophysicists) thought. But don’t worry, we’re only off by about 9%.

Look for the word “megaparsec” in this article. It means 3.26 million light years. 🚗💫🤯

An existential nightmare

Scary stuff…

If dark energy remains constant, everything outside our galaxy eventually will be moving away from us faster than the speed of light, and will no longer be visible. The universe will become lifeless and utterly dark.

As the universe expands, the push from phantom energy would grow without bounds, eventually overcoming gravity and tearing apart first Earth, then atoms.

But just a theory so far

Let’s science the sh*t out of this…

Two space missions — the European Space Agency’s Euclid and NASA’s Wfirst — have been designed to study dark energy and hopefully deliver definitive answers in the coming decade. The fate of the universe is at stake.

Software Dev

From Four Wheels to Two – Lyft Engineering

This is Lyft’s approach for adding a major new feature to their app. -> eng.lyft.com/from-four-wheels-to-two-403bcf1cbf59

I heard about this on the iOS Dev Discussions podcast.

Summary

  • Stay simple and lean
  • Reimagine over reinventing – ““Is it faster to rebuild this or reuse this, and what will we regret later?””
  • Launch what matters

Feature flags, feature modules, launching early and iterating small, facing questions they didn’t have answers to until they did some real world experimenting and iterating.

Love this…

Every new feature is a chance to start with a clean slate, and it’s often tempting to immediately build for scale. We all want our products to launch to massive fanfare and usage, but more often than not, the path to success for new features is slow and steady. With steady growth in mind, we designed our first architecture to support exactly what’s needed for our first product iteration, and nothing more

Also…

The computer scientist in me was angry, but when the datasets are small enough, reasonable tradeoffs can be made in the short term without sacrificing the user experience. When choosing the “rewrite” approach, it’s important to be confident that the code will stay simple and easily explainable. In this case, the algorithm wasn’t perfect, but it worked reliably and quickly.

Software Dev

Building reliable apps on unreliable networks – Superhuman

This post describes how we detect and communicate network status as part of making Superhuman the fastest and most reliable email experience in the world. Our previous post described an offline…
— Read on blog.superhuman.com/building-reliable-apps-on-unreliable-networks-3f75743fc457

Summary

In this case, they detect online/offline state in a web browser mostly for the purpose of communicating that state to the user so they can tell what is going on.

The web app keeps track of network state. If a network request times out, the state is set to offline. Then it polls every 10 seconds to see when the network comes back online.

This approach seems alright for a webapp, but in a mobile app I think we’d avoid polio every 10 seconds to see if the app is online. Perhaps poll on the next natural network request instead, or trigger on events such as view-will-appear or return-to-foreground.