<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Mike Zornek</title>
    <link>https://mikezornek.com/tags/practices/</link>
    <description>Recent content in practices on Mike Zornek</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <managingEditor>mike@mikezornek.com (Mike Zornek)</managingEditor>
    <webMaster>mike@mikezornek.com (Mike Zornek)</webMaster>
    <lastBuildDate>Wed, 01 Jul 2026 11:17:33 -0400</lastBuildDate>
    
	<atom:link href="https://mikezornek.com/tags/practices/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Stabilizing Inherited Software: My First-Week Checklist</title>
      <link>https://mikezornek.com/posts/2026/7/inherited-software-checklist/</link>
      <pubDate>Wed, 01 Jul 2026 11:17:33 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2026/7/inherited-software-checklist/</guid>
      <description>&lt;p&gt;Not every &lt;a href=&#34;https://mikezornek.com/elixir-consulting/&#34;&gt;consulting engagement&lt;/a&gt; starts with joining a team that&amp;rsquo;s humming along. Sometimes it starts with a handoff: the developers who built the software have moved on, but the software itself is still live, still has users, and still needs to keep working. There&amp;rsquo;s no team culture to learn &amp;ndash; there might not be much of a team at all. This is how two of my recent client projects went.&lt;/p&gt;
&lt;p&gt;The goal in week one on these projects isn&amp;rsquo;t to improve anything. It&amp;rsquo;s narrower than that: get to a place where you can react safely if something breaks. Everything below is in service of that one goal.&lt;/p&gt;
&lt;figure style=&#34;max-width: 20rem; margin-inline: auto;&#34;&gt;
&lt;a href=&#34;orly-previous-developers-long-gone.png&#34;&gt;
&lt;img src=&#34;orly-previous-developers-long-gone.png&#34; alt=&#34;A parody O&#39;Reilly book cover with a woodcut illustration of a cow. The header reads &#39;Some assembly required. Instructions not included.&#39; The title is &#39;The Previous Developers are Long Gone&#39; with the subtitle &#39;This is our problem now.&#39; Signed Mike Zornek.&#34; style=&#34;border: 1px solid #ddd;&#34;&gt;
&lt;/a&gt;
&lt;figcaption&gt;The Previous Developers are Long Gone: This is our problem now.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h2 id=&#34;get-the-app-running-locally&#34;&gt;Get the app running locally&lt;/h2&gt;
&lt;p&gt;You can&amp;rsquo;t safely change what you can&amp;rsquo;t run. This sounds obvious, but on inherited software it&amp;rsquo;s rarely trivial.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Get repo access (GitHub or wherever the code lives)&lt;/li&gt;
&lt;li&gt;Reproduce the dev environment exactly &amp;ndash; asdf-pinned versions, a Docker Compose setup, whatever the project actually uses&lt;/li&gt;
&lt;li&gt;Make sure you are using specific database versions, not just &amp;ldquo;latest.&amp;rdquo; You&amp;rsquo;d be amazed what little bugs show up from a minor version mismatch&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;run-the-app-as-a-user&#34;&gt;Run the app as a user&lt;/h2&gt;
&lt;p&gt;Before touching the code, build a real domain understanding of what the software actually does for the people who use it.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Take lots of annotated screenshots, ask questions as they come up&lt;/li&gt;
&lt;li&gt;Put those questions (and their answers) in a shared, durable place &amp;ndash; a Google Doc or, better, GitHub Issues/Discussions, so there&amp;rsquo;s a paper trail and other people can chip in beyond whoever you happened to be on a call with&lt;/li&gt;
&lt;li&gt;Use this discovery work as an opportunity to create valuable artifacts: your questions, improved onboarding docs, etc. Future developers (and AI tools) benefit from the knowledge extraction you are doing&lt;/li&gt;
&lt;li&gt;Be deliberate as a team about where knowledge goes and why. I tend to prefer GitHub Issues and Discussions as they live next to the code, and are less likely to disappear. Also, searching a term in GitHub surfaces the related conversations, not just the code&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;explore-the-codebase&#34;&gt;Explore the codebase&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Pick a feature and trace how it&amp;rsquo;s actually implemented, end to end&lt;/li&gt;
&lt;li&gt;Document your questions as you go, and circle back to capture the answers&lt;/li&gt;
&lt;li&gt;If you have a peer or time with the previous developer available, have them walk you through their recent work&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;understand-how-the-app-is-deployed-and-how-releases-work&#34;&gt;Understand how the app is deployed and how releases work&lt;/h2&gt;
&lt;p&gt;This is the highest-stakes item on the list, and on adoption projects it&amp;rsquo;s the one I prioritize most. If something breaks in production and you don&amp;rsquo;t understand the release process, you can&amp;rsquo;t react &amp;ndash; and reacting safely is the whole point of week one.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Make a small, low-risk change and push it through the full release cycle yourself, start to finish, as early as you can&lt;/li&gt;
&lt;li&gt;Once you&amp;rsquo;ve been through onboarding yourself, look back at what you just did. What would have made it faster or clearer for the next person? Contribute that back to the docs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;create-learning-projects&#34;&gt;Create learning projects&lt;/h2&gt;
&lt;p&gt;This project will almost certainly include some technology you&amp;rsquo;re less experienced with. Name it explicitly rather than quietly muddling through. Ask others on the team (or in the broader community) for advice on a skill-up path, and give yourself room to actually follow it.&lt;/p&gt;
&lt;h2 id=&#34;meet-your-peers&#34;&gt;Meet your peers&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Set up introduction calls &amp;ndash; try to talk to everyone, even if it&amp;rsquo;s a short, purely social call. You&amp;rsquo;ll be working with these people for a while; it&amp;rsquo;s worth actually getting to know them&lt;/li&gt;
&lt;li&gt;Ask two questions in particular: what&amp;rsquo;s working well on this project, and where are the opportunities for improvement&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;re-sync-with-whoever-hired-you&#34;&gt;Re-sync with whoever hired you&lt;/h2&gt;
&lt;p&gt;By this point you&amp;rsquo;ll have a much more detailed picture of the environment you&amp;rsquo;ve stepped into than you did on day one.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set up a follow-up conversation with the person who hired you, or whoever you ultimately answer to&lt;/li&gt;
&lt;li&gt;Get your open questions answered&lt;/li&gt;
&lt;li&gt;Reaffirm and evolve a clear list of expectations and responsibilities. On some engagements I own the full stack end to end; on others I&amp;rsquo;m explicitly scoped to a specific area and asked not to touch the rest. Make sure that scope is actually agreed on, not assumed&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;why-all-of-this-before-any-of-the-fun-stuff&#34;&gt;Why all of this, before any of the fun stuff&lt;/h2&gt;
&lt;p&gt;None of this is glamorous. It&amp;rsquo;s not refactoring, it&amp;rsquo;s not new features, it&amp;rsquo;s not the kind of work that makes for an exciting commit history. But when it comes to inherited software, confidence comes first. You earn the right to improve something by first proving &amp;ndash; to yourself and to the team &amp;ndash; that you can be trusted to react safely when it breaks. Everything else follows from that.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Fresh Eyes on a Cucumbered Team</title>
      <link>https://mikezornek.com/posts/2026/6/fresh-eyes-on-a-cucumbered-team/</link>
      <pubDate>Tue, 30 Jun 2026 10:43:44 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2026/6/fresh-eyes-on-a-cucumbered-team/</guid>
      <description>&lt;p&gt;I once did some subcontracting for &lt;a href=&#34;https://testdouble.com/&#34;&gt;Test Double&lt;/a&gt; (wonderful consultancy btw, really good people there). While there I picked up a term for what happens when you&amp;rsquo;ve been inside an organization so long you stop noticing its quirks: you&amp;rsquo;ve been &amp;ldquo;cucumbered.&amp;rdquo; Left in the brine long enough, you become indistinguishable from the brine itself.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s a good metaphor because it isn&amp;rsquo;t unkind. A cucumber doesn&amp;rsquo;t do anything wrong by becoming a pickle. It just sits in the brine, and the brine does what brine does. The same is true on a team. Nobody decides one day to stop questioning the workaround that&amp;rsquo;s been &amp;ldquo;temporary&amp;rdquo; for two years. It happens gradually, as a side effect of being close to the work.&lt;/p&gt;
