• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Dion Almaer

Software, Development, Products

  • @dalmaer
  • LinkedIn
  • Medium
  • RSS
  • Show Search
Hide Search

Archives for November 2017

Platform? Patience

November 14, 2017 Leave a Comment


“We are a platform company” — VC pitch

Whenever I hear this utterance I get curious to understand what this person thinks that means. Sometimes it ends up being related to wanting to be a platform company, but that is besides the point. If you really do end up being a platform company, then one key aspect of a great one is patience.

If you are fortunate enough to grow a business that has success, you now have producers and consumers working with you (I will switch to developers and users because I think about developer platforms :). Congrats! Just one small thing though….. it may start to feel like you are driving a boat vs. racing a Ferrari, and you need to account for that.

Hopefully you got into this situation carefully and have plans for keeping momentum and moving the ecosystem.

I once got stuck in a boat off of the Florida Keys. Everyone had forgotten that it was a full moon, and the tide came out quickly. This meant that we had a boat sitting on shale, and we had to slowly push it as fast as we could to catch up to the water.

The tides are always moving in your business too, and you need to make sure that you have a way to keep moving ahead of them. You could also argue that your role as a platform is to be the ocean, and thus you need to keep the tide moving, nudging the boats in the right direction.

To do this nudging correctly you need to be able to:

Communicate the vision of the platform

Where are you going? Why?

Keep the vision updated and get into the rhythm of “we are going over there!”, “remember when we said we were going over there? that time is coming!”, “we have made the change so you can go there, but haven’t broken you yet, but really…. time is running out!”, “ok, it’s really painful for you to not have made this change…. the warning signs are flashing”, “done.”

Have a connection to developers

How well connected are you to your developers. If you have an important message to get out to them, how many of them get it? Far too often a platform is shooting out UDP messages that get missed, and developers don’t even have the information to do the right thing for them and our users.

This can be really tricky. We have many ways to communicate, and most of them are lossy in some way, or don’t reach the right people on the other end. You can broadcast to email, or you can put messages in consoles, but do they reach a general “admin” account?

Knowing that you have a lossy protocol is important, and puts the burden on you to re-try across the board, and capture when there has been real action. There are plenty of basics to get right such as having the same messages reach the various touch points. E.g. can the central console messages reach developers in the tooling that they live in each and every day? Do the various tools even get the same message across? Often the answer is…. sub-optimal.

Have a connection to users

Do you have good control over the platform that the user actually has? Can you update it and secure it? Just as the connection to developers is key, so is this.

By moving the developers you keep upgrading the experience for users.

By moving the users you give reason for developers to prioritize.

By moving them both, everyone progresses, hopefully leading to much success for all

The patience part

Once you have a plan on how to keep momentum, you still need to acknowledge that you will probably have to be patient. Your platform priorities may not always totally align with those of developers and users.

With both, there are incremental updates which can work nicely (smaller changes) unless they are too small to prioritize.

With larger efforts you are reaching a new level, and you may find yourself running into a natural cycle. E.g. it’s been a few years and there is enough value to be had that the product team is ready to rewrite a large part of the system, giving them a chance to jump to the next level.

Now, building the next generation of primitives (and tools and ….) takes a long time.

A great example of this is the recent upgrade of web primitives. Alex Russell gave a talk on the multi-year journey, which is a great example of looking to the future and plotting all of the dots that will get you to a new location whilst bringing incremental value along the way.

It is fascinating to think back to some of the individual items and how the community has gone from “nah we don’t need that” to “man, it is so much more fun to build on the Web now with these primitives!” — I am looking at your ES2015!.

The larger you get as a platform, the more wrinkles you get, and you run into Hyrum’s Law:

“With a sufficient number of users of an API, it does not matter what you promise in the contract, all observable behaviors of your system will be depended on by somebody.” — Hyrum

This is where you can run into the feeling of momentum slowing, but you have to press on.

Sometimes this slowness is partially an issue of perception. When you are small you can see big movements in percentage terms, and you get excited (and ignore the small base). When larger the percentages can feel smaller, but the absolute change can be massive. A momentum change for a huge mass is a huge change, but it may not feel it, and there is always so much that you want to do.

We see perception issues with new platforms too. We humans are awful eye witnesses, and we are dreadful and remembering time periods. When a new computing model pops up, we forgot how long the last one took to really take and we want instant success. We see how obvious it is “we knew this would happen, because Star Trek!” and rush. Instead we need to remember that it takes time to truly bake in something new, and instead of rushing for “fake” adoption we need to nail use cases that add true value and build from there.

We also like to simplify and think in linear terms. Platform A begets Platform B begets Platform C. In reality platforms often evolve and, importantly, work together. This means that new paradigms are often accessories and amplifiers of current platforms….. and that is OK! Having and vs. or isn’t a bad thing.

Have the vision, have communication in place, measure the right thing, and be patient.

Nudging out screen time

November 4, 2017 Leave a Comment

I found myself on a long plane trip from Europe (the Firebase Dev Summit in Amsterdam, which was so much fun…. getting to hear from developers creating) and in the frozen-in-time-haze found myself looking at the old tale of a Rabbi helping a family in a small house, find contentment.

Living in the Bay Area, having a small area to live in definitely resonates. However, I then found myself rewriting the story, inverting the order of “filling up the space” and targeting an area that I struggle so much more with: creating a healthy relationship with devices and technology.

