• 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 August 2013

Tension has a bad name

August 19, 2013 Leave a Comment

tension gives us beautiful music

As long as you can dispel it, tension can be very positive (in life, business, and everything)

I have been trying to keenly observe organizational dynamics and structures, and I find myself interested in the myriad of startups who are mindfully choosing how they grow their structure (a la Holacracy but not necessarily the full dogma).

Although you can look at tension as somewhat an analogue to balance, we think of it very differently.

How do we use the terms in every day language?

He is balanced
I want to be balanced

versus:

He is tense
I don’t want to be tense

I took a peak at some definitions, and you see the various different angles of tension:

  • A force tending to stretch or elongate something
  • Mental, emotional, or nervous strain
  • Barely controlled hostility or a strained relationship between people or groups
  • A balanced relation between strongly opposing elements

It Always Comes Back To Solving Problems

Being mindful of organizational changes is tantamount to looking at the problems that you are solving and why vs. just looking top down.

One of the simplest tactics is to list out the problems that you want to solve in priority order, and assign the correct amount of resource to tackle the problem, including correct and real ownership of the problem.

When I think of it that way, it reminds me of tension. Tension occurs when that problems to solve list builds up. If you are making progress and delivering solutions the tension isn’t a bad thing at all.

You have probably felt that with todo systems. You feel like you have won when you check something off and may even be the type of person who after doing a quick task that wasn’t on the list, added and checked it off, just to get that feeling!

It isn’t always easy finding the problems

You can’t solve problems and get that feel good check if you haven’t found them in the first place. Nailing the core truth of a problem is more than half the battle. Working it out is tough, and next you have to prioritize. It takes a lot of work before you get to the execute step.

Rethinking tension in a good way

This brings me back to tension. Let’s talk about organizations for a second. In an ideal world you have the smallest possible team of people going after a problem that is well understood by the team. Unfortunately it is rare to work in this fictional universe. Chances are there will be some dependencies between teams, and as soon as that happens you have to deal with a different level of communication normally due to an alignment mismatch.

The misalignment isn’t (normally) malicious, but natural. You want small teams to have clear goals and outcomes. Ideally these would trickle down from the top, but just like trickle down economics, in practice this isn’t so simple.

If you grabbed a random employee and asked them to walk the trickle chain, do you think they would be able to follow this?

“I am working on $A …
… which helps the goals of the next release due to $B …
… which helps push on the outcomes for my team $C …
… which ties to the strategy of $MyGroup $D …
… which rolls up to the strategy of $MyCompany $F.”

You want the teams to be aware of the goals, and for their to be a clear escalation path.

How about some examples? I work on a team that focuses on mobile solutions in the retail space. What makes a great mobile retail experience? Some answer “a responsive great mobile app!” Well, what does great mean. It is important to get the application made as well as possible, but this is not the long pole. Some of the most important experience drivers are “assortment”, “discovery”, “fulfillment” [e.g. shipping] and “value”. These are not about some UI in the mobile app. This isn’t about lipstick. This is about the holistic experience for the user.

There are often many silos put in place that are for legacy/political reasons. There seems to be a similar pattern that occurs when a revolution or technology/market shift occurs.

  • The current org isn’t setup to take advantage of the change (and it may be in innovators dilemma territory)
  • The org creates a new lean small group to tackle the change at speed
  • At some point the two worlds are misaligned and it doesn’t make sense to have separation and we see things fold in.

Let’s look at the examples of the Web, and the mobile revolution:

  • A group is running commerce in brick and mortar
  • The Web happens, and a group is created to build the eCommerce arm of the company. At first this may include a separate marketing group, sourcing group, engineering group, etc.
  • Eventually there is so much overlap that it makes sense to bring together ONE marketing group that cares about online and brick and mortar. THERE IS ONLY ONE CUSTOMER.
  • Mobile happens, and a group is created to build the mCommerce arm of the company. At first this may include a separate marketing group, sourcing group, engineering group, etc….. even separate from the eCommerce groups (look familiar?)
  • Eventually there is so much overlap that it makes sense to bring together ONE marketing group that cares about desktop online, mobile online, and brick and mortar. THERE IS ONLY ONE CUSTOMER.
  • [rinse and repeat]

We are seeing this transition again for mobile. At first many companies would outsource the development of their iOS / Android apps. Then they moved to create internal swat teams. Now they are looking to infuse mobile into every team (hard to find the talent isn’t it!)

Many screens, many front ends