&lt;h2 id=&#34;why-it-happens-to-good-teams&#34;&gt;Why it happens to good teams&lt;/h2&gt;
&lt;p&gt;Cucumbering isn&amp;rsquo;t a sign of a bad team or a lazy engineer. If anything, it tends to happen to the most embedded, most trusted people on a team &amp;ndash; the ones who&amp;rsquo;ve been there long enough to know where all the bodies are buried, which also means they&amp;rsquo;re the ones least likely to ask why there are bodies there at all.&lt;/p&gt;
&lt;p&gt;Proximity is what makes someone effective day to day. You learn the shortcuts, the unwritten rules, the &amp;ldquo;oh yeah, just ignore that error, it&amp;rsquo;s always been like that.&amp;rdquo; That knowledge is valuable. But it&amp;rsquo;s also exactly what makes the weird parts of a system invisible. You stop seeing the thing because you&amp;rsquo;ve stopped looking at it &amp;ndash; you&amp;rsquo;ve just started working around it, the same way everyone else already does.&lt;/p&gt;
&lt;h2 id=&#34;what-a-consultant-actually-brings-in-week-one&#34;&gt;What a consultant actually brings in week one&lt;/h2&gt;
&lt;p&gt;This, I think, is one of the real values of bringing in outside help. Hiring a consultant is usually framed in terms of technical skills: bring in a senior person to solve a specific problem or boost team velocity. Sometimes that&amp;rsquo;s true. But more often, the most useful thing I do in the first week or two on a project has nothing to do with technical chops. It&amp;rsquo;s that I haven&amp;rsquo;t been pickled yet. I get to ask &amp;ldquo;why do we do it this way?&amp;rdquo; about things that everyone else on the team has long since stopped seeing as a question at all. And because I&amp;rsquo;m new, that question doesn&amp;rsquo;t carry any history or political weight &amp;ndash; I&amp;rsquo;m not implying anyone made a bad call, I&amp;rsquo;m just genuinely asking.&lt;/p&gt;
&lt;p&gt;That question, asked plainly and without an agenda, is sometimes the most valuable thing a consultant can offer.&lt;/p&gt;
&lt;h2 id=&#34;the-guardrail&#34;&gt;The guardrail&lt;/h2&gt;
&lt;p&gt;Here&amp;rsquo;s the part that matters most, though: there&amp;rsquo;s a fine line between asking why and trying to remake a team in your own image, and you should be careful not to cross it.&lt;/p&gt;
&lt;p&gt;The practice of asking why isn&amp;rsquo;t an opportunity to slide in your own preferred workflow because it&amp;rsquo;s what you&amp;rsquo;re used to. It&amp;rsquo;s about creating space for the existing team to have their own introspection. If that leads somewhere &amp;ndash; great. But what that somewhere should be needs to come out of team review and discussion, not the whims of a single person, even if that person is me (and I&amp;rsquo;m pretty great).&lt;/p&gt;
&lt;h2 id=&#34;so-whats-gone-unquestioned-on-your-team&#34;&gt;So, what&amp;rsquo;s gone unquestioned on your team?&lt;/h2&gt;
&lt;p&gt;You don&amp;rsquo;t need a consultant to ask &amp;ldquo;why do we do it this way?&amp;rdquo; Anyone can ask it &amp;ndash; it&amp;rsquo;s just easier for someone who hasn&amp;rsquo;t been in the brine as long.&lt;/p&gt;
&lt;p&gt;So: what&amp;rsquo;s something on your team that&amp;rsquo;s survived purely on &amp;ldquo;that&amp;rsquo;s how we&amp;rsquo;ve always done it,&amp;rdquo; that nobody&amp;rsquo;s actually re-examined in years? It might be worth asking the question out loud, even if the answer turns out to be a perfectly good one.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Using Google Sheets to Catalog Expenses for Budgeting Considerations</title>
      <link>https://mikezornek.com/posts/2025/4/google-sheets-expense-budgeting/</link>
      <pubDate>Sat, 19 Apr 2025 11:07:02 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2025/4/google-sheets-expense-budgeting/</guid>
      <description>&lt;p&gt;I try to revisit my budget every six months or so, and having just wrapped up my taxes, which provide helpful totaling of where the money went last year, it was a good time to rebuild the numbers.&lt;/p&gt;
&lt;p&gt;In the past, I&amp;rsquo;ve used &lt;a href=&#34;https://soulver.app/&#34;&gt;Soulver&lt;/a&gt; for some of this, and while I still like that app, this time, I took a shot using a Google Spreadsheet.&lt;/p&gt;
&lt;p&gt;I liked how the expense spreadsheet came out and thought there would be value in &lt;a href=&#34;https://docs.google.com/spreadsheets/d/1KzNSURgiVZPU61WKT4sTkO-5fAT124I6J3emVJX4L50/edit?usp=sharing&#34;&gt;sharing a demonstration of it&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve recorded a video of its creation to help those who might not be spreadsheet experts and to capture my thought process regarding cataloging expenses for future scenario experimentation.&lt;/p&gt;





&lt;video
  controls
  class=&#34;mb-0 w-full&#34;
  title=&#34;Using Google Sheets to Catalog Expenses for Budgeting Considerations&#34;
&gt;
  &lt;source src=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/napkin-estimate-budgeting-with-google-sheets.mp4&#34; type=&#34;video/mp4&#34;&gt;
  Your browser does not seem to support the video format. You can
  &lt;a href=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/napkin-estimate-budgeting-with-google-sheets.mp4&#34;&gt;download the MP4 file&lt;/a&gt;
  directly.
&lt;/video&gt;

