Diary of an Agentic Wrangler (part 4)

On these pages, I’m keeping notes of my experimentation with new AI based software development tools. My goal is to understand for myself whether tools like Claude and Codex are ready for developing commercial software. Low code and zero-code tools have been around for a decade or so – this is not the same. Vibe coding has been around for a few years as well – this isn’t the same.

This new approach has various names – agentic coding, spec driven development, personally I think “intent driven development” captures it best, though I’m confident that name won’t catch on. With intent driven development – I’m responsible for the what, the AI is responsible for the how.

As the cost and time to develop software shrinks, the focus will shift to other critical elements of the product lifecycle. I believe the next areas of differentiation for builder / product organizations will be:

  • Choosing hard problems to solve and solving them in ways that delight users. The easy problems can now be easily solved with a few well authored prompts and a vibe coding platform. Vibe Coding is incredible for solving small local problems – it’s the new Excel (and I mean that with a huge amount of respect)
  • Accelerating all the other toil related to building and product – pricing, training, marketing, enablement
  • Convincing enough people that your solution to the problem is the best. As time to market collapses, you have to assume competition and cheap imitation will be rife – how do you stand out ?

And so it is with my little pet project. I’ve invested 6.5 hours in the development of the application – included in that is some overhead in getting the development environment setup (GitHub automation, local Xcode), design, development and building regression test harnesses. For fun, I did a little costing analysis on the main code repo using scc – clearly COCOMO hasn’t really kept up with even pre-AI development tools but it’s a good way to reason about the magnitude in productivity – 8 months compressed to a week – even if the COCOMO estimate is out by a factor of 10 – the point still stands.

โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Language Files Lines Blanks Comments Code Complexity
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
TypeScript 65 8,455 681 302 7,472 796
SVG 24 281 9 0 272 0
JSON 8 192 4 0 188 0
Swift 4 211 24 35 152 16
CSS 3 388 50 11 327 0
JavaScript 2 49 1 2 46 3
HTML 1 17 1 0 16 0
Markdown 1 22 9 0 13 0
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Total 108 9,615 779 350 8,486 815
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Estimated Cost to Develop (organic) $725,251
Estimated Schedule Effort (organic) 8.18 months
Estimated People Required (organic) 2.77
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Processed 467665 bytes, 0.468 megabytes (SI)
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

But that’s not really the point of this post. In my humble opinion, software development for low-stakes, greenfield problems are largely solved at this point and development time and cost is collapsing – it’s hard to debate this any longer and I personally don’t require any convincing. I don’t see an imminent plateau either – even if the models are throttled – agentic development can still scale in other ways. The way we develop software – heavily augmented with AI and human as the designer / orchestrator – that’s the way – there’s no going back.

So on to the next bottleneck – that’s pretty much everything upstream and downstream of software development. Software development is the tip of the spear in terms of agentic augmentation and performance improvement – everything else is next.

I spent a few frustrating hours this week downstream – fighting with the Apple TestFlight review process – clearly the user-centric design and detail to attention that Apple products are known for is pretty much absent from their developer tooling. I won’t belabor the point here but it’s classic “toil” – work that has to happen but brings you no joy at all. But it does highlight the point about the whole product lifecycle – everything has to get leaner and faster – it’s not going to be acceptable to wait three days for an App Store approval if the app only took a day or two to develop. You can’t spend a month on a marketing plan for a new release if the release will be out in two weeks. Everything has to speed up.

As part of the early access stage for my little test app – I needed an onboarding process. I could have used the Apple TestFlight defaults but want to own the onboarding and capture some user information in the process so I pretty much single-shotted a simple website (hosted on GitHub pages) and setup a Google form to capture registrations – not as automated as I’d hoped but mostly a one time cost.

Now I have the simple web presence – I have a home for the app’s change log so I got Claude to create an Action to create release notes every time I push a new release. The only twist here is that the Action calls out to Anthropic to turn PR text into human readable release notes – so far It seems to work well.

How we think about planning and project management will have to change. Even for a small one man project – normally there would be some planning involved but what I’ve learned this week is that if you have time to write a GitHub issue or a Jira ticket, then you probably have time to “do the thing” you were going to write the ticket about. What kind of planning is eve required in world of constant feature delivery – all you really need is direction / themes and prioritization.

The next thing I’m thinking about is how to take this experiment further – I have the first batch of beta users (you can sign up here if there are still slots available) and I expect to get some feedback – I’m hoping I can largely cut myself out of the loop. My goal is for Claude (or whatever) to present the work planned for the next release (new features, bug fixes, tech debt) based on customer feedback and product analytics – let me review it then just get on with the implementation, testing and delivery. Self improving software / products / systems with human defined policy and guardrails – that’s where were heading. Sure someone still needs to inject strategy and innovation into the loop but product maintenance and improvement can be largely automated.


