Jekyll2024-02-12T12:18:38+11:00https://aaronmoodie.com/feed.xmlAaron MoodieAaron Moodie is a Melbourne based Product Designer currently leading Design at Muso.Simple Things2023-10-23T10:00:00+11:002023-10-23T10:00:00+11:00https://aaronmoodie.com/blog/simple-things<p>I like simple things. Simple recipes. Simple furniture. Simple architecture.</p>
<p>Simple does not mean basic, nor is it easy. Simple is hard work.</p>
<p>Simple is enough; no more or less than it should be. Simple does what is needed and does it well.</p>
<p>Simple is delightful. And often surprising. Simple is elusive, but usually obvious.</p>
<p>Simple is a destination, but it’s also a guide.</p>
<p>Simple is what I strive for. Simple pushes me forward.</p>I like simple things. Simple recipes. Simple furniture. Simple architecture.Web Development for Fun and Enjoyment2023-10-21T10:00:00+11:002023-10-21T10:00:00+11:00https://aaronmoodie.com/blog/web-development-for-fun-and-enjoyment<p>A couple of weeks ago, I came to the realisation that building for the web is not only what I’m good at; it’s what brings me joy. This may seem like a strange realisation, given that I design software for a living. However, my roles over the last few years have, for the most part, moved away from hands-on development as part of my day-to-day work.</p>
<p>I wanted to change this, so over the last few weeks I’ve picked up some half-completed projects and started some new ones.</p>
<p><img src="/images/hanami-homepage.png" alt="The new Hanami welcome page in light and dark mode" /></p>
<p>Firstly, I designed and built three new static pages for the <a href="https://hanamirb.org">Hanani</a> web framework, including a <a href="https://github.com/hanami/hanami/pull/1358">new project landing page</a>. As a long-time Ruby fan, this was an especially fun project to be involved with.</p>
<p>I’ve also started rebuilding <a href="https://maryannemoodie.com">my wife’s website</a>. It’s been several years since we launched the current site, and while the design has held up, we thought a brand and content refresh were needed.</p>
<p>The current site is built using Ruby on Rails. At the time, this was the tool I was most familiar with and the one that provided the outcome we needed. I’m rebuilding the new site using Next JS, both because it seems a better fit for the project and also to improve my Next JS knowledge.</p>
<p>You may have also noticed that this site has had a little refresh. I took some time this week to clean up the design and the code. There are more improvements to make, but I’m enjoying the direction this look and feel has taken—especially the aspects that make use of <a href="https://utopia.fyi">Utopia</a> and fluid responsive design. </p>
<p>These are small projects, but they mark a shift in my thinking and a better understanding of what makes me happy. I’d forgotten not only how much I enjoy building for the web, but how much I enjoy building <em>for the joy of building</em>.</p>A couple of weeks ago, I came to the realisation that building for the web is not only what I’m good at; it’s what brings me joy. This may seem like a strange realisation, given that I design software for a living. However, my roles over the last few years have, for the most part, moved away from hands-on development as part of my day-to-day work.Lessons Learned Setting and Missing Goals2023-07-04T21:07:33+10:002023-07-04T21:07:33+10:00https://aaronmoodie.com/blog/lessons-learned-setting-and-missing-goals<p>Two years ago I made a commitment to myself to post once a week. This is the third post in that time. I could list a number of reasons as to why I missed this goal, but the reality is it wasn’t a priority. Despite how much I love the idea of posting more often, it’s something I’ve not made time for. And that’s okay.</p>
<p>In hindsight, posting once a week was an aggressive commitment. I’d previously posted 4-5 times a year. A more sensible and achievable goal would have been once a month. Despite this seeming like a failure, I’m actually quite happy with the outcome. I learnt something about myself and how I like to write.</p>
<p>The first take-away is set realistic goals. Despite advising others against doing this, I went ahead and made the classic mistake of overreaching. The reason the C25K (Couch To 5k) running program is so successful is that it gets people to their goal gradually. No-one is expected to run 5kms on day one. Expecting myself to write 1000 words a week <em>that I was happy with</em> was essentially like asking myself to run 5k at pace in my first attempt. I gave it shot but ultimately lost my momentum.</p>
<p>Secondly, review my goals. It was clear 2 months in that I was never going to hit a post a week. This would have been the perfect time to re-evaluate and set a goal more inline with my commitment and expectations. I actually have a fortnightly task set up to do just this. However, posting once a week was not on this list of goals as I considered it too obvious.</p>
<p>Lastly, write small. Something that continues to trip me up with blogging is expecting every post I write to be a 1000-word critical think piece. I have so many learnings day-to-day that would make for great insights, yet I overlook these as being trivial and not interesting to others. But that’s just the thing; this blog is for me. The whole point is that I’m writing for myself.</p>
<p>There was one other learning I have, but I’m not sure what to do with it. I found trying to write blog posts at a specific time didn’t work for me (I tried Saturday morning). This makes for an interesting conundrum. How do I make time to write when I having a set time isn’t conducive to writing? Perhaps it was just the wrong time – I don’t seem to have the same issue when writing my journal. Or perhaps the goal of writing an entire post in one go is unrealistic.</p>
<p>Whatever the answer, I’m looking forward to figuring it out and getting a few more posts up here. Whenever that may be.</p>Two years ago I made a commitment to myself to post once a week. This is the third post in that time. I could list a number of reasons as to why I missed this goal, but the reality is it wasn’t a priority. Despite how much I love the idea of posting more often, it’s something I’ve not made time for. And that’s okay.RSS Club2022-06-18T14:06:49+10:002022-06-18T14:06:49+10:00https://aaronmoodie.com/blog/rss-club<p>Hey there! It’s been a while. <a href="https://aaronmoodie.com/blog/setting-a-new-writing-goal">One of my last posts</a> was a public commitment to post something every week. Almost twelve months later and this is only the second time I’ve published something. In days past I would have been disappointed in myself, but I guess I’ve grown in that regard (hopefully). Life gets in the way and other things take priority. Having said that, I need to keep looking after myself and I’ve found my writing to be one of the best ways to keep my mind healthy.</p>
<p>My journalling also took a bit of a hit. I’ve started getting back into that more recently but nowhere as frequent as I was 12 months ago. It will be interesting to see how my stats for the last 12 months compare to the year before.</p>
<p>So why get back into writing now? I mentioned the health aspect of it but I could have just continued with my journal to accomodate for that. There was actually something else that gave me the push to post something to my blog again and that was <a href="https://daverupert.com/2018/01/welcome-to-rss-club">RSS club</a>.</p>
<p>The idea of being able to post something publicly but also have it be somewhat secret sounded fun. A little club for anyone following this blog via RSS. Not that I have many people reading my blog anyway, but you get the idea. This was the main reason for dusting off this codebase and getting a new post up.</p>
<p>Will it mean I post more frequently? I can’t really say. All I know is it feels great regurgitating all these thoughts onto the screen without it needing to make any real sense or to have a point. This piece is definitely more me.</p>Hey there! It’s been a while. One of my last posts was a public commitment to post something every week. Almost twelve months later and this is only the second time I’ve published something. In days past I would have been disappointed in myself, but I guess I’ve grown in that regard (hopefully). Life gets in the way and other things take priority. Having said that, I need to keep looking after myself and I’ve found my writing to be one of the best ways to keep my mind healthy.Resource vs Technology2021-08-10T15:19:13+10:002021-08-10T15:19:13+10:00https://aaronmoodie.com/blog/resource-vs-technology<p>When I was a kid my family upgraded our PC, installing a 100MB hard dive. We’d previously run everything off floppy discs, so to go to 100MB was mind blowing (DOOM ran <em>so</em> fast). That was nearly 30 years ago. Today the hard drive in my phone has over a thousand times more capacity and is a fraction of the size.</p>
<p>The progress of digital technology has driven down the cost of computing so much that we barely consider it any more. Take any enterprise cloud storage provider like AWS or Google Cloud. The cost of renting computing power or storage on these platforms is fractions of a cent. Storage is so cheap that it’s given away with online services like email and social networks. The initial promise of the computer was a paperless office, but we’ve far surpassed that to where businesses have no office and companies are run entirely from the cloud.</p>
<p>Listening to the debate on climate change, I find a parallel here that’s been missed in the broader discussion on clean energy. Although not as drastic as the progress computers have seen, for the last 40 years solar panels have <a href="https://en.wikipedia.org/wiki/Solar_panel#Price">consistently become 20% cheaper</a> with every doubling of panel production. This, along with <a href="https://en.wikipedia.org/wiki/Solar_cell_efficiency">increasing solar panel efficiency</a>, should be enough to give anyone pause about what lay ahead. <a href="https://en.wikipedia.org/wiki/Moore%27s_law">Moore’s Law</a> helped drive the cost of computing power and storage to almost zero. What will the world look like as renewable technologies follow a similar path?</p>
<p>In his book <em>Windfall</em>, <a href="https://twitter.com/KetanJ0">Ketan Joshi</a> paints an interesting picture of where we’re headed:</p>
<blockquote>
<p>Where things get very very interesting is when Australia moves past 100 per cent renewables and into 200 to 400 percent renewables, with the surplus used to create energy stored as hydrogen … Amazingly [the cost of] renewable energy begins to decrease as the you reach renewable percentages above 100 per cent.</p>
</blockquote>
<p>The debate right now in Australia rages around the idea that renewables are risky and that the fossil fuel industry is stable and secure. However, when you flip that argument to look at where other ‘secure’ businesses such as Blockbuster and Kodak ended up when faced with the advancement of technology, the risk seems somewhat misplaced.</p>
<p>Is it really so far fetched to believe that as renewable technology continues to improve, the cost of electricity will continue to fall? What possibilities open up when our energy production moves from being powered by limited resources to that of continually advancing technology?</p>
<p>Modern energy companies like <a href="https://www.amber.com.au">Amber Electric</a> are already moving away from traditional utility models towards something a little more adaptable. Instead of on-selling electricity to customers at retail prices, customers pay a monthly fee to access electricity at wholesales prices. The immediate appeal for customers is cheaper electricity bills, but the long term play for Amber is a steady revenue stream, even as the cost of electricity falls.</p>
<p>The initial promise of renewables was replacing polluting resources with clean technology, but I don’t see the transition stopping there. My bet is a future powered by renewable technology will far surpass anything currently possible with fossil fuels, both in terms of reducing emission and energy production.</p>When I was a kid my family upgraded our PC, installing a 100MB hard dive. We’d previously run everything off floppy discs, so to go to 100MB was mind blowing (DOOM ran so fast). That was nearly 30 years ago. Today the hard drive in my phone has over a thousand times more capacity and is a fraction of the size.Setting a New Writing Goal2021-07-20T16:00:42+10:002021-07-20T16:00:42+10:00https://aaronmoodie.com/blog/setting%20a%20new%20writing%20goal<p>Last week marked one year of me keeping a journal. As I’ve mentioned previously, writing is not something that comes easily, but has always been something I’ve wanted to do more of. Being able to look back and see that in the last 12 months I’d written over 70,000 words came as both a surprise and a great sense of accomplishment.</p>
<p>One thing that became apparent while writing my journal was that while not every entry was great, within that quantity of words was some really great writing. David Bayles and Ted Orland talk about something similar in the book Art & Fear, that given the task of producing just one good photo or as many photos as possible, students aiming for quantity over quality ended up producing better photos than those just aiming for one good photo.</p>
<p>In the same period of time I was keeping a journal I only published 3 blog posts, and I think all of them are about writing more. Similar to those students, I’ve been waiting for the ‘right’ thing to talk about, and as a result didn’t produce very much at all.</p>
<p>I was thinking about this while listening to the <a href="https://www.designbetter.co/podcast/julie-zhuo">Design Better interview with Julie Zhuo</a> late last week. I’ve heard Julie talking about her writing a number of times and I’m always inspired by the commitment she made to write once a week. I’ve tried to do the same a number of times but have never been able to keep it going. Listening to her talk about it again this week however, something was different. I <em>have</em> achieved something similar, and know that if I set the right goal and make the time it’s a goal I can reach.</p>
<p>The difference was understanding what the goal actually is. Deciding that you’re going to post a blog post every week is fine if you are in the habit of writing every day. However if you’re not, like I was, then it’s likely to fail. To get to the point where I could write a blog post every week I needed to start small and make the goal about the ritual, not the outcome.</p>
<p>In the book <em>Atomic Habits</em>, author James Clear talks about exactly this. The goal isn’t to run a marathon, the goal is to put your running shoes on every day and go for a run. Just as the goal with my journal wasn’t to write 70,000 words, it was to sit down each day, open up my text editor and start writing. Is every journal an exceptional piece of writing? Far from it, but I’d much rather have written 70,000 average words than nothing at all.</p>
<p>So today starts my new habit and my new goal. For the next year, I’m going to get up a little earlier on a Saturday, make a coffee and write a blog post. If I can stick to that goal, this time next year I should have around 52 additional posts on my blog. There’s going to be a lot of average posts, but I know there’s going to be some great ones too, and I look forward to sharing them all.</p>Last week marked one year of me keeping a journal. As I’ve mentioned previously, writing is not something that comes easily, but has always been something I’ve wanted to do more of. Being able to look back and see that in the last 12 months I’d written over 70,000 words came as both a surprise and a great sense of accomplishment.Sharing Early And Often2021-05-16T09:00:00+10:002021-05-16T09:00:00+10:00https://aaronmoodie.com/blog/sharing-early-and-often<p>I’ve been writing a lot. Yet despite 10 months of daily journal entries I’ve only shared one post. Part of this was my <a href="https://aaronmoodie.com/blog/on-spelling-and-owning-your-weaknesses/">concern over spelling</a>, but I can also attribute it to waiting for the ‘right’ thing to write about – overthinking what will make a good post and missing the value of messy thoughts and discovery.</p>
<p>Although I do a better job of sharing and communicating in my design leadership role at A Cloud Guru, it’s something I need to improve – both to create more visibility around the work I’m doing, and to ensure I’m leading by example. With our distributed team growing across Australian and the US, being able to see design work in progress has become essential, both for ensuring design consistency and identifying opportunities to create a more cohesive customer experience.</p>
<p>Figuring out how to facilitate communication has been something I’ve given a lot of attention to this year. How do we make it easy for people to share work and receive feedback with low friction, and make that part of our culture? We have a number of tools in use, but so far nothing that’s really been able to fill that gap between discovery documentation and delivering design assets.</p>
<p>Our weekly Design Review meetings are currently the best way to do this, but a complimentary asynchronous ritual would be a great addition to our process. Maybe it’s as simple as a blog post. Maybe I’m overthinking what would be an ‘ideal’ solution and missing the value of messy thoughts and discovery – starting with something simple, gathering feedback and working out what actually helps the team communicate better.</p>
<p>This is what’s running through my head as I reflect on the past week, and it seemed an opportune time to share early. The next thing is to make it more often.</p>I’ve been writing a lot. Yet despite 10 months of daily journal entries I’ve only shared one post. Part of this was my concern over spelling, but I can also attribute it to waiting for the ‘right’ thing to write about – overthinking what will make a good post and missing the value of messy thoughts and discovery.On Spelling And Owning Your Weaknesses2021-03-01T10:00:00+11:002021-03-01T10:00:00+11:00https://aaronmoodie.com/blog/on-spelling-and-owning-your-weaknesses<p>Writing is something I’ve always wanted to be better at, but for some reason never able to form a routine around <a href="https://aaronmoodie.com/blog/getting-back-into-writing">until recently</a>. Half way through last year I started a journal with a goal of writing something every day. About 3 weeks into my new writing routine, I read <a href="https://jamesclear.com/atomic-habits"><em>Atomic Habits</em></a> by James Clear which helped me build on the momentum I had already gained.</p>
<p>With two consecutive months of journal entries behind me, I started thinking about setting a new goal of publishing more. I’d always known this is what I was working towards, and I was excited to share the ideas I’d been exploring. I’d proven I could write, now it was just a case of publishing.</p>
<p>But I couldn’t get there. Every time I would sit down to write a blog post I’d struggle, like I was wading through mud to get my thoughts down. I found it so easy to write in my journal, so I couldn’t understand why I was finding a blog post so hard. It was really frustrating and left me feeling deflated and upset. I have many journal entries on this.</p>
<p>Around the same time I’d started my journal, I also took on a life coach. I’d reached a point in my professional life where I felt stuck and unable to understand the sense of inertia that had set in. There was a lot going on in the world and this probably contributed to this feeling, but it wasn’t the cause. I wanted to understand more about myself, why I felt the way I did and what I should be focusing on.</p>
<p>I’ve been able to dig into a lot of these questions, some of which I’ll write about another time. I’m mentioning this as we spoke at length about this struggle to publish something in a previous conversation. It was incredibly helpful to talk through the emotions I was feeling as a result of this block and to unpack them. As we pushed further into these feelings, I started to see there was some part of me that was sabotaging myself, and didn’t want me to publish anything.</p>
<p>At first this seemed absurd. I love learning and developing new skills, and I’ve always thrown myself into any challenge. It made no sense that I would work against myself to hinder this process, especially when I was enjoying my journal so much.</p>
<p>Then it twigged. I’m not sure why I’d not realised it before, but in a throwaway comment I mentioned not being very confident with my spelling, and then everything clicked.</p>
<p>My spelling has always been a point of discomfort. It makes me feel embarrassed and ashamed. At school it was something my English report always called attention to, and as I’ve gotten older is something work colleagues have often commented on. As the internet took off and the written word proliferated, so did my apprehension about sharing things publicly. This wasn’t for a lack of trying, it’s been something I want to be better at, which only made me harder on myself for my mistakes.</p>
<p>The moment I made this connection, I felt a wave of emotion wash over me. It was both freeing and deeply saddening. The realisation that my fear of spelling mistakes – and the associated judgement – had stopped me expressing myself was heartbreaking. On the other hand it was so liberating to see this false narrative for what it was and be able to move past it.</p>
<p>And so that’s what this post is. It’s an acknowledgement. I’m great, nay exceptional, at a lot of things, and it’s ok if spelling isn’t one of them. It hasn’t stopped me from being a great communicator, and it shouldn’t stop me writing more. Indeed, my apprehension to publish something has been the driving force behind this post. Every time I felt that doubt creep in, it was more reason to keep writing and to get this post out into the world. Spelling mistakes and all*.</p>
<p>*May not contain spelling mistakes.</p>Writing is something I’ve always wanted to be better at, but for some reason never able to form a routine around until recently. Half way through last year I started a journal with a goal of writing something every day. About 3 weeks into my new writing routine, I read Atomic Habits by James Clear which helped me build on the momentum I had already gained.Getting back into writing2020-08-04T09:00:00+10:002020-08-04T09:00:00+10:00https://aaronmoodie.com/blog/getting-back-into-writing<p>I recently read two things that have helped me get back into writing.</p>
<p>One was an <a href="https://sivers.org/dj">article by Derek Sivers</a> about his approach to keeping a daily journal:</p>
<blockquote>
<p>“Every day at some point, just open up this diary, write today’s date, then start writing. Write what you did today, and how you are feeling, even if it seems boring.”</p>
</blockquote>
<p>The other was a <a href="https://frankchimero.com/blog/2020/popeye">post by Frank Chimero</a> on redesigning his blog. In it he called for designers to write more, lest bullshit fill the void:</p>
<blockquote>
<p>“When the experienced don’t write, grifters step in, feign expertise, and sell it.”</p>
</blockquote>
<p>As simple as they are, these two sentences have helped me get through a bit of a mental block with my writing.</p>
<p>I have a tendency to overthink things when I’m developing new skills, and reading Derek’s post gave me a simple and achievable way to move past this. So far I’ve written something every day for the last three weeks, which is a personal record.</p>
<p>Frank’s post gave me a reason to write more and motivation to share it. Even after being in the industry for 20 years, writing about design has been something I’ve shied away from despite how much I enjoy sharing and discussing ideas.</p>
<p>I aways find it inspiring how simply reframing the way we think about things can have such an impact on our perception. These posts gave me a new perspective on how and why I write, and it feels good to have direction again. It’s these little moments across the web that I look forward to each time I open my browser.</p>I recently read two things that have helped me get back into writing.Using Ruby to Compare Two Lists of Email Addresses2020-02-07T10:00:00+11:002020-02-07T10:00:00+11:00https://aaronmoodie.com/blog/using-ruby-to-compare-two-lists-of-email-addresses<p>I recently joined the committee of my son’s daycare and have been helping out on the communications side of things. One of my first tasks was to add the new parents to our mailing list and remove folks who had left. This seemed easy enough until I realised that I’d need to manually compare two lists of around 100 emails to figure out who was new and who had left … 😅</p>
<p>Since this is something I might need to do regularly, I thought I’d write up a little Ruby script to help out. I initially started with two loops comparing each line of a file with every line of the other. After looking for a more eloquent way to achieve this however, I found the <code class="language-plaintext highlighter-rouge">select</code> method does a much better job of finding multiple matches and makes for more readable code.</p>
<div class="language-ruby highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="k">def</span> <span class="nf">find_unique_emails</span><span class="p">(</span><span class="n">list_01</span><span class="p">,</span> <span class="n">list_02</span><span class="p">)</span>
<span class="c1"># given two email lists, find all emails</span>
<span class="c1"># in list_01 that are not in list_02</span>
<span class="n">unique_emails</span> <span class="o">=</span> <span class="p">[]</span>
<span class="n">list_01</span><span class="p">.</span><span class="nf">each</span> <span class="k">do</span> <span class="o">|</span><span class="n">email</span><span class="o">|</span>
<span class="c1"># Create an array of any matched emails</span>
<span class="n">matches</span> <span class="o">=</span> <span class="n">list_02</span><span class="p">.</span><span class="nf">select</span> <span class="p">{</span> <span class="o">|</span><span class="n">line</span><span class="o">|</span> <span class="n">line</span><span class="p">[</span><span class="sr">/</span><span class="si">#{</span><span class="n">email</span><span class="p">.</span><span class="nf">chomp</span><span class="si">}</span><span class="sr">/i</span><span class="p">]</span> <span class="p">}</span>
<span class="k">if</span> <span class="n">matches</span><span class="p">.</span><span class="nf">empty?</span>
<span class="c1"># if no matches, it's a unique email</span>
<span class="nb">puts</span> <span class="n">email</span>
<span class="n">unique_emails</span><span class="p">.</span><span class="nf">push</span><span class="p">(</span><span class="n">email</span><span class="p">)</span>
<span class="k">end</span>
<span class="k">end</span>
<span class="k">return</span> <span class="n">unique_emails</span>
<span class="k">end</span>
</code></pre></div></div>
<p>I’m currently just printing out the lists in the terminal, but each list can be saved to a file if needed. I’ve made a gist of the full file <a href="https://gist.github.com/aaronmoodie/b8e3b40c639b7ffb2c9af4e04e369edc">here</a>. Happy diffing.</p>I recently joined the committee of my son’s daycare and have been helping out on the communications side of things. One of my first tasks was to add the new parents to our mailing list and remove folks who had left. This seemed easy enough until I realised that I’d need to manually compare two lists of around 100 emails to figure out who was new and who had left … 😅