&lt;div class=&#34;mt-2 flex justify-between&#34;&gt;
  &lt;a href=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/napkin-estimate-budgeting-with-google-sheets.mp4&#34;&gt;Download MP4&lt;/a&gt;
  
    &lt;a href=&#34;https://www.youtube.com/watch?v=ebLIvsRrTv8&#34;&gt;Watch on YouTube&lt;/a&gt;
  
&lt;/div&gt;

&lt;h2 id=&#34;video-summary&#34;&gt;Video Summary&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Track each expense with a &lt;code&gt;Description&lt;/code&gt;, &lt;code&gt;Cost&lt;/code&gt;, and &lt;code&gt;Occurrence&lt;/code&gt; (Monthly or Yearly).&lt;/li&gt;
&lt;li&gt;Mark each expense as &lt;code&gt;Hard&lt;/code&gt;, &lt;code&gt;Medium&lt;/code&gt;, or &lt;code&gt;Soft&lt;/code&gt; to express the importance of this expense to you (how hard would it be to live without).&lt;/li&gt;
&lt;li&gt;Use bank and credit card statements to help you capture all things.&lt;/li&gt;
&lt;li&gt;Use a column to convert &lt;code&gt;Yearly&lt;/code&gt; costs into a &lt;code&gt;Monthly&lt;/code&gt; equivalent, the base time unit we work with here.&lt;/li&gt;
&lt;li&gt;Add a &lt;code&gt;Scenario&lt;/code&gt; checkbox column to help you experiment with what expenses can be removed to reach your target goal.&lt;/li&gt;
&lt;li&gt;Utilize features like share, comments, and versioning to work with others.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;resources&#34;&gt;Resources&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://docs.google.com/spreadsheets/d/1KzNSURgiVZPU61WKT4sTkO-5fAT124I6J3emVJX4L50/edit?usp=sharing&#34;&gt;The Google Sheet from the video&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Previous blog: &lt;a href=&#34;https://mikezornek.com/posts/2022/4/budget-revist-2022/&#34;&gt;Budget Revisit 2022&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Previous blog: &lt;a href=&#34;https://mikezornek.com/posts/2018/9/self-employment-estimate-numbers/&#34;&gt;Self Employment Estimate Numbers&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
    
    <item>
      <title>On Asking Multiple Questions</title>
      <link>https://mikezornek.com/posts/2025/1/on-asking-questions/</link>
      <pubDate>Sun, 05 Jan 2025 13:20:55 -0500</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2025/1/on-asking-questions/</guid>
      <description>&lt;p&gt;On the socials &lt;a href=&#34;https://techhub.social/@jerzone/113759316836343224&#34;&gt;@jerzone shares&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;My super power is carefully combining a number of relevant questions in the same message so the person doesn&amp;rsquo;t have to spend a lot of time going back and forth with me on individual questions.&lt;/p&gt;
&lt;p&gt;Everyone else&amp;rsquo;s super power seems to be picking out the least relevant of those questions and responding in an oblique fashion.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In general, I prefer asynchronous communication. The freedom it gives the participants to contribute to the conversation at a time that best works for them can be helpful and sometimes outright required if you are collaborating with folks outside your time zone.&lt;/p&gt;
&lt;p&gt;That said, the delay in getting a proper answer can be frustrating.&lt;/p&gt;
&lt;p&gt;I used to attempt to preload questions in my own emails/messages to people. Sometimes it would be as simple as a flat list of questions, and other times, I&amp;rsquo;d give them a logic path for if yes, then question x, or if no, question y. I have learned that this is a mistake.&lt;/p&gt;
&lt;p&gt;My experience dictates many people do not work well with this complexity. They miss questions or details entierly. The eventual awkwardness of repeating questions is enough that I will do simple, single questions, one at a time.&lt;/p&gt;
&lt;p&gt;This lack of comprehension could result from our distracted culture, which for many includes answering SMS messages and interacting with phone notifications non-stop. I feel disempowered to fight those winds.&lt;/p&gt;
&lt;p&gt;Sometimes, I find a peer where multiple questions will work, but that is something that is earned and not assumed.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>My Standup Format</title>
      <link>https://mikezornek.com/posts/2022/11/my-standup-format/</link>
      <pubDate>Wed, 09 Nov 2022 15:00:32 -0500</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2022/11/my-standup-format/</guid>
      <description>&lt;p&gt;I find async standups to be a productive and low-cost ceremony in my development teams.&lt;/p&gt;