Diary of an Agentic Wrangler (part 4)

On these pages, I’m keeping notes of my experimentation with new AI based software development tools. My goal is to understand for myself whether tools like Claude and Codex are ready for developing commercial software. Low code and zero-code tools have been around for a decade or so – this is not the same. Vibeโ€ฆ

Diary of an agentic wrangler (Part 3)

FWIW – my day job is running a largish (28 people) Product and Design team for Cellebrite. Cellebrite has nothing to do with Espresso – though some of the offices do have decent machines. I’ve been leading product teams for over 20 years and that background is driving how I develop software with Claude. Forโ€ฆ

9Bar – your espresso co-pilot

At the start of the year I re-started my home espresso obsession having grown dissatisfied with the declining quality of Nespresso pods. This isn’t my first foray into home espresso and I’ve owned a range of machines over the years. I bought my self the entry level but pretty dependable Breville BES840XL and a oneโ€ฆ

Diary of an agentic wrangler (Part 3)

FWIW – my day job is running a largish (28 people) Product and Design team for Cellebrite. Cellebrite has nothing to do with Espresso – though some of the offices do have decent machines. I’ve been leading product teams for over 20 years and that background is driving how I develop software with Claude. For new feature releases I batch several related features (and bugs) and build them into a sprint – the sprint happens in a single branch. Sprints are 1-3 hours – usually on a Sunday when things are quiet. For major features I use plan mode judiciously – I rarely single-shot anything. While I have no desire to look at code (actually one of my goals) – I do want to understand how the design (technical and UX) is evolving and what the underlying data model is. I also have a medium term roadmap of sorts – and when I’m in plan mode with Claude – I’m constantly reviewing decisions related to the current work that may impact things I need to do in the future. This week’s Sunday sprint was a good example of that.

What I actually wanted was a more convenient way to sync data across devices (iPad, iPhone) – currently there’s a hack in place to back up and restore data to iCloud – it works but it’s a temporary hack. To access iCloud APIs – the app needs access to iOS native APIs so what I ended up doing was pulling ahead with the native wrapper work. I’ve been avoiding this because It adds a whole lot of Yak shaving – setting up an Apple Developer subscription, installing XCode, wrapping the react app with Capacitor, not to mention potentially breaking the app. In the pre-agentic world this would’ve been months of prep and work – now it’s the kind of thing you can pull off on a Sunday evening while half watching TV with wifey. The first step was planning – the work that needs to be done, the risk and mitigations – a few tweaks to the plan and go. The major worry was breaking the barcode reader – one of my favorites – the mitigation was pretty much a rewrite of that code. While Claude was coding – I set up XCode and signed up for an Apple Developer account.

After some jangling around in XCode trying to figure out how to get the app on my phone (without having to go via the App Store – something for another day) and backtracking to get the app icons in the right place. That small magical icon appeared on my screen. My first iOS app !

Click – nothing. Well not nothing, but the rendering was broken – somehow the screen dimensions were not taken into account so the app was visible just zoomed in to a region of the canvas with nothing on it – quickly fixed and redeployed. Straight to the home screen – loaded my current config and data and looked like everything was working – except dark mode – what happened to dark mode ? Another debug session and quickly fixed and redeployed. From visual inspection – everything looked to be working – probably 90 minutes to wrap a reactive app with Capacitor and change to native calls.

The thing I actually wanted was iCloud synching – so I started a smaller sprint to get that working. I thought it would be smaller – a fair amount of debugging was required here and Iโ€™m starting to think Claude really isnโ€™t quite expert level (yet) – it has the breadth maybe, depth Iโ€™m less sure. It took some debugging and some design iteration but we got there eventually. I donโ€™t think an expert would make the kind of mistakes I experienced during this sprint and itโ€™s disconcerting when Claude admits – โ€œoh yeh, I should have realized that function would fail if we hadnโ€™t initialized the XYZ firstโ€. Early days I guess. At some point – I may run the repo against another coding agent and get a second opinion on some of the design choices.

So I now have a fully functioning iOS native app running on iPad and iPhone with iCloud synching across devices. I’ve also published the app through TestFlight so if you are interesting in trying it you can sign up here. Part of the publishing flow discovered that the 9Bar name was already taken so had to rename the app – that was a lot of changes. Next time Claude suggests a name – I’ll ask it to verify domain names, app stores, USPTO, etc. Trust but verify !The next significant enhancement is integration with the Half Decent Scale – this will be a real test for Claude – this involves controlling a remote device over BLE.

9Bar – your espresso co-pilot

