Law Of Conservation of Uncertainty (Part 2)
Summary
In this episode of Developer Tea, host Jonathan Cuttrell continues the discussion on the Law of Conservation of Uncertainty, focusing on how developers can embrace uncertainty rather than fighting it. He explains that uncertainty exists in all projects and decisions, and our natural loss aversion makes us seek certainty, but this approach often limits our potential.
Cuttrell proposes a mindset shift: instead of selling certainty, developers should sell change. He argues that change is progressive and adaptive, and embracing uncertainty provides opportunities to use what we’ve prepared for. This approach is particularly valuable in business contexts where traditional models try to mitigate uncertainty through fixed prices, features, and timelines.
The host provides concrete examples of where embracing uncertainty is beneficial. For developers early in their careers, being open to learning new skills and adapting to different tech stacks during job searches can open up more opportunities. He emphasizes that hiring managers value adaptability and a willingness to learn new frameworks and methodologies.
Finally, Cuttrell discusses how to apply this mindset to project management. Instead of committing to specific deliverables far into the future, he recommends committing to four key principles: direction, quality, value, and clarity. By building iteratively and focusing on the next most valuable thing while maintaining these commitments, projects can adapt to changing requirements, environments, and markets, ultimately creating better products.
Recommendations
Tools
- Fuse — A tool for app development that changes the traditional way of building iOS and Android apps, allowing developers to write less code and focus on the product. It compiles to real native code and is available for both Mac and Windows.
Topic Timeline
- 00:00:00 — Introduction to embracing uncertainty — Jonathan Cuttrell introduces the episode’s focus on how to embrace uncertainty rather than fighting it. He explains that the previous episode established the Law of Conservation of Uncertainty, and this episode will explore practical ways to work with uncertainty through mindset shifts and changing thought patterns.
- 00:02:48 — Selling change instead of certainty — Cuttrell discusses how businesses often try to sell certainty through fixed features, prices, and timelines, viewing uncertainty as the enemy. He proposes an alternative approach: selling change as a valuable aspect of business. He argues that change is progressive and adaptive, and embracing uncertainty provides opportunities to use what we’ve prepared for.
- 00:05:56 — Embracing uncertainty in job searches — The host provides a specific scenario where embracing uncertainty is valuable: when looking for a job, especially early in one’s career. He explains that developers who embrace uncertainty are open to changing their skill sets, using new tools, and learning new things. This adaptability is highly valued by hiring managers and development managers who prioritize learning and adaptation to new environments.
- 00:08:45 — Applying uncertainty principles to projects — Cuttrell discusses how to embrace uncertainty in project environments by focusing on what you commit to. Instead of committing to specific deliverables far into the future, he recommends committing to four key principles: direction, quality, value, and clarity. By building iteratively and focusing on the next most valuable thing while maintaining these commitments, projects can adapt to changing requirements and environments.
- 00:11:38 — Conclusion on embracing uncertainty — The host concludes by emphasizing that embracing uncertainty creates better products because we cannot eliminate uncertainty—we can only move it around or change responsibility for it. He reiterates that committing to direction, quality, value, and clarity invites change and creates situations where uncertainty is embraced rather than mitigated.
Episode Info
- Podcast: Developer Tea
- Author: Jonathan Cutrell
- Category: Technology Business Careers Society & Culture
- Published: 2017-05-31T07:00:00Z
- Duration: 00:12:56
References
- URL PocketCasts: https://podcast-api.pocketcasts.com/podcast/full/cbe9b6c0-7da4-0132-e6ef-5f4c86fd3263/ed20d69d-6218-4de6-8cec-efe487e27333
- Episode UUID: ed20d69d-6218-4de6-8cec-efe487e27333
Podcast Info
- Name: Developer Tea
- Type: episodic
- Site: http://www.developertea.com
- UUID: cbe9b6c0-7da4-0132-e6ef-5f4c86fd3263
Transcript
[00:00:00] uncertainty exists all around us we established this in our last episode but how can we embrace
[00:00:10] it rather than fighting it that’s what we’re going to talk about in today’s episode my name
[00:00:15] is jonathan cuttrell you’re listening to developer t my goal on this show is to coach you through the
[00:00:21] hardest parts of your career to provide you with information insights inspiration conversations
[00:00:27] with people in this industry as well as other industries all kinds of conversations that we’ve
[00:00:33] had on this show all in hopes of helping you become the great developer that you want to be
[00:00:39] i’ve said it on a few episodes now and i’m going to continue saying it if you don’t want to become
[00:00:44] a better developer than you are today then you probably have no business listening to this show
[00:00:49] my goal is for you to walk away from listening to this challenged and optimistic charged up
[00:00:57] ready to take an action step today that will make you a better developer we can take a very simple
[00:01:04] step each and every day to become better at what we do sometimes those steps are extremely practical
[00:01:10] sometimes they mean setting up your environment in a new way but sometimes they’re not super
[00:01:17] practical instead they’re much more academic or perhaps theoretical mindset mindset shifts
[00:01:23] ways of thinking ways of changing your thoughts
[00:01:27] patterns ways of changing the way you view the world around you and that’s kind of what we’re
[00:01:32] talking about in today’s episode we’re talking about uncertainty in the last episode we
[00:01:37] established this idea of the law of conservation of uncertainty what does that mean well it
[00:01:44] basically means that for any given project and really for anything that you do in your life
[00:01:49] a level of uncertainty exists there are so many variables that go into any given decision and so
[00:01:57] if we act like that uncertainty doesn’t exist then really all we’re doing is shifting it to a
[00:02:03] different place but in the last episode we also established the fact that humans are loss averse
[00:02:09] this shouldn’t come as as a surprise there’s tons of research already out there on the subject
[00:02:14] but because of our loss aversion we seek certainty we want to be as safe as possible
[00:02:21] with our bets this goes for our money and it goes for everything else that we do
[00:02:27] uncertainty puts those decisions into a different category the things that we can be fully certain
[00:02:33] about as developers these things are few and far between it’s not bad news and that’s what we’re
[00:02:40] talking about today how to embrace this uncertainty very often we try to sell certainty this is such
[00:02:48] a common business practice we want to sell a given product with all the features that you want
[00:02:55] for a fixed price and we want to sell it for a fixed price and we want to sell it for a fixed price
[00:02:57] and within a fixed timeline all of these things mitigating uncertainty and ultimately viewing
[00:03:05] uncertainty as the enemy but perhaps there’s another way to do this perhaps we can embrace
[00:03:11] uncertainty and instead of selling certainty we sell change change is progressive change is
[00:03:21] adaptive if we sell change as a valuable aspect of our business we’re going to sell it for a
[00:03:27] hereditary value if we get and end up selling it for태
[00:03:40] unrealistic reward that means you get what we get if we’re without the show if the box was closed
[00:03:49] and suddenly we need to open up we end up selling to somebody else and you’re losing all the stock and
[00:03:53] we’re Columbus theodore since we’re in banning cash flow can’t save us we need to do something a market
[00:03:55] that has to work in a more reasonable way so now comes a market where we’re most certainly not going to
[00:03:57] then uncertainty becomes embraced. Uncertainty provides us an opportunity to use what we’ve
[00:04:06] prepared for. Change. This is what we’re going to talk about in today’s episode. Some very specific
[00:04:12] examples of when you can use this methodology, this thinking, this way of viewing certainty.
[00:04:21] Really, it’s a way of thinking about the world. We’re going to talk about that in today’s episode.
[00:04:26] First, I want to talk about today’s sponsor, Fuse. Fuse is changing the way app development
[00:04:33] is done. If you’ve ever worked on game development and you’ve used something called Unity, then you
[00:04:39] know a little bit about what Fuse does. Fuse is available on Mac and it’s available on Windows,
[00:04:46] and it provides you a brand new environment for doing app development. Writing less code
[00:04:52] and focusing on the product 100% of the time.
[00:04:56] If you’re an app developer, I want you to think about this. How long have you been doing things
[00:05:04] the same way? Virtually for your whole career and for decades in this industry, app development has
[00:05:11] been done effectively the same way. This is what Fuse is trying to change. Go and check out what
[00:05:17] Fuse has to offer for you app developers. By the way, it compiles to real native code and you can
[00:05:26] use Fuse. All in one easy to set up package. Go and check it out. Spec.fm slash Fuse. That’s
[00:05:33] spec.fm slash Fuse. Thank you again to Fuse for sponsoring today’s episode of Developer Tea.
[00:05:39] So we’re going to talk about some specific scenarios where embracing change is more valuable
[00:05:45] than trying to mitigate uncertainty. Embracing uncertainty when that can be a valuable thing.
[00:05:54] One of those scenarios,
[00:05:56] you as developers who are very young in your career is when you’re looking for a job. If you
[00:06:02] walk in to your first interview and you have a list of, let’s say, seven or eight skills that
[00:06:09] you’ve put on your resume and you discuss these skills with your potential employer. Let’s say
[00:06:16] that that employer wants you to work with skills that are outside of your current skill set.
[00:06:22] The developer who embraces uncertainty
[00:06:25] is open to changing their skill set. The developer who embraces uncertainty is open
[00:06:33] to using new tool sets. They’re open to the possibility that they made a bad choice
[00:06:40] yesterday. They’re open to the idea that learning new things is just as valuable
[00:06:47] as practicing old things. Now, of course, we talked on the show about managing your
[00:06:53] tech portfolio or your skill portfolio. And I’m going to talk a little bit about that. But
[00:06:55] I’m going to talk a little bit about managing your tech portfolio or your skill portfolio. And that
[00:06:56] still holds true. I don’t want you to be jumping between tech every day or every week or even every
[00:07:03] month for that matter, and certainly develop your skill sets in one area. But once you get a chance
[00:07:09] to work with a company and the opportunity hinges entirely on whether or not you’re willing to try
[00:07:16] out a new programming language or perhaps a new framework, if you are of a fixed mindset and if
[00:07:24] you are trying to mitigate uncertainty, then you’re going to have to work with a company that
[00:07:25] uncertainty. If you don’t want to change and progress, then you may end up not getting that
[00:07:33] job, right? That is a detrimental situation to be in very often because you will find in most
[00:07:42] scenarios when you’re either changing jobs or you’re getting your very first job in the industry
[00:07:46] that you will need to learn new things. Very few people would disagree that having an adaptive
[00:07:54] mindset, having an adaptive mindset, having an adaptive mindset, having an adaptive mindset,
[00:07:55] having a dynamic and progressive mindset when you are coming onto a new team, that that would be a
[00:08:01] bad thing. Talk to any hiring manager, any development manager, and they will tell you
[00:08:06] that learning is a priority and being able to adapt to new environments, adapt to new frameworks or
[00:08:13] new methodologies, that that is incredibly important. So that’s an obvious scenario where
[00:08:18] embracing uncertainty is important for you when you’re on the job search. If you only hold yourself
[00:08:25] into specific jobs that are only looking for your skill set and they don’t require you to change,
[00:08:32] then you’re basically cutting possibilities, right? This is extremely important to understand
[00:08:38] because the same system of thinking should apply to the way we conduct our projects.
[00:08:45] So what does it look like to embrace uncertainty in a project environment? Really what it comes
[00:08:51] down to is what you are committing to.
[00:08:55] And let me walk this out for you. What you are committing to as a developer and as a company
[00:09:01] of developers, and hopefully some of you who are crafting your sales presentations and who are
[00:09:08] crafting development services contracts, client services contracts, hopefully this will hit home.
[00:09:15] If you craft your contract so that you are committing to a feature set or you’re committing
[00:09:22] to a specific deliverable that is…
[00:09:25] far out into the future, then you’re basically guessing what you’re eating for dinner in two
[00:09:32] weeks. Think about that for a second. We did this thought experiment already. You don’t know what
[00:09:37] you’re going to have for dinner in two weeks. It’s nearly impossible to forecast things that
[00:09:45] are uncertain. So when we commit to specific deliverables that are far out into the future
[00:09:52] and extremely difficult to determine,
[00:09:55] and have a lot of uncertainty around them, then we’re very often limiting our ability to change.
[00:10:03] This is an extremely negative aspect of these kinds of commitments. Instead of committing,
[00:10:10] here’s the kicker, instead of committing to a specific deliverable that is far off
[00:10:15] into the future, commit to a direction, commit to quality, commit to the most valuable things,
[00:10:25] and finally commit to clarity. Direction, quality, value, and clarity. If you can commit to these four things,
[00:10:35] then the actual deliverable in the end will have dynamically shifted along the way as requirements
[00:10:42] change, as the environment changes, as people’s minds change, as taste changes, as the market
[00:10:48] changes. All of the things surrounding the project change and allowing the project to change also
[00:10:54] increase the quality of the product. So if you commit to a specific deliverable that is far out into the future,
[00:10:55] is the value of that project. So I want you to write this out. Write this out for your next
[00:11:00] project. Direction, quality, value, and clarity. Direction, quality, value, clarity. Committing to
[00:11:09] these four things and building iteratively. In other words, building the next most valuable thing
[00:11:15] and doing it in the direction that has been discussed. Being extremely clear with the person
[00:11:22] that you’re working with, with your client, and never compromising on quality. All of these things
[00:11:28] create a situation where change is invited. Uncertainty is embraced rather than mitigated.
[00:11:38] Hopefully this has been a challenging discussion for you and hopefully you understand that this
[00:11:44] commitment creates a better product in the end because we can’t eliminate uncertainty. We can
[00:11:51] only move it around.
[00:11:52] We can only shift it, change the responsibility for that uncertainty. We can sell certainty by
[00:11:58] owning the responsibility of dealing with the fallout of uncertainty, but we cannot eliminate
[00:12:05] uncertainty altogether. We can only make good guesses. Thank you so much for listening to
[00:12:10] today’s episode of Developer Tea. Thank you again to today’s sponsor, Fuse. Fuse is allowing you to
[00:12:17] do away with the old way of building iOS and Android apps, and it does it all in one
[00:12:22] convenient package that’s available for Mac OS as well as Windows. Go and check it out spec.fm
[00:12:29] slash Fuse. Thank you so much for listening to today’s episode of Developer Tea. If you don’t
[00:12:33] want to miss out on future conversations on things like uncertainty and other things that are going
[00:12:39] to impact your career and help you become the great developer that you want to be, go and subscribe
[00:12:44] and whatever podcasting app you use. Thank you so much for listening and until next time, enjoy your tea.
[00:12:52] Bye.