&lt;p&gt;An async standup, in short, is each day, typically in the morning hours, team members are asked to post an update about what is going on in their work. This post is not about time tracking or otherwise work inspection but more an opportunity to take a breath, celebrate your wins, acknowledge your losses, ask for help and share your plans. A good outcome of standups is ensuring you get the help you need from your team to be successful .&lt;/p&gt;
&lt;figure style=&#34;width: 70%; margin: 0 auto;&#34;&gt;
&lt;img src=&#34;we-are-fine.jpg&#34; alt=&#34;StarWars: WHEN PROJECT MANAGER ASKING FOR UPDATE AT STANDUP CALL --
WE ARE FINE WE ARE ALL FINE NOW. HOW ARE YOU?&#34; data-action=&#34;zoom&#34;&gt;
&lt;/figure&gt;
&lt;p&gt;There is an async standup format I&amp;rsquo;ve been using for over a year now, and since it seems to be sticking, I figured I&amp;rsquo;d take a moment to share it and explain why I like it.&lt;/p&gt;
&lt;p&gt;❤️ &lt;strong&gt;Feeling:&lt;/strong&gt; &amp;hellip;&lt;br&gt;
✅ &lt;strong&gt;Accomplishments:&lt;/strong&gt; &amp;hellip;&lt;br&gt;
🥅 &lt;strong&gt;Goals:&lt;/strong&gt; &amp;hellip;&lt;br&gt;
🆘 &lt;strong&gt;Help:&lt;/strong&gt; &amp;hellip;.&lt;/p&gt;
&lt;p&gt;❤️ &lt;strong&gt;Feeling&lt;/strong&gt; is a great place to share your personal, human mindset. &amp;ldquo;Got limited sleep last night because the kid is sick.&amp;rdquo;, &amp;ldquo;Feeling anxious about the upcoming proposal deadline.&amp;rdquo;, &amp;ldquo;So happy that the Phillies won last night!&amp;rdquo; Being open and expressive about how we feel can, over time, help build trust within the team.&lt;/p&gt;
&lt;p&gt;✅ &lt;strong&gt;Accomplishments&lt;/strong&gt; is a place to document your day-by-day outcomes. Many of these might be traditional progress towards some new code, but it can be just as valid to share that you discovered a problem and documented an open question somewhere.&lt;/p&gt;
&lt;p&gt;🥅 &lt;strong&gt;Goals&lt;/strong&gt; is where you highlight your plan for the day. I sometimes get overwhelmed at midday and then return to my goals to recenter and figure out what I need to be focusing on. It&amp;rsquo;s okay if goals occasionally carry over from day to day, though if this stresses you out, maybe end with a stretch goal that is almost expected not to be completed today.&lt;/p&gt;
&lt;p&gt;🆘 &lt;strong&gt;Help:&lt;/strong&gt; is probably the most critical line. Need a PR reviewed or some open questions addressed? Don&amp;rsquo;t be shy! Be explicit and ping specific people, &amp;ldquo;Hey @jim, I really need your advice about this PR feedback from @pam.&amp;rdquo; If you have no help requests, an affirmative &amp;ldquo;No blockers.&amp;rdquo; is good to see. I prefer this than to omit &amp;ldquo;Help&amp;rdquo; entirely.&lt;/p&gt;
&lt;p&gt;🚨 &lt;strong&gt;Awareness&lt;/strong&gt; is a line I&amp;rsquo;ll sometimes add to spotlight information I want the team to see. &amp;ldquo;Going to be offline this afternoon for a dentist appointment.&amp;rdquo; or &amp;ldquo;I&amp;rsquo;ll be on vacation next week, work with @dwight during my absence.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Many of my past teams have posted our standups in a Slack channel. In my newest team, we&amp;rsquo;ve been trying to avoid using Slack entirely and instead are using GitHub Discussions. We have a dedicated monthly standup thread, which works well since simple issue numbers like &lt;code&gt;#123&lt;/code&gt; will auto-link to relevant issues and pull requests, and you can still &lt;code&gt;@&lt;/code&gt; mention people to kick a notification.&lt;/p&gt;
&lt;p&gt;Before I leave, I&amp;rsquo;ll mention that this is not a format I came up with. It was observed during my subcontracting with &lt;a href=&#34;https://testdouble.com/&#34;&gt;Test Double&lt;/a&gt;. They were a particularly empathetic company towards project process, ceremony, and developer happiness. This standup format was one small example.&lt;/p&gt;
&lt;p&gt;Curious to hear how you and your team do standups. &lt;a href=&#34;https://mikezornek.com/contact&#34;&gt;Let me know.&lt;/a&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Recent Estimating Work Notes</title>
      <link>https://mikezornek.com/posts/2022/11/4-journal-estimate-wins/</link>
      <pubDate>Fri, 04 Nov 2022 13:12:04 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2022/11/4-journal-estimate-wins/</guid>
      <description>&lt;p&gt;This week I completed my third week with a new client. It was a notably challenging week since the main goal was to write up a significant project estimate, which was due by Friday. We delivered the estimate earlier this morning, and I think we did a good job. I&amp;rsquo;m sure the estimates themselves are WAY off from where reality will land, but that isn&amp;rsquo;t the goal as I see it.&lt;/p&gt;
&lt;p&gt;The goal of this estimate is to, in a time-boxed format, create a framework for more meaningful discussions to happen. These numbers should not be looked at as facts but shape those first steps of discovery.&lt;/p&gt;
&lt;figure style=&#34;width: 50%; margin: 0 auto;&#34;&gt;
&lt;img src=&#34;deadlines.jpg&#34; alt=&#34;Meme: We&#39;ll ask for estimates, and treat them as deadlines. Evil laughing.&#34; data-action=&#34;zoom&#34;&gt;
&lt;/figure&gt;
&lt;p&gt;A few notes and observations:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;While it brought on a bit of anxiety in the early part of the week, I think we greatly benefited from the time-boxed nature of the request. We knew we had to deliver something on Friday, which influenced how much fidelity we could give toward specific feature estimates.&lt;/li&gt;
&lt;li&gt;We used typical Fibonacci story points for each fundamental feature/focus. We had a base point value and then a high point value. We also labeled each estimate as Low/Medium/High risk, which was meant to signal that, should the fidelity of this range be too large to make an informed business decision, we could do more discovery and sharpen those numbers.&lt;/li&gt;
&lt;li&gt;This was tough for me since I am still new to the codebase. I was able to partner with the previous tech lead, and that helped a ton, but my number ranges were still significantly larger than if I had been on the project previously with a known team.&lt;/li&gt;
&lt;li&gt;Once we had the base and high points, we totaled them and crafted some team scenarios. This was the worst part. Usually, I&amp;rsquo;m able to gauge a team point velocity based on historical observations, but this would be a team who would be new to a codebase and each other, so the numbers are very suspect. We did our best and tried to document uncertainty as transparently as possible. We noted that should this proposal be accepted, we should set up regular check-in against these numbers and adjust the team/scope/timeline as necessary.&lt;/li&gt;
&lt;li&gt;We worked in an onboarding penalty to the team velocity, spread across many months. I think this was a good move and made the scenarios more realistic.&lt;/li&gt;
&lt;li&gt;In our recommendations for team size, we noted the risk that an individual contributor may not stay on the team for the entirety of the project. Adding an additional contractor is not about a 1:1 increase in velocity but risk management. We want to maintain domain knowledge through expected staff changes.&lt;/li&gt;
&lt;li&gt;In our scenarios, we did not document time towards routine platform maintenance (this is in production with real customers) or personal vacation time. We did document our non-documentation so that when it comes time for realistic scheduling, these can be considered.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For what it needed to be, I think the outcome document of the week will help the stakeholders.&lt;/p&gt;
&lt;p&gt;It is by far &lt;strong&gt;not&lt;/strong&gt; my favorite way to approach projects. For that, I&amp;rsquo;d probably lean toward something like &lt;a href=&#34;https://basecamp.com/shapeup&#34;&gt;Shape Up&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>The Importance of Side Project Tiny Tickets</title>
      <link>https://mikezornek.com/posts/2022/9/side-project-tiny-tickets/</link>
      <pubDate>Fri, 30 Sep 2022 14:12:39 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2022/9/side-project-tiny-tickets/</guid>
      <description>&lt;p&gt;If you have an active side project, I highly recommend you invest some of your valuable and limited time into ticket/issue creation to &lt;strong&gt;plan out your work&lt;/strong&gt;. Specifically, you should &lt;strong&gt;build up a collection&lt;/strong&gt; of ready-for-work tiny tickets in the &lt;strong&gt;10-20 minute time completion&lt;/strong&gt; range.&lt;/p&gt;