At the start of the year I re-started my home espresso obsession having grown dissatisfied with the declining quality of Nespresso pods. This isn’t my first foray into home espresso and I’ve owned a range of machines over the years. I bought my self the entry level but pretty dependable Breville BES840XL and a one shot burr grinder – the Viesimple Gen 4.

I have a couple of go-to beans from my local roaster (Counter Culture) but also like to try new roasts and usually pick up a bag or two when I travel. Every new bean takes a couple of shots to dial-in (grind, dose, pull duration, etc.) and I was keeping a log on Notes app, and scribbling the grind size on the label of the bean jar. A workable system but not ideal and not scalable.

About the same time, I was starting to play with LLM-based coding agents – Claude, GitHub Co-pilot, Codex, etc. and though it would be good to try a couple of real life software projects from ideation all the way through to delivery to get a sense of how the technology has evolved over the last couple of years. I learn best by doing.

So, over a rainy memorial day weekend I wrote a specification for a basic app to track my caffeine experimentation, used Claude Design to come up with mobile UX (iPhone and iPad) then brainstormed Claude Code on the best starter implementation and within a few hours and a few iterations – I had something working.

After a few more weekend design and development sprints – I added a QR code scanner and URL scraper for adding new beans to my collection, created a flow for pulling shots and rating them and few other tweaks. Beta testing consists of pulling a morning shot using the app for a week then making changes the next weekend. I wish all beta testing tasted this good.

I’m now at the point where I think the app is actually useful and would like to share it with a few more people to get some feedback. If you are interested – leave a comment or drop me an email at sharps [AT] softwhere [DOT] org. It’s not a self contained iOS app (yet) and you need to be able to run the app on a desktop or laptop on your home network using npx (Node Package Execute) – if none of that means anything to you – you’ll need to wait a little longer for the native iOS app.

Some near term goals for the app :

  1. Integrate it with the Half Descent Scale so the app can control the scale and also pull the timer and yield info straight into the app – I’m currently doing that manually
  2. Re-order beans directly from the app.
  3. Wrap or re-write the app so I can push it to the app store
  4. Move the storage to the cloud so you can easily synch between devices

Why the cryptic name ? 9 bars of pressure is the gold standard for brewing authentic espresso.

Grand Canyon North Rim 2024ย – Part 2

Day 4 – Arizona Trail to East Rim

After another good breakfast at Cafe Feellove in St George, we headed over to the Red Lion Hotel to meet our fellow riders, and our RimTours guides – Beth, Birdie, and Lauren. After meeting the crew we loaded our gear onto the trailer and headed to our start point 2 hours away on the Kaibab Plateau.

We stopped briefly at the Jacob Lake Visitor Center to pick up three more riders and drop our rental car. then another short drive to pick up the Arizona trail once we got our bikes setup.

The first day was pretty light (just 14 miles) but had a couple of short technical climbs. All the riding was between 8500ft and 8800ft and this was my first exposure to strenuous exercise at a decent elevation. Our guides warned us to take it easy on the first climb – I really had no choice – it felt like I was breathing through a mask ! After a quick lunch stop and more bike adjustments, on to our campsite for the night at the East Rim Overlook. Note – campsites here are basic – usually just a sign telling you where you can and can’t camp. No pit toilets, no water, no shelter, no network. You have to bring everything you need with you – or in our case pay RimTours to do it !

Strava Activity

Day 5 – East Rim to Rainbow Rim

Still on East Coast time, I was up early enough for the sunrise yoga / stretching overlooking the Colorado river. The 4th picture below is the site of our “Groover” which seems to find the most scenic viewing spots one these trips. After breakfast and decamping – we jumped back on the Arizona Trail. We had a much longer ride (32 miles) – some single track, some high-prairie, and some forest service roads. We peaked around 9000ft but ended the day at Locust Point campsite around 7600ft. Fortunately for my lungs – not much climbing but it was a long day of riding and once we had setup camp and eaten another awesome dinner prepared by our guides – it was time to grab a beer and watch the sunsetting.

Strava Activity.

Apple Vision Pro

If you know anything about me, you know the two things that test my resistance are bike shops and the Apple stores. So, over the weekend, I found myself in the local Apple store and chatted with the guy serving me. The discussion led to the Vision Pro. With a bit of time on my hands, I agreed to a quick 15-minute demo.

I wear progressive lenses with a pretty complex prescription, so the first potential hurdle was getting the optical inserts set up and whether they would even support my prescription. Apple has an in-store machine that will measure your existing eyewear, so you don’t need to have your prescription details. That worked incredibly quickly, and the store will even mail you the settings for later use.

The headset is quite a bit smaller and lighter than I expected – I have owned the last few iterations of the Meta headset, and they’re much bigger. The device feels well-engineered, and the materials feel the quality you’d expect on a $3500 device.