We are now in a world of multiple front ends. We have the desktop Web, mobile (Web and apps), “tablet” being somewhere in between since it is “touch” and “not a small device”, and much more. So many contexts, and these are exploding. How do you build out experiences? I was just watching a Pixar movie and thinking about the world that goes into the collective product: the movie, the music (albums), the rich applications, the web site experiences, the toys, the rides, and more. Phewph. I can only imagine the tensions that come up between all of those teams. What is shared vs. what can the separate teams fully own? Think about the time lines involved and the communication overhead?

I would imagine that there are many inputs, and many people acting as sensors for information across all of this work. At first you can imagine frustration, but if you deal with the inputs and allow people to act on them to dispel the tension then you are actually in a better place.

I think it is universally acknowledged that having “yes men” is not a good thing. Group-think comes in different shapes and sizes. Sometimes it is a herd following a lead sheep in which case you aren’t getting thought value from the other sheep. If you are working on something where the act of following is where the value comes, then this is a feature. Another pattern that you see is when consensus drives to a poor solution for all. Not only do you get the “lowest common denominator”, but you also see folks all “being nice” and this leads to people driving somewhere that no one wants to be “I thought you would have wanted this… you don’t?”

Service Oriented

With so many silos or screens, you start to see people wanting to “services oriented” (with a lower case “s”). This lead to horizontal organizations with “services teams” and “mobile teams”. If those teams have their own goals, then you will need to break a lot of ties:

“The mobile team is dependent on service X from the services team, but they are focused on fighting a fire on service Y!”

Vertical

Then you see teams oriented not around a platform, but around a set of features, or ideally around a customer. Imagine a pharmacy team that has all kinds of engineers, product managers, and designers all focused on the pharmacy business across the various screens. The experience is for various pharmacy customers, and the outcomes trickle down from there.

What if someone on the pharmacy feature team has a different idea for something that is part of a particular platform? You need a way to break that tie.

An Aside

“We need a butt in the seat”

Time and time again you hear people talk about how you shouldn’t lower your bar. It can be hard to keep that will power when you have pressing demands and ship dates to make. The competence issue that arises from this really shows through when you get someone to fill a role in a competency, and someone else from another discipline can actually do a better job.

Imagine an engineer who is great with product or design. It can happen the other way around too, but that seems to be more rare probably because engineers will care about product or design more so than product / designers may care about coding say.

Breathe

I believe in the fly wheel effect when it comes to delivering product. Get good at tightening the turns. Rinse and repeat. Want to get better at shipping software? ship more.

Want to dispel tension? Find some areas to do so easily and take care of it.

Also, what is a great way to relieve tension in the physical body? Focused diaphragmatic breathing.

If in doubt, breathe.

The True Promise of Modern Cloud Computing: Empowering Imagination and Creation

August 14, 2013 Leave a Comment

Imagination and the cloud

Cloud instances are the “tmp files” of 2013

I was at the lovely Portland airport with Anthony Marcar who introduced me to Antoni Batchelli of Pallet fame.

For those who don’t know, Pallet is a fascinating take on programmatic automation of infrastructure, (written (in Clojure)). We like it a lot and it powers some of our eReceipt infrastructure. It flips the model of Chef and Puppet to some extent, so your programs become really aware of their environment and can scale themselves.

One comment from Antoni really hit home for me that day:

Creating instances is so inexpensive now that you can start to think of them in the same vein as we used to think of ‘creating a tmp variable’.

If you mull on that for a minute you start to re-think how you architect things in fundamental ways. E.g. Instead of trying to fix nodes, just nuke them and start a new instance!

When the price of something becomes so cheap that you can afford to throw it away (or recycle it) rather than fix it, the game often changes. This can sometimes be bad, when all of the costs are not accounted for (e.g. it doesn’t seem right to ship water in plastic bottles from Fiji… you know, for the environment). When the flywheel is positive though, innovation can happen.

Imagination and Creation

When I think about what makes humans interesting and different, a lot of it comes down to the fact that we can imagine and create. What does that mean?

You can make something appear in your head. If you read the word “Elephant” it has probably just appeared for you. This is pretty awesome, being able to place different realities into your mind

You can go even further than that, and create an image in your head of something new… a creation! It is pretty amazing that we can come up with new creations isn’t it?

I was looking at Joyent’s Manta service, which combines the worlds of compute with object storage. This unification is very interesting, and it made me think of creation in the mind.

What will be created in a world where it is cheap to scale computation tied to the data that you need?

With Manta I can create these worlds that contain the data that I need, with the environment surrounding the data. E.g.