&lt;p&gt;So often, we look forward to long &lt;strong&gt;&amp;ldquo;deep work&amp;rdquo; programming sessions&lt;/strong&gt; to make meaningful progress on our side projects, but they are &lt;strong&gt;few and far between&lt;/strong&gt;. We have tons of other life responsibilities from work, family, and friends that will have priority on our time. If we &lt;strong&gt;wait for perfect work sessions&lt;/strong&gt; to make progress, our side projects will &lt;strong&gt;take much longer&lt;/strong&gt; to complete, and the &lt;strong&gt;risk of failure&lt;/strong&gt; (due to personal distractions or loss of motivation) &lt;strong&gt;increases drastically&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;You need to find ways to &lt;strong&gt;move your side project forward&lt;/strong&gt; during the &lt;strong&gt;cracks of daily life&lt;/strong&gt;, hopefully setting up the foundation of a &lt;strong&gt;productive habit loop&lt;/strong&gt;. Have a little time before bed; here is a tiny ticket to do. Have time to kill waiting for a zoom meeting to start; find a tiny ticket to knock out. Many will be &lt;strong&gt;mindless dependency updates&lt;/strong&gt; or &lt;strong&gt;small refactors&lt;/strong&gt; but little by little, your project will &lt;strong&gt;grow&lt;/strong&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;If you have an active side project, I&amp;rsquo;d love to ask you some questions to help me with my research. Grab some calendar time here: &lt;a href=&#34;https://savvycal.com/zorn/chat&#34;&gt;https://savvycal.com/zorn/chat&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Budget Revisit 2022</title>
      <link>https://mikezornek.com/posts/2022/4/budget-revist-2022/</link>
      <pubDate>Sat, 02 Apr 2022 15:37:36 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2022/4/budget-revist-2022/</guid>
      <description>&lt;p&gt;The last time I &lt;a href=&#34;https://mikezornek.com/posts/2018/9/self-employment-estimate-numbers/&#34;&gt;wrote about my budgeting habits&lt;/a&gt; was back in September 2018, and the last time I looked over my numbers was in 2020 when I had &lt;a href=&#34;https://mikezornek.com/posts/2020/4/personal-lockdown-update/&#34;&gt;just lost my active contract&lt;/a&gt; due to the beginning of the COVID pandemic. Today as I look ahead to the summer and the future completion of my current contract gig, it was a good time to revisit my numbers.&lt;/p&gt;
&lt;p&gt;Like &lt;a href=&#34;https://mikezornek.com/posts/2018/9/self-employment-estimate-numbers/&#34;&gt;last time&lt;/a&gt; I&amp;rsquo;ll share how I collect and organize my numbers, and hopefully, it will inspire you to revisit or improve your budgeting solution.&lt;/p&gt;
&lt;p&gt;First, I collect a categorized list of expenses. I tend to use my credit cards, bank statements, and my recently completed taxes as a source of truth. Over time you can even use your historical budgets.&lt;/p&gt;
&lt;p&gt;For my personal and business expenses, I create a list of monthly and yearly costs. Inside each of those, I break things down as hard costs and soft costs. Hard costs are those expenses that would be difficult or dangerous to change, such as apartment rent or health insurance. Soft costs are those expenses that I could sacrifice if needed, such as Netflix or charitable donations. I&amp;rsquo;ll share some examples of my categories at the bottom of the post.&lt;/p&gt;
&lt;p&gt;To organize these, I use an app called &lt;a href=&#34;https://soulver.app/&#34;&gt;Soulver&lt;/a&gt;. It is an impressively clean but powerful way to collect line items and generate totals without the heaviness of a spreadsheet. I also appreciate how I can use programming-like comments starting with &lt;code&gt;//&lt;/code&gt; to document my thoughts.&lt;/p&gt;
&lt;p&gt;My goal is to generate an overall monthly total for both hard and soft costs (averaging the yearly as a generic monthly cost). I can then use that against my expected monthly income and available savings to help generate burndown charts and scenarios like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If I were to completely pause consulting and focus on a personal project how long could I last comfortably on my available savings.&lt;/li&gt;
&lt;li&gt;If I wanted to work the absolute minimum number of hours to pay for my unadjusted monthly costs (remember to consider taxes and savings goals), what hour total would I need?
&lt;ul&gt;
&lt;li&gt;What if I raised my hourly rate by X percent?.&lt;/li&gt;
&lt;li&gt;What if I was willing to remove some of those soft costs?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If I wanted to have X amount in cash available for a house or car down payment in X years, how much extra would I have to work?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Keep in mind that you won&amp;rsquo;t work full time every week/month. Make sure to account for expected vacation time off and some sick days.&lt;/p&gt;
&lt;p&gt;Budgeting like this is a great way to get clarity on your spending and hopefully nudge you to cancel or otherwise lessen the spending on things that are not a fair exchange for the level of enjoyment you get or just plain forgot about. Furthermore, learning to build up that savings pot can be incredibly empowering, allowing you to be much more selective when deciding what&amp;rsquo;s next.&lt;/p&gt;
&lt;h2 id=&#34;sample-expenses-and-categories&#34;&gt;Sample Expenses and Categories&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Personal Hard Costs Monthly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Rent&lt;/li&gt;
&lt;li&gt;Renter&amp;rsquo;s Insurance&lt;/li&gt;
&lt;li&gt;Electric Bill&lt;/li&gt;
&lt;li&gt;Gas Bill&lt;/li&gt;
&lt;li&gt;Car Payment&lt;/li&gt;
&lt;li&gt;Car Insurance&lt;/li&gt;
&lt;li&gt;Car Maintenance&lt;/li&gt;
&lt;li&gt;Car Fuel&lt;/li&gt;
&lt;li&gt;Health Insurance&lt;/li&gt;
&lt;li&gt;Vision Insurance&lt;/li&gt;
&lt;li&gt;Dental Insurance&lt;/li&gt;
&lt;li&gt;Prescriptions &amp;amp; Copays&lt;/li&gt;
&lt;li&gt;Life Insurance&lt;/li&gt;
&lt;li&gt;Grocery Store Food&lt;/li&gt;
&lt;li&gt;Haircut&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Personal Hard Costs Yearly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sleep Apnea Equipment&lt;/li&gt;
&lt;li&gt;Bank and Credit Card Fee&lt;/li&gt;
&lt;li&gt;Healthcare Lab Fees&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Personal Soft Costs Monthly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Eat Out Food&lt;/li&gt;
&lt;li&gt;Netflix&lt;/li&gt;
&lt;li&gt;Hulu&lt;/li&gt;
&lt;li&gt;YMCA/Gym&lt;/li&gt;
&lt;li&gt;Video Games&lt;/li&gt;
&lt;li&gt;Music Subscriptions&lt;/li&gt;
&lt;li&gt;Charitable Donations&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Personal Soft Costs Yearly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Vacation&lt;/li&gt;
&lt;li&gt;Clothes&lt;/li&gt;
&lt;li&gt;Shoes&lt;/li&gt;
&lt;li&gt;Gifts (Christmas and Birthdays)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Zorn Labs LLC Hard Monthly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GitHub Membership&lt;/li&gt;
&lt;li&gt;Linode Hosting&lt;/li&gt;
&lt;li&gt;Google Apps&lt;/li&gt;
&lt;li&gt;CircleCI&lt;/li&gt;
&lt;li&gt;Backblaze&lt;/li&gt;
&lt;li&gt;1Password&lt;/li&gt;
&lt;li&gt;Bank Fees&lt;/li&gt;
&lt;li&gt;Amazon Hosting&lt;/li&gt;
&lt;li&gt;Verizon Phone&lt;/li&gt;
&lt;li&gt;Verizon FIOS&lt;/li&gt;
&lt;li&gt;Zoom&lt;/li&gt;
&lt;li&gt;Dropbox&lt;/li&gt;
&lt;li&gt;SBA Loan Payment&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Zorn Labs LLC Hard Yearly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tax Preparation&lt;/li&gt;
&lt;li&gt;Hover / Web Domains&lt;/li&gt;
&lt;li&gt;Network Security Software&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Zorn Labs LLC Soft Monthly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Coworking Membership + Parking&lt;/li&gt;
&lt;li&gt;Various Software&lt;/li&gt;
&lt;li&gt;Various Podcast/Books/Education (This is one of my biggest categories!)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Zorn Labs LLC Soft Yearly&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Various Software&lt;/li&gt;
&lt;li&gt;Professional Memberships&lt;/li&gt;
&lt;li&gt;Office Supplies&lt;/li&gt;
&lt;li&gt;Professional Conference Budget&lt;/li&gt;
&lt;li&gt;Content Licenses&lt;/li&gt;
&lt;li&gt;New computer every other year: $4000 × 0.5&lt;/li&gt;
&lt;li&gt;New iPad every other year: $1100 × 0.5&lt;/li&gt;
&lt;li&gt;New iPhone every other year: $1000 × 0.5&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I tend not to budget for new hardware purchases like computers or phones every year, but it is great to keep those purchases in mind.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Don&#39;t Waste My Time (Video 2m)</title>
      <link>https://mikezornek.com/posts/2020/9/dont-waste-my-time/</link>
      <pubDate>Mon, 07 Sep 2020 13:17:43 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2020/9/dont-waste-my-time/</guid>
      <description>&lt;p&gt;I love the enthusiasm and energy of &lt;a href=&#34;https://www.youtube.com/watch?v=IrrdC_pkmGM&#34;&gt;this video&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A few thoughts on cutting to the chase in videos for an online audience.&lt;/p&gt;