I only had a quick 15-minute scripted demo, so I didn’t have much time for free play, but here are the things that really jumped out at me.

Ergonomics – It may help that I’m a long-time Apple user, but the user interface felt incredibly natural – after just the briefest of explanations, I could open, close, move, resize windows, zoom, and scroll. This in itself is incredible for a couple of reasons:

  • There are no hand controllers – you just use your eyes to select things on the screen and your fingers to perform operations
  • The accuracy is pretty impressive, considering what is going on here.

With one exception – you have to use the watch-like bezel on the headset for specific operations – there has to be a good reason for this departure from the hand gesture UI – I just can’t think what it is.

Video and audio quality – the regular UI is really nice – if you’re used to having one or more big curved monitors on your desk – you will be at home. Where things get really amazing is the 3-D immersive video. The demo movies were on par with a recent trip to the Sphere in Las Vegas – parts of your brain really are tricked into thinking that you are there, inside the movie. There were a couple of demos of sports games. I think this could be an opportunity for Apple – for the real sports aficionado – the sticker price probably won’t be a significant obstacle – I just don’t know how many broadcasts take advantage of the technology today – if the EPL gets on board. I will have to take a second look! Watching regular TV and movies – I’m less certain about that – those things are relatively social activities and I can’t imagine households buying multiple headsets.

For me, the question remainsโ€”would I buy it, and more importantly, would I use it? The short answers are โ€”no, I didn’t buy one, and no, I don’t think I would use it. I can say this with some certainty as I bought the last couple of iterations of the Meta headsets and stopped using them after about a month.

The longer answer is less certain. I’d love a more extended session with a keyboard and mouse pad and determine if it could be used for work. My current office setup is nice, and the cost easily exceeds the price of a Vision Pro. The problem with the work use cases is that Apple really caters to creative workers – designers and developers – both need decent power on their desktops. The Pro is M2 powered but specced like a mid-range laptop – if you are doing builds, video encoding, etc., that probably isn’t going to be enough given the horsepower needed to deliver the Pro UX. So you’re likely going to have your regular laptop/desktop and use the Vision as the display – that is currently supported, but I didn’t play with that feature – I think that could be pretty neat. I have a few Apple (and other) machines in my office and use virtual displays regularly.

I think AR/VR’s time will come as the technology evolves and the use cases and killer applications become more apparent. What we see with the first version of Vision Pro and Meta’s latest offering are incremental steps in a revolution in human/computer interaction. I’m looking forward to a longer demo and to see what version 2.0 looks like.

Mission, Vision, Strategy

I covered Roadmaps in a previous post, but product roadmaps cannot be created in isolation. Roadmaps must support your company or organizationโ€™s strategic direction captured in its Mission and Vision. Iโ€™ll outline these essential concepts and explain how they are connected to form a strategic planning framework.ย 

First, clarifying the terms Vision and Mission is necessary. Iโ€™m using the term Mission to mean โ€œthe organization or productโ€™s reason for being.โ€ Mission is often used synonymously with Purpose, which I will use interchangeably. Occasionally, Mission is sometimes used as a synonym for Vision, but I find this confusing and will avoid doing this.

I use the term Vision to mean the organization or product’s future state – i.e., where the strategy will take the organization or product.

Mission

Your organization’s Why” is its core purpose and reason for its existence. It defines the fundamental value your brand contributes to your customers and users, the market, or the world and the positive impact it strives for. Think of it as the North Star that guides your decisions. 

Your Mission should be captured and shared as a clear Mission Statement. Your Mission statement must be ambitious but also practical and achievable. It should also be durable and relatively static – itโ€™s not uncommon for successful companies to have the same Mission for the organization’s lifetime. 

Itโ€™s not uncommon for organizations to have an undeveloped or unclear Why – If youโ€™re interested in developing or improving your organizationโ€™s Why, you could do much worse than start with Simon Synek’s Why, How, and What.

Vision

Your Vision is your organizationโ€™s “where” or aspirational future state. It paints a vivid picture of the market landscape when everything goes according to plan, considering future trends, threats from your competition,ย  and opportunities. It serves as the guiding light for long-term investments and innovation efforts. Vision is about the future. Vision is aspirational and typically has a 3-5 year horizon.ย 

Strategy

Your strategy is the actionable plan to achieve the vision. It translates the broad aspirations of the vision into concrete steps, considering resource constraints, market realities, and technical feasibility. It should be adaptable and responsive to changing market conditions and emerging technologies. In a larger organization, you will likely have a refinement of the corporate vision specific to the business or product, but the connection should be clear.