I have this archive which contains the data that I care about as well as some node.js programs. Start up a few thousand instances of that world and Map Reduce (“OH: split and concat in Unix terminology ;)”) across them.

And just like that, you conjured a new universe, output a new creation, and the party moves on. As the technology matures the conjuring infrastructure is going drastically down, which means the limits are more on your imagination.

Fortunately time has told us that the human imagination is somewhat boundless.

Passing through the levels of hell to get to insights through Data

August 13, 2013 Leave a Comment

Levels of hell

From ignorance, to manual pain, to being owned by a tool, to helpful, to automation, to insightful

The “Internet of things”. It’s going to be big, as they say. I am excited about that world, but also fear that we have some stages of hell to go through until we get to the promised land.

Stage 0: Ignorance

It is said to be bliss, and I understand why. Before I wanted to track any data my life was so much easier. I could just Be. As I have jumped into other stages, there are times that I come back to this stage, wondering if it isn’t so bad after all.

Stage 1: Manual

For so much data, the tasks are so freaking manual. On the one hand there is an input coming from some device which is great, but I quickly find that I want to do something useful that is slightly off the beaten happy path, and my life becomes full of manual pain.

Stage 2: The Data Owning You

I fell into the trap of the data changing my behavior in negative ways. My case was to do with health. I was using a Nike FuelBand, and I was trying to optimize the fuel. Just as my body had been tricking me to get sugar into my system by putting thoughts into my mind such as: “You are thirsty. Drink Soda!” I found myself going for a walk rather than a bike ride (or even worse… lifting weights) just because I wanted The Fuel.

I see this time and time again. The data had gone beyond a useful input, and my world had been flipped to be all about getting a particular output, and when the calibration is incorrect bad things happen. I am looking for this miscalibration whereever I can now, and I fight to be at peace with the data showing me one input, and not obsessing over it when I know it is incomplete.

Stage 3: Helpfulness

When you are training a new system, you don’t have to jump to automation but can rather have the youngling start to feed you information.

I am looking forward to seeing more of this. For example, back to the health tracking scenario, as I use a tool to cultivate habits such as “Workout” using Lift say, it would be nice if a device on my person (e.g. my phone, or FitBit) worked out that I was at the gym and at least put that checkmark in a “I think you did this” stage. I could then correct it. When I look at my habits, there are many more of these.

Stage 4: Automated Connectedness

For example, one habit that I work on is “Learn Spanish”. Rather than tapping on a button to say “yup, did it!” I wish that Lift would be aware of the fact that I used DuoLingo today and marked it off the list for me.

When you get more connectivity between data sources it can then do so much more. Rather than the simple “check!”, fill out the comment with info on what was actually worked on.

When it comes to checking off the “Workout” habit, I put in what I actually did. Ideally this new world would know to put in the run info from Nike+ Running, or grab the work out info that I put into a Google Doc to track progress.

This is where I start to wonder about how data will be shared. Using IFTTT to wire things together is a great service, but far from ideal (especially for the average Joe). The trust model needs to get worked out. As soon as you give some level of access and the bits are copied over, they are out of your control. A lot of smart people are working on various models, but getting the balance of control vs. ease of use is really hard. A lot of the interesting data that you want to connect is private indeed. Think through your use cases and then noodle on what you would be willing to share. Than think about what people could reverse engineer with some of that data (e.g. your location!)

Stage 5: Insightful

Once we have truly connected data with smart automation, the data starts really working for you. It isn’t enough to be capturing data though. We have seen that with the “Big Data” movement. I now see a lot of companies filling up storage and pushing Hadoop and Cassandra, but WHERE ARE THE INSIGHTS!

Once we start to see the insights coming we will get another level of “a ha!” moments. We see see glimpses of this via services such as Google Now. As we learn that “great experience” != “flat design” and see that context and data are actually king makers, we see the fact that Google has a great role to play.

Much of what makes a great experience is the balance of output to input. The iPhone was awesome as it gave us access to the output of the Internet in a beautiful and useful form (Mobile Safari vs. Blackberry etc). The one area that some held against was the lack of a tactile keyboard, and I am still hopeful for haptics to come to play some time soon. Data and context can do magic by giving us output without manual input.

Stage 6: The Machines Take Over

Other than profit, where do we end up? Well Terminator 5 of course.

I am genuinely excited to see the data revolution kick into gear. With an open platform we will see people bring insights into our lives and the end result will hopefully be in seeing the chance to get to a higher purpose in our lives, health, and happiness.

Until then though, I am getting ready to jump through some hoops as I scale some levels of hell.

Next Page »

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...