&lt;video
  controls
  class=&#34;mb-0 w-full&#34;
  title=&#34;Don&amp;#39;t Waste My Time&#34;
&gt;
  &lt;source src=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/dont_waste_my_time.mp4&#34; type=&#34;video/mp4&#34;&gt;
  Your browser does not seem to support the video format. You can
  &lt;a href=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/dont_waste_my_time.mp4&#34;&gt;download the MP4 file&lt;/a&gt;
  directly.
&lt;/video&gt;

&lt;div class=&#34;mt-2 flex justify-between&#34;&gt;
  &lt;a href=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/dont_waste_my_time.mp4&#34;&gt;Download MP4&lt;/a&gt;
  
&lt;/div&gt;

</description>
    </item>
    
    <item>
      <title>A Screencast about Building Screencasts: How I Built the Guildflow 70-second Introduction Video</title>
      <link>https://mikezornek.com/posts/2020/9/building-screencasts/</link>
      <pubDate>Thu, 03 Sep 2020 12:12:44 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2020/9/building-screencasts/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m a big fan of screencasts. I generalize the term screencast here as any video where you see primarily a computer or user interface, with a voice and optional video feed of a person doing some kind of demonstration.&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;ve seen lots of screencasts here on the blog and I&amp;rsquo;ve even done a few professionally as a consultant, using real voice-over performers.&lt;/p&gt;
&lt;p&gt;In today&amp;rsquo;s video I&amp;rsquo;ll recount how I built the recent &lt;a href=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/an_introduction_to_guildflow_own_your_meetup.mp4&#34;&gt;70-second introduction video for Guildflow&lt;/a&gt; with specific demos and discussions of the tools I use including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://bear.app/&#34;&gt;Bear&lt;/a&gt; to write a screenplay in Markdown.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.apple.com/keynote/&#34;&gt;Keynote&lt;/a&gt; to build a presentation of screenshots.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.telestream.net/screenflow&#34;&gt;Screenflow&lt;/a&gt; to record my desktop and edit the capture.&lt;/li&gt;
&lt;li&gt;QuickTime and &lt;a href=&#34;https://flyingmeat.com/acorn/&#34;&gt;Acorn&lt;/a&gt; to build thumbnails.&lt;/li&gt;
&lt;/ul&gt;





&lt;video
  controls
  class=&#34;mb-0 w-full&#34;
  title=&#34;A Screencast about Building Screencasts: How I Built the Guildflow 70-second Introduction Video&#34;
&gt;
  &lt;source src=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/a_screencast_about_building_screencasts%20_how_i_built_the_guildflow_70-second_introduction_video.mp4&#34; type=&#34;video/mp4&#34;&gt;
  Your browser does not seem to support the video format. You can
  &lt;a href=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/a_screencast_about_building_screencasts%20_how_i_built_the_guildflow_70-second_introduction_video.mp4&#34;&gt;download the MP4 file&lt;/a&gt;
  directly.
&lt;/video&gt;

&lt;div class=&#34;mt-2 flex justify-between&#34;&gt;
  &lt;a href=&#34;https://f002.backblazeb2.com/file/mikezornek-com-media/a_screencast_about_building_screencasts%20_how_i_built_the_guildflow_70-second_introduction_video.mp4&#34;&gt;Download MP4&lt;/a&gt;
  
    &lt;a href=&#34;https://www.youtube.com/watch?v=rBnPVqyDMmk&#34;&gt;Watch on YouTube&lt;/a&gt;
  
&lt;/div&gt;

&lt;p&gt;Thanks for watching!&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Video: How I Use OmniFocus to Track Tasks (12m)</title>
      <link>https://mikezornek.com/posts/2020/6/how-i-use-omnifocus-to-track-tasks/</link>
      <pubDate>Wed, 10 Jun 2020 09:59:22 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2020/6/how-i-use-omnifocus-to-track-tasks/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.omnigroup.com/omnifocus/&#34;&gt;OmniFocus&lt;/a&gt; is a task manager that was built around the concepts of &lt;a href=&#34;https://en.wikipedia.org/wiki/Getting_Things_Done&#34;&gt;Getting Things Done&lt;/a&gt;, a popular action management system by David Allen.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve been a fan of Getting Things Done and a casual user of OmniFocus for years, mostly focusing on long term projects. For weekly stuff I used to do a manual list in Bear but a few weeks ago I took the time to see if I could make OmniFocus work for my weekly list, and so far it&amp;rsquo;s working out great. This video is a review of what&amp;rsquo;s changed.&lt;/p&gt;
