<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Wayne Rockett</title>
    <description>The latest articles on DEV Community by Wayne Rockett (@diso).</description>
    <link>https://dev.to/diso</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2134953%2Fbde04a08-3c45-4be5-b27d-4585c0967dd0.jpg</url>
      <title>DEV Community: Wayne Rockett</title>
      <link>https://dev.to/diso</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/diso"/>
    <language>en</language>
    <item>
      <title>It was acceptable in the 80s</title>
      <dc:creator>Wayne Rockett</dc:creator>
      <pubDate>Sat, 15 Nov 2025 23:06:17 +0000</pubDate>
      <link>https://dev.to/diso/it-was-acceptable-in-the-80s-4go3</link>
      <guid>https://dev.to/diso/it-was-acceptable-in-the-80s-4go3</guid>
      <description>&lt;p&gt;&lt;em&gt;This post is my submission for &lt;a href="https://dev.to/deved/build-apps-with-google-ai-studio"&gt;DEV Education Track: Build Apps with Google AI Studio&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;For the Google AI Studio Education Track, I wanted to build something a bit different.  So I dusted off my inner 80s child, loaded up my imaginary tape deck, and created…&lt;/p&gt;

&lt;p&gt;🎨 A ZX Spectrum–style Loading Screen Generator&lt;br&gt;
Built entirely using Google AI Studio, Gemini, and Imagen.&lt;/p&gt;

&lt;p&gt;Think chunky pixels, screaming BRIGHT colours, and enough nostalgia to make your old rubber-key Speccy shed a tear.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;So the application is simple, you provide it a prompt and it will generate a ZX Spectrum loading screen based on your prompt.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhrtb62ivkx6p36s4s4ib.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhrtb62ivkx6p36s4s4ib.png" alt="ZX Spectrum Loading Screen Generator" width="799" height="653"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The app is deployed &lt;a href="https://zxspectrum.waynerockett.com/" rel="noopener noreferrer"&gt;here&lt;/a&gt;, I have put a loose limit on usage as I did give in a sign up for the billing, but with a very low budget as I don't actually expect people to use it.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Experience
&lt;/h2&gt;

&lt;p&gt;Honestly?&lt;br&gt;
Google AI Studio made this absurdly easy.&lt;/p&gt;

&lt;h1&gt;
  
  
  🚀 Fast
&lt;/h1&gt;

&lt;p&gt;The build was really quick, I mean, like, really, like as fast as a Knight Industries car.&lt;/p&gt;

&lt;p&gt;Within a minute, I had:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A full React + TypeScript project&lt;/li&gt;
&lt;li&gt;API integration&lt;/li&gt;
&lt;li&gt;A UI&lt;/li&gt;
&lt;li&gt;Working image generation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It felt like watching a Speccy loading screen but… much faster and without the shrieking sound effects.&lt;/p&gt;

&lt;h1&gt;
  
  
  🧠 Iteration was Weekend At Bernie's dead simple
&lt;/h1&gt;

&lt;p&gt;After the first version, I asked the assistant to make a few small changes or additions, and it was very smooth and still very quick.&lt;/p&gt;

&lt;h1&gt;
  
  
  🔄 GitHub Integration
&lt;/h1&gt;

&lt;p&gt;The link between Google AI Studio and GitHub was so smooth it felt like cheating.&lt;/p&gt;

&lt;p&gt;A couple of clicks and the repository was syncing perfectly.&lt;/p&gt;

&lt;h1&gt;
  
  
  ☁️ Deployment
&lt;/h1&gt;

&lt;p&gt;Google Cloud Run is great, but for familiarity’s sake, I deployed using Vercel, which worked flawlessly once I added the environment variables.&lt;/p&gt;

&lt;p&gt;If you'd told teenage me — sitting in front of a 48K Spectrum — that one day I’d deploy an app with a single click instead of faffing about with LOAD ""… I’d have assumed you’d been inhaling too many cassette fumes.&lt;/p&gt;