I present the hierarchy like this to represent the organizational altitude because itโ€™s much more natural in larger organizations with multiple business units or products. It also helps you to think of the duration of these terms. At the top of the pyramid is Mission or Purpose – this could and should not change significantly over several years, decades, or even the organization’s lifetime. Vision is more likely to have a 3-5 year horizon. Strategy and Goals are linked to annual planning, and the Roadmap gets down to specific months, quarters, and year halves. 

Likewise, Mission, Vision, and Strategy are typically defined at the company level and cascade down to business units or products, which will refine Strategy and Objectives to focus on the elements they can deliver or support.

Goals

Iโ€™m a big fan of OKRs (Objectives and Key Results) as a way to define and manage the execution of strategic goals, and I have successfully used OKRs in large and small organizations. Well-written OKRs help your team or organization achieve focus, accountability, engagement, transparency, and visibility. If youโ€™re unfamiliar with the ORK framework – thereโ€™s no better place to start than John Doerrโ€™s 2018 Ted Talk. There are many other goal management frameworks, and the advice below is general enough for any method. The important thing is that strategy alone is not enough – execution of the strategy needs to be monitored and managed. 

Objectives capture your strategic initiatives – i.e., what your business unit, team, or product must do to support the business strategy or higher-level Objectives. They need to be inspirational enough to motivate people but also attainable to some degree – i.e. successful attainment should be between 80 and 120%.  Well-written objectives clarify what the organization should be working on. Objectives shouldnโ€™t be used to track an organization’s ordinary/mundane operations – you should have other ways to track those things. OKRs are better for monitoring ambitious goals- i.e. to help you achieve extraordinary results. 

โ€œWithout strategy, execution is aimless. Without execution, strategy is useless.โ€

โ€• Morris Chang 

Each objective must have one or more Key Results – how you measure progress and ensure you stay on track to meet your objectives. Each objective should have between 2 and 5 Key Results at a given organizational level. 

OKRs should be part of your annual planning, with quarterly reviews and the potential to make changes at least biannually. 

In larger organizations, OKRs cascade down the organization. Depending on the nature of your OKRs, you could define supporting objectives at each level in the organization or have objectives that apply to all levels and Key Results defined at different levels so the results contribute to the level above. 

The Whole Picture

There is plenty of literature on crafting Vision Missions and strategy. Iโ€™m not going to go into any more detail in this post – but as a Product Manager – itโ€™s essential to understand how the concepts are connected. More importantly – Visions, Strategy, Goals, and Roadmap must be clearly and unambiguously connected.

Summary 

To summarize, the mission is about the present, the vision is about the future, the strategy is the plan to achieve the vision, and the goals are the objectives that capture your strategic initiatives. OKRs are a great way to define and manage the execution of these strategic goals.

A well-defined Mission, Vision, and Strategy with clearly aligned Objectives will ensure your organization has focus, clarity, and the inspiration to succeed. 

Product Roadmaps

We donโ€™t need stinkinโ€™ roadmaps! Yes, you do, except in some rare circumstances, which Iโ€™ll outline below. 

For clarity – letโ€™s define the term:

A product roadmap is a visual summary that maps out your offeringโ€™s features and capabilities over time and helps your customers and stakeholders understand your direction and progress toward fulfilling the productโ€™s goals.

There are many reasons you need a product roadmap.

  • If for no other reason, you need a roadmap for your medium-term (e.g., quarterly) planning. In this case, your roadmap is nothing more than a wish list of features with some form of prioritization. If you donโ€™t have this – you canโ€™t plan. 
  • Your engineers and other downstream collaborators need to be able to see further than the next 2 or 3 sprints. Knowing whatโ€™s over the short-term planning horizon will help them make more informed design decisions, optimize hiring and training, and support better resource allocation.
  • If you are a B2B product company – your salesforce needs a roadmap to understand how the product will close a competitive gap or when you will deliver a capability required by a particular customer segment. Your roadmap helps sales plan their engagements more efficiently and effectively. 
  • Enterprise (B2B) customers need a roadmap – it helps them determine whether you are progressing toward your stated product vision, and it helps them plan upgrades, expansions, or migrations. More practically, it allows them to understand where you are vs the competition in addressing their needs. 
  • Most B2B sales combine what you have in the product today and what your roadmap and vision tell the customer about where you are heading. 
  • If you are in a larger company – your leadership needs to know that you are investing the company’s finite resources in the way that gives the best return and helps attain the company’s objectives. 
  • If you are a startup, your investors/board will take an even keener interest in your investments – in many cases – itโ€™s their money. Expect to defend your investments and the roadmap. 

If your management or investors arenโ€™t interested in your roadmap, you may have more significant problems. Iโ€™ve experienced this when revenue and growth are the only indicators of product success. Unfortunately, revenue and growth are trailing indicators – they only expose mistakes already made in the last quarter or year. Product roadmaps (and justification and prioritization behind them) can give organizations better insights before resources are committed and potentially wasted on the wrong things. 