&lt;iframe src=&#34;https://player.vimeo.com/video/427774922&#34; width=&#34;640&#34; height=&#34;360&#34; frameborder=&#34;0&#34; allow=&#34;autoplay; fullscreen&#34; allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;PS: One things I forgot to mention in the video is that for my side project I use &lt;a href=&#34;https://www.pivotaltracker.com&#34;&gt;Pivotal Tracker&lt;/a&gt; for actionable technical tasks and keep the marketing and general business tasks in OmniFocus. I am also experimenting with a &lt;a href=&#34;https://trello.com/b/Z74hJIPj/clubhouse-roadmap&#34;&gt;public project roadmap&lt;/a&gt; but that is more experimental.&lt;/p&gt;
&lt;h2 id=&#34;links&#34;&gt;Links&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://coreint.org/2020/06/episode-423-what-are-you-going-to-work-on/&#34;&gt;Core Intuition » Episode 423: What Are You Going To Work On?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.omnigroup.com/omnifocus&#34;&gt;OmniFocus - The Omni Group&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://en.wikipedia.org/wiki/Getting_Things_Done&#34;&gt;Getting Things Done - Wikipedia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://almad.blog/essays/no-bugs-just-todos/&#34;&gt;There Are No Bugs, Just TODOs | Almad’s Changelog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.pivotaltracker.com&#34;&gt;Pivotal Tracker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.macstories.net/ios/how-i-use-custom-perspectives-in-omnifocus/&#34;&gt;How I Use Custom Perspectives in OmniFocus - MacStories&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
    
    <item>
      <title>My Favorite TextExpander Shortcut Snippets</title>
      <link>https://mikezornek.com/posts/2020/4/my-favorite-textexpander-shortcut-snippets/</link>
      <pubDate>Mon, 27 Apr 2020 14:52:36 -0400</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2020/4/my-favorite-textexpander-shortcut-snippets/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been a long time &lt;a href=&#34;https://textexpander.com/&#34;&gt;TextExpander&lt;/a&gt; user. You don&amp;rsquo;t know of TextExpander? Shame!&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;TextExpander lets you instantly insert snippets of text from a repository of emails, boilerplate and other content, as you type – using a quick search or abbreviation.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;My common shortcut snippets include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Email: &lt;code&gt;z@zl&lt;/code&gt; into &lt;code&gt;zorn@zornlabs.com&lt;/code&gt; and &lt;code&gt;m@m.com&lt;/code&gt; for &lt;code&gt;mike@mikezornek.com&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Date: &lt;code&gt;ddate&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Time: &lt;code&gt;ttime&lt;/code&gt; &amp;ndash; very handy while testing UI as a piece of dynamic content, yet descriptive and ordered.&lt;/li&gt;
&lt;li&gt;Common Google Terms: &lt;code&gt;-ep&lt;/code&gt; into &lt;code&gt;Elixir Phoenix&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Phone Numbers: &lt;code&gt;cphone&lt;/code&gt; and &lt;code&gt;hphone&lt;/code&gt; into the real phone numbers.&lt;/li&gt;
&lt;li&gt;Support Email Replies &amp;ndash; when I did a lot of that thing.&lt;/li&gt;
&lt;li&gt;URL to my meeting calendar: &lt;code&gt;-meeting&lt;/code&gt; into &lt;code&gt;https://savvycal.com/zorn/chat&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Common Xcode Comments: &lt;code&gt;-mark&lt;/code&gt; into:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;// MARK: - Outlets
// MARK: - Properties
// MARK: - Life Cycle
// MARK: - Methods
// MARK: - Private
&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;SwiftLint Disables:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;// swiftlint:disable rule_name
[CLIPBOARD]
// swiftlint:enable rule_name
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I added a new one today, for the common need to convert a title-like string into a filename-friendly one.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;%pasteboard&amp;#34;&lt;/span&gt;.&lt;span style=&#34;color:#a6e22e&#34;&gt;toLowerCase&lt;/span&gt;().&lt;span style=&#34;color:#a6e22e&#34;&gt;replace&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;/ /g&lt;/span&gt;, &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;-&amp;#34;&lt;/span&gt;);
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Thus expanding &lt;code&gt;-urlp&lt;/code&gt; into &amp;ldquo;Nurturing Your Community During Lock Down&amp;rdquo; (the clipboard) into &lt;code&gt;nurturing-your-community-during-lock-down&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;quick-filenames-from-title.gif&#34; alt=&#34;GIF demo of TextExpander snippet.&#34;&gt;&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m on the hunt for more too. Let me know if you have any recommendations!&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>My New Experiment: Journaling All the Things</title>
      <link>https://mikezornek.com/posts/2016/9/my-new-experiment-journaling-all-the-things/</link>
      <pubDate>Tue, 13 Sep 2016 21:34:36 +0000</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2016/9/my-new-experiment-journaling-all-the-things/</guid>
      <description>&lt;p&gt;At &lt;a href=&#34;http://cocoaconf.com/&#34;&gt;CocoaConf&lt;/a&gt; I attended a session from my fellow &lt;a href=&#34;https://www.bignerdranch.com/&#34;&gt;Big Nerd Ranch&lt;/a&gt; coworker, &lt;a href=&#34;https://twitter.com/borkware&#34;&gt;Mark Dalrymple&lt;/a&gt;. In this session he explored the questions we ask when looking for bugs — or more specifically their solutions.&lt;/p&gt;
&lt;p&gt;At one point Mark showcased a text document that in glorious detail documented the assumptions, questions and answers he was going through to solve a problem. Now, this wasn’t a document Mark made for the talk, it was from a real journal entry he had. He was &lt;a href=&#34;http://c2.com/cgi/wiki?RubberDucking&#34;&gt;Rubber Ducking&lt;/a&gt; but documenting the discussion like a court reporter.&lt;/p&gt;
&lt;p&gt;If you ever work with Mark you’ll quickly discover he is a relentless notetaker. This is just one more example of how it can pay off.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Need to step away to work on something else, here is a document to reload your context.&lt;/li&gt;
&lt;li&gt;Need to invite someone else on to help solve the problem, here is your knowledge transfer.&lt;/li&gt;
&lt;li&gt;Want to write up a blog post to help others in the future, here is your draft.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I left the session very inspired. As a result, for this week, technically my vacation week but I’m working on side projects, I’m starting an experiment where I try to emulate Mark’s journaling habits as best I can. I have 3 documents at the moment:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Daily Journal — Mostly flat list with GOALS for the day and then ACCOMPLISHMENTS of what actually got done at the end. If something in the list has notes in and of itself, it’s hot-linked to those on their own wiki page.&lt;/li&gt;
&lt;li&gt;Company Journal — Documenting the efforts I’m putting into my side project and the company that encapsulates it.&lt;/li&gt;
&lt;li&gt;Tech Journal — Starting with Apple, here is where I’m collection my thoughts, issues, and bugs relative to Apple technologies. I expect to make more for other stacks like web in the future.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I’m using &lt;a href=&#34;https://plausible.coop/voodoopad/&#34;&gt;VoodooPad&lt;/a&gt; for the actual files/wikis themselves. It works well letting me organize like a wiki and can handle screenshots too.&lt;/p&gt;
&lt;p&gt;We’ll see how I hold up. I want to give it my all for at least a week and then will do a retrospective as to how it’s working out. There are challenges (like my current typing speed) but lots of potential benefits too.&lt;/p&gt;
&lt;p&gt;Update: &lt;a href=&#34;https://borkopolis.wordpress.com/2011/05/04/logs-is-logs/&#34;&gt;More from Mark’s own blog.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Do you journal like this? Any tips or other feedback? I’d love to hear it. Message me on Twitter &lt;a href=&#34;https://jawns.club/@zorn&#34;&gt;@zorn&lt;/a&gt; or via email: &lt;a href=&#34;mailto:mike@mikezornek.com&#34;&gt;mike@mikezornek.com&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Managing Remote Teams</title>
      <link>https://mikezornek.com/posts/2016/1/managing-remote-teams/</link>
      <pubDate>Thu, 28 Jan 2016 21:25:28 +0000</pubDate>
      <author>mike@mikezornek.com (Mike Zornek)</author>
      <guid>https://mikezornek.com/posts/2016/1/managing-remote-teams/</guid>
      <description>&lt;p&gt;Local company &lt;a href=&#34;http://wildbit.com/&#34;&gt;Wildbit&lt;/a&gt; has been nice enough to host a running series of meetup events focused on running a software business and all that it can entail. Last night we discussed &lt;a href=&#34;http://www.meetup.com/Wildbit/events/227996687/&#34;&gt;Managing Remote Teams&lt;/a&gt; and as a remote employee myself I was interested to hear what others people had to share. Below are some of my notes.&lt;/p&gt;