&lt;h1&gt;
  
  
  🤬 Problems
&lt;/h1&gt;

&lt;p&gt;I did, or still have, a problem.  Sometimes the API for Imagen times out, and sometimes it returns an image that makes no sense.&lt;/p&gt;

&lt;p&gt;This image it generated with a prompt for "a tense penalty shootout in a packed stadium"&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fajs6nwipy43sqa1tgx7y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fajs6nwipy43sqa1tgx7y.png" alt="This certainly isn't " width="256" height="192"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So it isn't perfect, but, if it was, I wouldn't have a job.&lt;/p&gt;

</description>
      <category>deved</category>
      <category>learngoogleaistudio</category>
      <category>ai</category>
      <category>gemini</category>
    </item>
    <item>
      <title>⛔Stop Excessive Validation, you are ruining my life hack!</title>
      <dc:creator>Wayne Rockett</dc:creator>
      <pubDate>Wed, 20 Nov 2024 12:29:40 +0000</pubDate>
      <link>https://dev.to/diso/stop-excessive-validation-you-are-ruining-my-life-hack-2gf2</link>
      <guid>https://dev.to/diso/stop-excessive-validation-you-are-ruining-my-life-hack-2gf2</guid>
      <description>&lt;p&gt;How many websites do we all have to register with, too many, and if they require an email address then you can often get frustrated and have to find ways around using your regular email address on hundreds of sites.&lt;/p&gt;

&lt;p&gt;I've always used Plus Addressing, if you don't know it, it is fairly simple.&lt;/p&gt;

&lt;p&gt;Rather than sign up for a new streaming service with &lt;code&gt;fakename@domain.com&lt;/code&gt;, I use &lt;code&gt;streaming+fakename@domain.com&lt;/code&gt;.  The email will still be delivered to the same email address of &lt;code&gt;fakename@domain.com&lt;/code&gt;, but the 'streaming' bit I added to the email address will allow me to see who the email is from, if they have passed my email address on to anyone else I will know which site it was, and I can easily sort (well, auto delete), emails with 'streaming' in the address using a rule in my email client.&lt;/p&gt;

&lt;h2&gt;
  
  
  ❌ Failing Validation
&lt;/h2&gt;

&lt;p&gt;It has become more common recently that when using this trick the form I am using the email address on doesn't allow it, and I fail a validation check.&lt;/p&gt;

&lt;p&gt;I got annoyed about this, had a moan, and moved on. 🤬&lt;/p&gt;

&lt;p&gt;That is until doing a recent code review and finding this. 🫨&lt;/p&gt;

&lt;p&gt;&lt;code&gt;^[a-zA-Z0-9%]+@[a-zA-Z0-9-]+\.[a-zA-Z]{2,3}$&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
A bit of Regex to validate the email address.  I'm sure the Regex experts among you have already seen one or two issues, I'll get to those in a moment.&lt;/p&gt;

&lt;p&gt;I was pretty sure the person who'd written this didn't know much, if anything, about Regex, they had certainly never used it before.  Plus, there was a comment above it in the code which didn't look like a real code comment, but rather more like a prompt for AI 💻 to generate some code.&lt;/p&gt;

&lt;p&gt;Indeed, I checked out quite a lot of different AIs, asking them for some Regex to validate an email address, and the responses were mixed, some did well, and some did very badly and would reject a lot of valid email addresses.&lt;/p&gt;

&lt;h2&gt;
  
  
  ❓ The Problems
&lt;/h2&gt;

&lt;p&gt;So what are the problems?  Well, in the first part of the address, we are not allowing the &lt;code&gt;+&lt;/code&gt; symbol, so my life hack is blown.  In fact, we also don't allow other symbols, so &lt;code&gt;bob.smith@domain.com&lt;/code&gt; won't be able to sign up.&lt;/p&gt;