There are situations where you donโ€™t need to share a roadmap beyond the immediate product team, and the roadmap is primarily a planning tool and a way to demonstrate progress to your management or investors.

  • If youโ€™re releasing a barebones MVP to assess Product Market Fit – you donโ€™t need a roadmap.
  • If you are a B2C product company – your customers don’t need to see a roadmap – have you ever seen a roadmap for your favorite smartphone or video game?
  • If you have a very stable product in a very stable market – your customers probably value stability over change – a roadmap is not going to be a priority and will be limited to โ€˜featuresโ€™ that show customers that they can depend on your product to keep working the way it does (e.g., support for newer hardware or operating systems)

In short, if youโ€™re a product company, your product roadmap is your product strategy manifest, how you plan to make the proper steps towards your goals. Everything on your roadmap should align with your goals in support of your vision and objectives.

If you think visually, this diagram may help tie vision, strategy, and roadmap together.

Who owns the Roadmap?

Product Management is ultimately responsible for maintaining the roadmap, but creating the roadmap is a collaborative effort. Your stakeholders in sales and marketing need to be aligned with your roadmap and understand the next level of detail behind the roadmap. Your stakeholders need to be sure that the roadmap is aligned with and fulfilling your vision and strategy – there needs to be a direct line between the roadmap and the strategy – if your stakeholders understand the strategy, then there should be no surprises on the roadmap because they will be fully aligned. 

Tools

I generally prefer to present roadmaps from the tool I use to create roadmaps – ProductBoard is my current favorite, but tools like Monday, Ignition, Jira Product Discovery, etc., all allow you to manage and prioritize features, align with goals and strategic objectives and pull together an interactive and professional roadmap. There are a few occasions when you may need to pull a roadmap presentation into a slide deck (board meeting, strategic customers), but your PM planning tool should be your only source of truth for the roadmap. I find using a specific roadmap/planning tool gives you more credibility – everyone knows you can throw together a roadmap slide five minutes before the meeting – using the tool that drives your planning is a different level of commitment.

Scope, detail, and uncertainty

For a fast-moving product company in a fast-moving market – a 2-3 quarter roadmap is sufficient, and anything beyond that is highly speculative. I prefer to be very explicit about that – thereโ€™s a bucket of features over the planning horizon – these things are still worth sharing – your audience (internal or external) can help you prioritize those features. Different markets and products will have different dynamics – a roadmap for a mature product in a mature market will have a much more static roadmap, and planning could extend into 6-8 quarters for major features or releases. These are generalizations, obviously – even mature products will occasionally have to be agile and quickly plan and release new features at the expense of roadmap stability. Likewise – if you are in a fast-moving segment, you will still have strategic roadmap items – like significant architectural changes or re-platforming, where the work takes longer. Hence, you need a longer planning horizon and roadmap. 

There will always be some uncertainty on a roadmap. The further out something is on the roadmap – the lower the certainty and detail. Beyond one year – my unplanned bucket is nothing more than curated feature ideas with little detail or commitment behind them. Conversely, in the near roadmap – this quarter, next quarter – many of these features should be committed, i.e., Planned – you likely have a level of detail that allows you to engage with design and engineering and may already have an execution plan (e.g. Start sprint and sizing/cost). You will have a lot more detail and may already share details such as wireframes and conceptual designs with customers and internal SMEs. My rule is that your next quarterโ€™s roadmap should be 80-90% accurate, two to three quarters out – 50-60% accuracy, and beyond that 20-30% – ie. Largely speculation.

Finally – roadmaps are an honest attempt to share how you are executing against your stated strategy or vision. Still, the only thing certain about a roadmap is that nothing is certain about a roadmap. I always lead with the caveat that things can and will change, and many larger organizations Iโ€™ve worked with have legally-approved disclaimers on roadmaps to make it clear that they are not legally-binding commitments. Occasionally, there will be exceptions – some items on your roadmap are high-integrity obligations to customers, partners, and other internal dependent teams, but everything else can and will change depending on numerous internal and external factors – market dynamics, higher priorities, etc.

Themes and Objectives

In an ideal world – your product roadmap is your strategy manifest. It shows how you are delivering against your strategy and vision or short to medium-term progress towards your long-term goals. For any reasonably complex product or portfolio of products, your strategy will break down into themes or objectives, and your roadmap will align with those objectives. 

Roadmap Mistakes

Don’t be unrealistically specific about dates. The most accurate roadmap is the one with no dates at all – just โ€œnow,โ€ โ€œnext,โ€ and โ€œlaterโ€. If you canโ€™t get away with that (e.g., B2B), calendar quarters or halves for further out. Plans constantly change, and estimates are optimistic, so donโ€™t delude yourself. 