&lt;h2 id=&#34;context&#34;&gt;Context&lt;/h2&gt;
&lt;p&gt;In attendance we had about 12 or so people. Many from Wildbit (many of their remote people were in town), but we also had a pair from another small (6+) local software company, one from a local company researching coworking and myself, whom works remotely for the &lt;a href=&#34;https://www.bignerdranch.com/&#34;&gt;Big Nerd Ranch&lt;/a&gt;, down in Atlanta.&lt;/p&gt;
&lt;h2 id=&#34;general-observations&#34;&gt;General Observations&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Running an all in-person office has unique organization challenges and benefits.&lt;/li&gt;
&lt;li&gt;Running an all remote office has unique organization challenges and benefits.&lt;/li&gt;
&lt;li&gt;Running a hybrid in-person and remote office has unique organization challenges and benefits.&lt;/li&gt;
&lt;li&gt;Even still, things vary based on the size and work of your company.&lt;/li&gt;
&lt;li&gt;No rules are true for everyone so be flexible.&lt;/li&gt;
&lt;li&gt;Be prepared to spend time and energy on this.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;why-consider-remote-employees&#34;&gt;Why Consider Remote Employees&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Expands your potential hiring pool greatly.&lt;/li&gt;
&lt;li&gt;Very helpful if you are using niche technologies where it can be hard to find experts (Closure, Rust, etc.).&lt;/li&gt;
&lt;li&gt;Potential benefits in having time shifted work (but this can also introduce communication problems, lag).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;how-to-get-started&#34;&gt;How to Get Started&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;If you currently have a 100% in-person company, adding remote people will be a significant culture shift. Be prepared.&lt;/li&gt;
&lt;li&gt;No one wants to be the first remote hire on a team.&lt;/li&gt;
&lt;li&gt;Consider adding multiple remotes at once.&lt;/li&gt;
&lt;li&gt;Consider offering work from home to current in-person staff to help the new culture work itself out.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;challenges&#34;&gt;Challenges&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;It can be hard for a remote employee to demonstrate what they are working on.&lt;/li&gt;
&lt;li&gt;Being remote requires more thorough and regular communication than most people expect.&lt;/li&gt;
&lt;li&gt;Lots of people romanticize remote work from &lt;a href=&#34;http://amzn.to/1nqWfU4&#34;&gt;DHH’s writings&lt;/a&gt; and don’t respect the real life challenges of it all.&lt;/li&gt;
&lt;li&gt;Sometimes with a hybrid company, teams will be setup where you have two people “in office” and one person remote on a project. It can be real easy for the two people in office to share more face-to-face leaving the remote person feel left out.&lt;/li&gt;
&lt;li&gt;If you have employees in different states / countries, you have to make sure you are following the approbate employment laws of those states / countries.&lt;/li&gt;
&lt;li&gt;The whole “programming in your underwear” trope is really misguided. Most successful remote people have a schedule, take showers, get properly dressed and have a dedicated work spaces.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;face-to-face-retreats&#34;&gt;Face to Face Retreats&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Everyone seemed to agree that it’s a bad idea for the remotes to never come together. Everyone benefits from real face to face time so plan for it early.&lt;/li&gt;
&lt;li&gt;Wildbit has yearly company retreats, where they work, plan for the year ahead and otherwise define the goals and values that should guide all their decisions.&lt;/li&gt;
&lt;li&gt;Other companies do more vacation oriented retreats to help connect people socially.&lt;/li&gt;
&lt;li&gt;It was also suggested that depending on the size of the company it could benefit from have some company wide events and then some smaller more team focused events.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;things-you-can-do-to-help-remote-employees&#34;&gt;Things You Can Do to Help Remote Employees&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Setup a Slack or HipChat for communication.
&lt;ul&gt;
&lt;li&gt;Additionally try to have people communicate what they are doing. “Starting feature X”, Reviewing PR Y”, “Stepping out to get some coffee”, “Breaking for an hour to watch a conference talk” — sharing these can help people better understand what’s going on.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Consider giving them an annual office stipend to improve their workspace; equivalent to the money you’d spend giving them an office in your building.&lt;/li&gt;
&lt;li&gt;Make sure all in-office systems are available to remote folks. Things like file servers, whitelisted IP API access, etc.&lt;/li&gt;
&lt;li&gt;Prefer video chat over audio chat. Seeing human faces helps communication and empathy.&lt;/li&gt;
&lt;li&gt;When running a video chat, consider having even the in-office people stay at their desk and connect to give every “virtual head” its own space. (I’ve also had everyone use their laptop for the video and a shared phone for the voice.&lt;/li&gt;
&lt;li&gt;If you are presenting and the video is going out to remote people, don’t forget to ask them for questions and check the chat room.&lt;/li&gt;
&lt;li&gt;If you are a manager and are set up to have 1:1 monthly meetings with in-office people, consider offering bi-weekly for remotes — since they might be more out of sync.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;equipment&#34;&gt;Equipment&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Some people were enjoying the &lt;a href=&#34;https://highfive.com/product/video-conferencing&#34;&gt;HighFive&lt;/a&gt; video conferencing hardware — though they needed more seats than the current solution offers for their company wide stuff.&lt;/li&gt;
&lt;li&gt;BNR’s recently been using the YouTube Live service to stream and capture video with fair success for our larger meetings / internal educational talks.&lt;/li&gt;
&lt;li&gt;One AV tool BNR uses is a toss-able chat box that contains a microphone so after large meetings, during Q and A, the remote folks can hear the questions being asked.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.doublerobotics.com/&#34;&gt;The Double&lt;/a&gt; was brought up reguarding its use as a virtual presence. It’s cool stuff but of questionable return value.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Hope you enjoyed my notes. If you have anything to share about your own remote work &lt;a href=&#34;mailto:mike@mikezornek.com&#34;&gt;let me know&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>