&lt;p&gt;In the domain section, sub-domains wouldn't be allowed.  So if you worked for a company that had multiple sites, you could have an email address something like &lt;code&gt;bob@paris.domain.com&lt;/code&gt; or &lt;code&gt;bob@london.domain.com&lt;/code&gt;, and wouldn't be able to sign up. &lt;/p&gt;

&lt;p&gt;The top-level domain is also limited, to 2-3 characters, as someone who has websites with top-level domains of &lt;code&gt;.cooking&lt;/code&gt; and &lt;code&gt;.menu&lt;/code&gt; for a couple of restaurants, I found this very annoying.&lt;/p&gt;

&lt;p&gt;Amazingly, I had to explain why this was bad, I guess a lot of people are just used to &lt;code&gt;.com&lt;/code&gt; and &lt;code&gt;.org&lt;/code&gt; and not much else.  One person thought that the address part of the email could only include letters, numbers and a full stop (period for our USA friends), they had no idea you could use a &lt;code&gt;+&lt;/code&gt; or a &lt;code&gt;-&lt;/code&gt; in an email address.&lt;/p&gt;

&lt;h2&gt;
  
  
  📧☎️🔠 It Isn't Just Emails
&lt;/h2&gt;

&lt;p&gt;As I continued with the code review I discovered it wasn't just emails, someone had learned what Regex was and by golly, they were going to use it.&lt;/p&gt;

&lt;p&gt;Phone numbers, that must only contain numbers!  No no, in different countries people format phone numbers in different ways, some use brackets, some use hyphens, and many use spaces.&lt;/p&gt;

&lt;p&gt;Full name, validating that they have used one space (and only one space) and only characters.  Hang on, have you heard of double-barrelled names?  What if someone wants to put in a first name, middle name and last name, that wouldn't be allowed.  What would Spiderman's 🕷️🕸️ girlfriend Mary Jane do?  By the way, you only allowed Latin alphabet characters too.&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 The Solution
&lt;/h2&gt;

&lt;p&gt;Some of the issues with this particular Regex might be obvious, but the point remains, did it really need that level of validation anyway?  &lt;/p&gt;

&lt;p&gt;The solution is simple, don't over-validate things.&lt;/p&gt;

&lt;p&gt;Sure, check if an email has an &lt;code&gt;@&lt;/code&gt; symbol in it, but beyond that, allow it.  If someone wants to format their phone numbers in a way that is strange to you, let them.&lt;/p&gt;

&lt;p&gt;We have to trust the end user a little bit, don't we?&lt;/p&gt;

</description>
      <category>validation</category>
      <category>lifehack</category>
      <category>productivity</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Rediscovering the #Region Directive 💡</title>
      <dc:creator>Wayne Rockett</dc:creator>
      <pubDate>Mon, 04 Nov 2024 10:32:04 +0000</pubDate>
      <link>https://dev.to/diso/rediscovering-the-region-directive-3nhf</link>
      <guid>https://dev.to/diso/rediscovering-the-region-directive-3nhf</guid>
      <description>&lt;p&gt;Most of my work involves updating old code, and moving it from ancient desktop applications to web-based applications.  So I regularly have to read through lots of dusty cobweb-covered 🕸️ code.&lt;/p&gt;

&lt;p&gt;Recently I opened one of these old code files in VS Code, and discovered, or perhaps re-discovered something very useful.  I say re-discovered because I had a vague memory of this trick, but had long since abandoned its use.&lt;/p&gt;

&lt;p&gt;I'm talking about regions in code. &lt;/p&gt;

&lt;h2&gt;
  
  
  What are Regions?
&lt;/h2&gt;

&lt;p&gt;A region is a simple code comment that marks a section of code as a region of code and allows the editor to know that the region can be collapsed.  Now, you might be thinking, that I can collapse a function in any modern editor/IDE anyway, and you are right, but stick with me a little while longer.&lt;/p&gt;