If your roadmap doesnโ€™t reflect or support your strategy or vision, then people will be inclined to think that your strategy isnโ€™t real or youโ€™re failing to deliver on your vision. 

If you have multiple versions of your roadmap in slide decks and documents dotted around your company intranet, they will all be out of date at some point. This will lead to confusion and busy work. You must have a single source of truth to which everyone has (at least read-only) access. 

List of disconnected features. Your roadmap is your strategy manifest, so if itโ€™s just a scattershot of features with no apparent structure, what does that say about your strategy? Thematic roadmaps are critical for portfolio companies – the themes help your colleagues in marketing get behind a small set of impactful messages.

Conclusion

Except in some rare cases – your product needs a roadmap. Your roadmap is a tactical enforcement of your vision and strategy, and there must be obvious alignment. Organizing your roadmap under broader objectives or themes will help enforce the alignment. Product roadmaps are dynamic documents and should be reviewed constantly, and the dynamic nature of your roadmap should be clearly communicated. Given the dynamic nature – ensure there is a generally accessible single source of truth for your roadmap.  

If your Vision is the Why, and your strategy is the What, then your roadmap is the When.

The Maze 2023 – Day 0 – Moab and The Arches

This is the first post in a series of our recent Mountain Biking and Hiking trip to Utah :

Day 0 (May 18th, 2023) was our acclimation day before heading off into the Canyon Lands on our 5-day MTB tour of the Maze organized through Rimtours. We started with Breakfast at the Jailhouse – a bit of a Moab institution. Then some last-minute shopping for gear and food/drink. In the afternoon – we crammed a lot more into our last day of civilization for a while – Arches NP Hike, more shopping, dinner, and Slickrock Sunset.

(from left to right – David, Rich (author), Bryan, Tim, and Iain)

Please be advised that if you intend to hike at Arches National Park, a highly popular destination, it is important to book in advance. Otherwise, you may face disappointment and be turned away at the gate. As most of us have already explored the more popular sights at Arches, we ventured deeper into the park towards Devil’s Garden. We followed the regular trail to Double O Arch and Fallen Angel and returned via the more interesting primitive trail. Hiking at Arches never disappoints though it can get pretty crowded. Strava map here.

A great spot to catch the sunset in Moab is located outside town on the rocks overlooking the Slickrock trails. Although it may not have been considered a spectacular sunset by some, it’s a lovely spot to relax with a beer, enjoy the sunset, and chat about our upcoming plans for the morning.

“putting the can back in Canyonlands” – Photo by Rich, slogan by Bryan !

A Eulogy to my Mother

This is the eulogy I gave at the church service after my mother’s funeral – I’m posting it here to ensure there’s a digital copy for her children and grandchildren. The funeral was held on Friday, 11th November 2022, at Margam Crematorium, and the church service was at Skewen Methodist Church – the church that was a big part of her life for the last ten years.

Brenda Ford, formerly Sharples, nee Hawkridge

May 25th 1942 – October 19th 2022

Over the last few weeks, Iโ€™ve spent a decent amount of time thinking about who my mother was. While that may sound strange, as Iโ€™ve known her all my life, we only get to reflect on the full life of someone at a time like this. Iโ€™m sure we all have stories, memories, and ideas of who Brenda Ford, formerly Sharples, nรฉe Hawkridge, was, and I would love to hear yours, but first, let me take a few moments to share mine.

My mother was born in the small town of Elland in West Yorkshire in 1942 – right bang in the middle of the second world war. Her father (Ernie) was in the Royal Engineers and absent for much of her early life repairing bridges in Holland.ย  She was a proud Yorkshire lass from the day she was born until the day she died. She liked her tea strong, was very down to earth, and would never shy away from sharing her honest opinion, and despite her diminutive frame, she could more than hold her own. Working the Friday night shift in Manchester Royal Infirmary was good preparation for dealing with a couple of unruly teenagers like me and my brother Rob. And I’m speaking from personal experience here – she would not hesitate to give us a good โ€œclatteringโ€ if we stepped too far out of line.

In 1963 at the age of 21, my mother married my father, James Sharples, and a year later, she became a registered nurse and, a year after that – a mother for the first time. Over the next 40ย  years, she worked in large busy hospitals in Manchester, Oldham, and Lincoln and small family practices all over the country – wherever my Fatherโ€™s Royal Air Force postings took us.ย 