Here is the adaptation, which I believe is just as cheesy as the original 😉


A middle class man lived with his wife and six children in a very small house in Palo Alto. They were always on screens ignoring each other and it was driving the parents crazy.

Finally the man could stand it no more. He talked to his wife and asked her what to do. “Go see the psychologist from Screenagers,” she told him, and after arguing a while, he emailed.

The doctor greeted him and said, “I see something is troubling you. Whatever it is, you can tell me.”

And so the poor man told the shrink how miserable things were at home with him, his wife, and the six children all addicted to their screens. The poor man told her, “We’re either not talking at all, or we yell and fight to get each other off our devices. Life couldn’t be worse.”

The doctor thought very deeply about the poor man’s problem. Then he said, “Do exactly as I tell you and things will get better. Do you promise?”

“I promise,” the poor man said.

The doctor then asked the poor man a strange question. “Do you have any hobbies?”

“Yes,” he said. “I like sports, and hiking, and making things in the shop.”

“Good,” the doctor said. “When you get home, get the family to go for a walk after dinner each night.”

The man was hoping for advice around device usage, but he promised to listen to the doctor so he went home and after dinner took the family for a walk.

The next week the man met with the doctor. “We are all still arguing about screens“ he cried. “Going for a post-supper walk is nice and all, but it isn’t helping“

The doctor listened and said calmly, “Now go home and signup everyone in the family for a weekly piano lesson, with 30 minutes of practice, daily”

The chap did as the doctor said, but hurried back again the next week. “The piano practice is great, but still…. the screens!!” he moaned. The good doctor said, “Go home and make sure everyone reads for 30 minutes before bedtime.”

So the poor man went home and got his family reading at 8pm. But he ran back again the following week, still crying and wailing. “The reading is great and all, but still, too much screen time is afoot“

The doctor said sweetly, “My friend, you are right. Relax as a family and just play some board games.” And the poor man went quickly home and took out the backgammon.

The next month he came running back to the doctor again. “O Doctor,” he said with a big smile on his face, “we have such a good life now. We are getting exercise, and spending time with each other, and the kids are doing well in school. I hardly mind that we spend some time with technology. Our lives are so full elsewhere, it finally feels appropriate”


Any thoughts on success that you have had managing family balance are appreciated 😉

Primary Sidebar

Twitter

My Tweets

Recent Posts

  • I have scissors all over my house
  • GenAI: Lessons working with LLMs
  • Generative AI: It’s Time to Get Into First Gear
  • Developer Docs + GenAI = ❤️
  • We keep confusing efficacy for effectiveness

Follow

  • LinkedIn
  • Medium
  • RSS
  • Twitter

Tags

3d Touch 2016 Active Recall Adaptive Design Agile Amazon Echo Android Android Development Apple Application Apps Artificial Intelligence Autocorrect blog Bots Brain Calendar Career Advice Cloud Computing Coding Cognitive Bias Commerce Communication Companies Conference Consciousness Cooking Cricket Cross Platform Deadline Delivery Design Desktop Developer Advocacy Developer Experience Developer Platform Developer Productivity Developer Relations Developers Developer Tools Development Distributed Teams Documentation DX Ecosystem Education Energy Engineering Engineering Mangement Entrepreneurship Exercise Family Fitness Founders Future GenAI Gender Equality Google Google Developer Google IO Habits Health HR Integrations JavaScript Jobs Jquery Kids Stories Kotlin Language Leadership Learning Lottery Machine Learning Management Messaging Metrics Micro Learning Microservices Microsoft Mobile Mobile App Development Mobile Apps Mobile Web Moving On NPM Open Source Organization Organization Design Pair Programming Paren Parenting Path Performance Platform Platform Thinking Politics Product Design Product Development Productivity Product Management Product Metrics Programming Progress Progressive Enhancement Progressive Web App Project Management Psychology Push Notifications pwa QA Rails React Reactive Remix Remote Working Resilience Ruby on Rails Screentime Self Improvement Service Worker Sharing Economy Shipping Shopify Short Story Silicon Valley Slack Software Software Development Spaced Repetition Speaking Startup Steve Jobs Study Teaching Team Building Tech Tech Ecosystems Technical Writing Technology Tools Transportation TV Series Twitter Typescript Uber UI Unknown User Experience User Testing UX vitals Voice Walmart Web Web Components Web Development Web Extensions Web Frameworks Web Performance Web Platform WWDC Yarn

Subscribe via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Archives

  • February 2023
  • January 2023
  • September 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • November 2021
  • August 2021
  • July 2021
  • February 2021
  • January 2021
  • May 2020
  • April 2020
  • October 2019
  • August 2019
  • July 2019
  • June 2019
  • April 2019
  • March 2019
  • January 2019
  • October 2018
  • August 2018
  • July 2018
  • May 2018
  • February 2018
  • December 2017
  • November 2017
  • September 2017
  • August 2017
  • July 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • February 2014
  • December 2013
  • November 2013
  • October 2013
  • September 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012

Search

Subscribe

RSS feed RSS - Posts

The right thing to do, is the right thing to do.

The right thing to do, is the right thing to do.

Dion Almaer

Copyright © 2023 · Log in

 

Loading Comments...