&lt;p&gt;Here is some simple code, viewed in VS Code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8w1pmbom27uwnazmueyu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8w1pmbom27uwnazmueyu.png" alt="Some simple code" width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, we are going to add a region code comment on line 9.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzbtznhrqo815i55wxvzv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzbtznhrqo815i55wxvzv.png" alt="With a region tag" width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Notice the mini-map of the code in the top right, it shows the region name, making it very easy to find areas of code.&lt;/p&gt;

&lt;p&gt;Personally, I found this very handy, and at that point reached out to some of my fellow developers, most of them knew about regions and code collapsing, but, as we mentioned, people thought it was pointless because you can collapse functions anyway.  What none of them knew about was this nice highlighting functionality in VS Code.  So I thought if I know a lot of people who don't know about it, it might be worth posting about.&lt;/p&gt;

&lt;p&gt;So, let's have a look at that whole, 'you can collapse functions anyway' issue.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpehwd5869kuf909daegk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpehwd5869kuf909daegk.png" alt="Wrapping the interface" width="800" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here we have added a region around the interface we are using for the function properties.  Again, we can see the highlighting in the mini-map, but what is the point of doing that?  If we collapse the function, then we probably don't want to see the interface either right?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmdyc62f8298vbna9l7sy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmdyc62f8298vbna9l7sy.png" alt="Wrapping everything" width="711" height="573"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So here we have wrapped both the interface and the function in one region.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0eped61mcxh572anyg0j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0eped61mcxh572anyg0j.png" alt="Collapse the region" width="800" height="83"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The result is that now when we collapse that region, we collapse everything, making code much easier to read and navigate through.  Without using a region you would have to collapse the function, and the interface, rather than everything all at once.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts 🧠
&lt;/h2&gt;

&lt;p&gt;For some people adding regions to the code would just be an extra step that adds nothing to the functionality of the product, so why do it?&lt;/p&gt;

&lt;p&gt;To others, it is a useful way to hide chunks of code and to help you navigate in the mini-map.  I spoke previously about working with people who maintain that old code, well one of the issues they always seem to have if having to work on something a little more modern is navigating around the code, they are used to their VB6 editor.  This really helps them find their way around. &lt;/p&gt;

&lt;p&gt;Personally, I prefer to break my code into smaller chunks that are in separate files, so I ideally don't have large files that would need lots of regions, but I do see the benefits if you do have larger file sizes.&lt;/p&gt;

&lt;p&gt;The ability to quickly navigate in the mini-map is really cool.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzq0puclhwsib6mfl5gdu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzq0puclhwsib6mfl5gdu.png" alt="More useful mini-map" width="800" height="238"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are some VS Code extensions that also add more to the functionality of regions, they might be worth checking out if it is something you use.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>vscode</category>
    </item>
    <item>
      <title>7 Desktop Applications Used By Actual Developers</title>
      <dc:creator>Wayne Rockett</dc:creator>
      <pubDate>Wed, 23 Oct 2024 14:23:30 +0000</pubDate>
      <link>https://dev.to/diso/7-desktop-applications-used-by-actual-developers-bdp</link>
      <guid>https://dev.to/diso/7-desktop-applications-used-by-actual-developers-bdp</guid>
      <description>&lt;p&gt;I'm the scrum master for a couple of teams of developers and am involved with a couple of other teams beyond those.  I recently decided to run a retrospective where the developers shared what tools they use on a regular basis to help them in their roles.  My idea was to get people to share their good ideas more.&lt;/p&gt;

&lt;p&gt;I did set some ground rules.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Only desktop applications, no web apps&lt;/li&gt;
&lt;li&gt;No IDEs or Code Editors&lt;/li&gt;
&lt;li&gt;No version control tools&lt;/li&gt;
&lt;li&gt;No database tools&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The idea behind these rules was that I didn't want to hear thirty people just say VS Code and Github.&lt;/p&gt;