As well as working full-time – she was often a single mother of two young kids, as my Fatherโ€™s work frequently took him away from home for long periods. Then, every four years or so, we would get uprooted and redeployed – we lived all over the country and overseas several times. Despite that constant upheaval and disruption – my motherโ€™s resilience, genuine warmth, and easy-going nature always meant friends surrounded us. Engaging with people came easily, and she quickly turned strangers into friends.

At the end of the 1970s, after living in Yorkshire, Lancashire, Lincolnshire, Berkshire, Malta, Cyprus, Berkshire again, and then Norfolk – my parents finally settled in Wiltshire. This move was an opportunity to be close to my motherโ€™s family – brother Graham, his wife Beryl, their kids Pip and Anthony and my motherโ€™s parents. We even lived in the same street for several years – demonstrating how important family was to my mother. I still remember the 1977 Queenโ€™s Jubilee – like many of you, we had a street party, and all 3 generations of my entire family were there – we were very fortunate kids.

My other endearing memory from my childhood was the family holidays and day trips – camping in the lake district during the hottest summer on record and arranging family lunch in Cardiff on the same day as an international rugby game. The intent was good – the planning, not so much. She also made it out to California twice and North Carolina to visit my family and me. She was never one to shy away from an adventure.

As well as a long career as a professional nurse – my mother was always willing to care for those around her. She nursed my brother and me through countless illnesses, bumps, bruises, and breakages. Later in life – she looked after my paternal grandfather (Thomas)ย  and maternal grandparents (Ernie and Ivy), then later – my father when he was diagnosed with terminal cancer, and more recently, her second husband, John Ford, when he succumbed to dementia.

My mother married John Ford in 2013, having moved to Skewen in 2012. They both enjoyed being part of this community and church and gave up some of their time to make it the welcoming place it is today. I would try and call my mother once a week – though admittedly, I didnโ€™t always manage that,ย  but when I did, she would, no doubt, mention her various church groups and friends, so it was clearly a huge part of her life.

So, in the coming days, weeks, and months when you remember my mother, Brenda, donโ€™t be sad. Instead, remember the young girl from a small town in West Yorkshire who never could have imagined the long life before her. The places sheโ€™d live and visit, the things she would do, the adventures sheโ€™d embark on, and the friends she would make along the way. Remember the woman who lived an honest and long life of service to others as a nurse, carer, wife, mother, grandmother, and church member. A long life with no regrets and countless fond memories spent with friends and family is probably the most any of us could hope for. 

Finally, I would like to thank you all, on behalf of our family,  for being here today and for being an essential part of her life.

The Metaverse: the importance of interop

Avatar created in ReadyPlayerMe and imported into Somnium Space

Without interoperability, there is noย #metaverse. Without open standards and open source and the resulting interoperability – there would be no Web or Internet as we know them today. It is no accident that the characters comprising this post are readable in any browser on any device and have been transported across the global network through various switches, routers, and proxies manufactured by different vendors. The reader doesnโ€™t have to care or know which tool I used to create this post, nor which character encoding or font I prefer – that is all transparent to the user because of open standards like HTML, CSS, HTTP, and TCP/IP.

As the web evolves – standardization and interoperability will play an increasingly important role. The Metaverse is more ambitious than the current web regarding the sheer amount of technology involved. The Metaverse is an amalgamation of technologies from gaming, film, AR/VR, AI/ML, commerce, etc. Some of these areas have established standards; others are still nascent.

One of the critical areas of interop (according to a poll at the Metaverse Standards Forum) is the exchange of assets. This is required for seamless commerce, moving digital goods between assets, and choosing different tools at the design stage. Designers also need the ability to import assets into a virtual world from a film or game studio or real world without losing fidelity. 

There are already two major standards in this area – USD (Universal Scene Description) – first developed by Pixar and open-sourced in 2016. Today it enjoys strong support from AutodeskAppleNVIDIA, and the open source blender 3D graphics application. NVIDIA goes as far as claiming that USD is the HTML of the Metaverse – more here.

If USD is the HTML for the Metaverse, then maybe the other standard – glTF (GL Transmission Format) is what JPEG is for the Web and Mobile today. glTF is a lightweight file format for describing 3D scenes and models and is widely supported by @Microsoft, Meta/Occulus, and Unreal Engine.

Each standard has its benefits and supporting ecosystem, and it may not be possible or necessary to arrive at a single standard to meet all needs. Queue joke about the need for a  3rd standard to rule them all!

What this illustrates is that for something as central as being able to describe a 3D scene or object – the Metaverse will likely have to support (at least) two significant standards along with the overhead and complexity of versioning, converters, extensions, importers, and translators to ensure assets can be moved between ecosystems without exposing the problem to end users.

The efficient and seamless interchange of 3D assets is just the tip of the iceberg, and interoperability in many other areas (security, identity, money, reputation) will have to be addressed before the Metaverse becomes a reality.