&lt;p&gt;These rules certainly led to some eyebrow-raising answers, so let’s have a look at the top seven desktop applications used by developers, some of which might surprise you (they sure did me!).&lt;/p&gt;

&lt;h2&gt;
  
  
  7. AutoHotKey 🕹️
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc1iisxu1jzgrn2xpa3g8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc1iisxu1jzgrn2xpa3g8.png" alt="AutoHotKey" width="582" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’ll be honest; this one threw me.. I knew AutoHotKey (AHK) was a thing, but my experience with it was limited to gaming macros or setting up shortcuts to do weird things on Windows (okay, I confess, I have used it for gaming myself). &lt;/p&gt;

&lt;p&gt;It turns out some developers use it to automate repetitive tasks.  Like writing a script to speed up the mundane parts of your job, such as filling out time sheets, because as developers that is usually something we are pretty poor at doing.&lt;/p&gt;

&lt;p&gt;AutoHotKey is a scripting language that lets you create keyboard shortcuts and automate tasks. Some of the devs swear by it to automate common development tasks, like launching a series of applications, handling text manipulation, or performing routine file operations. One person even mentioned using AHK to auto-fill forms when testing apps, and to regularly retest their previous work to see if anything has been broken.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Evernote 🐘
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5x4hdv144fq060iimktf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5x4hdv144fq060iimktf.png" alt="Evernote" width="800" height="725"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This one caught me off guard a bit too, especially since I’m more of a Notion fan myself (team Notion, where are you guys?). Evernote is a solid note-taking tool, and while I always associate it more with students or business types, a number of developers rely on it for organising their thoughts, to-do lists, and even clipping bits of information from the web.&lt;/p&gt;

&lt;p&gt;Evernote’s strength lies in its simplicity and versatility. It lets you capture text, images, voice memos, and other types of data in a format that's easily searchable. &lt;/p&gt;

&lt;p&gt;Some devs use it for jotting down those eureka moments when they finally figure out why their code wasn’t working or for keeping track of helpful blog posts they swear they’ll get back to someday (spoiler: they won’t).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frt15s8hoqnn9kwzg10px.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frt15s8hoqnn9kwzg10px.png" alt="Be Honest" width="800" height="239"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  5. MS Paint 🎨
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzw45et3j1p81xzrnlskc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzw45et3j1p81xzrnlskc.png" alt="MS Paint" width="559" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ah, MS Paint. The good old standby. Some might scoff, but hey, we’ve all used it at one point or another. Paint is like that reliable old dog that’s still hanging around despite the world moving on. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Need to quickly edit a screenshot? Paint. &lt;/li&gt;
&lt;li&gt;Got a random idea for a pixel-art game you’re never going to finish? Paint.&lt;/li&gt;
&lt;li&gt;Need to quickly draw an arrow and some text pointing at a saved reading list? Paint.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I am sure there are better options now, but Paint’s simplicity is its power. There’s no need to wait for a heavy program to load when you just need to crop an image or add a quick annotation. I don’t see this one disappearing anytime soon—call it developer loyalty if you will.&lt;/p&gt;

&lt;p&gt;Plus, well, I've been using Paint since the 1980s, I'm not gonna change that easy.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Notion 💡
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fntvtaydm3nd8f42lvqp8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fntvtaydm3nd8f42lvqp8.png" alt="Notion" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And here’s the one I was expecting. Notion has become the Swiss Army knife of productivity tools, and developers love it for good reason. It’s like Evernote on steroids, combining note-taking, project management, and collaboration features into one sleek package.&lt;/p&gt;

&lt;p&gt;For developers, Notion shines as a tool to organise documentation, manage personal or team-based projects, and even track progress on sprints. You can create databases, Kanban boards, to-do lists, and more, all in one app. One dev told me they use it as their second brain, which did surprise me, because I didn't know they had a first brain.&lt;/p&gt;

&lt;p&gt;So Notion it is right, unless you happen to be a big fan of Jira and Confluence.  No, thought not.&lt;/p&gt;

&lt;p&gt;I will highlight here, it wouldn't have been mentioned due to the rules of the retrospective, but I am also a huge fan of the web app Remember The Milk.  A to-do list app that has a scripting language, but mainly is just really simple to use whilst still having lots of power.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Agent Ransack 🕵🏻
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8rct1i6gmrhgkizyf9oe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8rct1i6gmrhgkizyf9oe.png" alt="Agent Ransack" width="315" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, this was new to me. I had never even heard of Agent Ransack before this survey, so I did what any respectable developer would do, I Googled it. Turns out it’s a super-fast file search utility. Unlike the default Windows search (which, let’s face it, leaves a lot to be desired), Agent Ransack lets you search for files based on name, and contents, and even use regular expressions.&lt;/p&gt;

&lt;p&gt;Some developers swear by it for hunting down files across huge directories, especially when you need to find that one rogue config file hiding somewhere deep within your project folders. Honestly, this one’s gone on my list to try out next time Windows Search decides to take an unplanned coffee break.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Postman 📫
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwc525omc9x0nc67sl4dm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwc525omc9x0nc67sl4dm.png" alt="Postman" width="715" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Postman. The developer darling of API testing. I wasn’t shocked to see this one near the top of the list, even if I personally don’t use the desktop version, I much prefer the VS Code extension Postman. &lt;/p&gt;

&lt;p&gt;Postman is an API testing tool that makes it really simple to send HTTP requests and review the responses. It supports everything from basic GET and POST requests to complex API workflows involving OAuth and token-based authentication.&lt;/p&gt;

&lt;p&gt;Some developers use it to test APIs they’re building, while others leverage it for integration testing. For those who work with RESTful services regularly, Postman is an invaluable tool. &lt;/p&gt;

&lt;h2&gt;
  
  
  1. Notepad++ ❓
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fouj70yyhiv9rlgjp78ek.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fouj70yyhiv9rlgjp78ek.png" alt="Notepad++" width="800" height="564"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Okay, I was not expecting this. Notepad++ taking the top spot? But once I thought about it, it made sense, and then I thought some more, and no, I'm baffled by this. My only theory is that the average age of the developers in my teams is on the high side.  I mean, I'm a huge ZX Spectrum fanboy, and I'm one of the younger members of the team.&lt;/p&gt;

&lt;p&gt;Okay, give me a moment to recover and I'll try and be positive about it.&lt;/p&gt;

&lt;p&gt;Deep breathes.&lt;/p&gt;

&lt;p&gt;Here goes.&lt;/p&gt;

&lt;p&gt;It’s lightweight, fast, and packed with features like syntax highlighting multi-tabbed editing, and support for plugins. It's an editor that just gets the job done without all the bells and whistles that sometimes weigh down more complex tools.&lt;/p&gt;

&lt;p&gt;Developers like it for quick edits, viewing log files, or even scripting small tasks. Sure, it’s not a full-fledged IDE, but for those times when you just need to crack open a file and make a quick change, Notepad++ is hard to beat. And let’s face it, nostalgia probably plays a part too—there’s something comforting about its no-nonsense interface.&lt;/p&gt;

&lt;p&gt;⚠️Hang on, wait a moment, is Notepad++ against the rules, it could be counted as a code editor?&lt;/p&gt;

&lt;p&gt;I'll let you decide that one.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Final Thoughts 🧠
&lt;/h2&gt;

&lt;p&gt;While some of these tools weren’t on my radar (Agent Ransack, I’m looking at you), it’s clear that every developer has their own toolkit beyond the obvious choices. &lt;/p&gt;

&lt;p&gt;From automating tasks with AutoHotKey to sticking with good ol' MS Paint, the diversity in this list shows there’s no single "right" way to get things done.&lt;/p&gt;

&lt;p&gt;And hey, if Paint’s still getting love in 2024, maybe there’s hope for some of the ZX Spectrum software I wrote all those years ago.&lt;/p&gt;

&lt;p&gt;This has highlighted to me, that with such an odd collection of tools, we should all share more when we find a handy tool that works for us.  It might help our co-worker who is still struggling to close VIM when Notepad++ would be ideal for them.&lt;/p&gt;

&lt;p&gt;❓ What random desktop application do you use that others might not have thought of?&lt;/p&gt;

</description>
      <category>development</category>
      <category>productivity</category>
      <category>tooling</category>
    </item>
    <item>
      <title>Daily Scrum, Walking the Board</title>
      <dc:creator>Wayne Rockett</dc:creator>
      <pubDate>Fri, 27 Sep 2024 13:33:35 +0000</pubDate>
      <link>https://dev.to/diso/daily-scrum-walking-the-board-2a97</link>
      <guid>https://dev.to/diso/daily-scrum-walking-the-board-2a97</guid>
      <description>&lt;p&gt;The most common form of daily scrum meeting follows the format of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What I did yesterday&lt;/li&gt;
&lt;li&gt;What I am doing today&lt;/li&gt;
&lt;li&gt;What my impediments are&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every team member takes their turn, gives a brief update and quickly switches off to the rest of the meeting.  You've probably experienced it yourself, and like many people, you've found it becomes very routine, rarely truly highlights any issues, and everyone starts to resent having to attend.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02hfsy6bcrs8pevluong.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02hfsy6bcrs8pevluong.png" alt="Typical developers at a daily scrum meeting" width="800" height="796"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Instead, why not try the &lt;em&gt;Walking the Board&lt;/em&gt; method?&lt;/p&gt;

&lt;p&gt;What is Walking the Board?  Instead of each person taking a turn to discuss what they have done, each ticket or issue takes a turn to update on their progress.&lt;/p&gt;

&lt;p&gt;I know what you're thinking, tickets cannot talk, and you're right.  The team members of course still do the talking, but instead, you work your way through the open tickets asking for updates on each one. The team then provide an update on the progress and any blockers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlhmfnxgclcyolfnevhr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlhmfnxgclcyolfnevhr.png" alt="Walking the Board" width="747" height="789"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One key thing here is not to fall into the direct question trap.  Do not say "Jack give the team an update on this ticket", because Jack might not be the only person who has important information about that issue.  This is what I mean when I say the tickets take it in turn to give the update.&lt;/p&gt;

&lt;p&gt;Leaving it open as to who should speak up helps to keep everyone focused on the meeting, rather than the traditional daily scrum method of giving your update and then checking your emails whilst the meeting carries on.&lt;/p&gt;

&lt;p&gt;One problem that does sometimes occur is that you have someone who doesn't speak in the meeting.  Previously everyone took their turn, so everyone spoke, but when focusing on the tickets you could miss someone.&lt;/p&gt;

&lt;p&gt;Now that doesn't mean that they are not working and not contributing to the team, it might be they are pair coding with someone.  So you do have to ensure that if people are working together both parties speak up.  Often simply having the lead person on the ticket prompting their co-coder is enough, "So that is everything from me, I'm working on this with Jack, have you got anything to add Jack?".&lt;/p&gt;

&lt;p&gt;Walking the Board does bring a fresh new way to run your daily scrum meetings, and helps keep the team much more engaged.  Why not give it a try?&lt;/p&gt;

&lt;p&gt;❓Do you follow the Walking the Board method, does it work for you?  Perhaps you have a completely different method for daily scrum meetings, tell us about it!&lt;/p&gt;

</description>
      <category>scrum</category>
      <category>scrummeetings</category>
      <category>dailyscrum</category>
    </item>
  </channel>
</rss>
