<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Hello, I’m Daniel Irvine 👋 on danielirvine.com</title>
    <link>/</link>
    <description>Recent content in Hello, I’m Daniel Irvine 👋 on danielirvine.com</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 04 Aug 2020 19:24:43 +0100</lastBuildDate>
    <atom:link href="/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Get in touch</title>
      <link>/contact/</link>
      <pubDate>Tue, 04 Aug 2020 19:24:43 +0100</pubDate>
      <guid>/contact/</guid>
      <description>Software consultant specializing in TDD and XP, with a wide range of industry experience.</description>
    </item>
    <item>
      <title>Testing</title>
      <link>/test/</link>
      <pubDate>Tue, 04 Aug 2020 19:24:43 +0100</pubDate>
      <guid>/test/</guid>
      <description>&lt;a href=&#34;/api/oauth&#34; onClick=&#34;login()&#34;&gt;Login&lt;/a&gt;&#xA;&#xA;&lt;script src=&#34;/js/fetchUser.js&#34; type=&#34;text/javascript&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;/js/comments.js&#34; type=&#34;text/javascript&#34;&gt;&lt;/script&gt;&#xA;&lt;script type=&#34;text/javascript&#34;&gt;&#xA;  window.addEventListener(&#39;load&#39;, function() {&#xA;    fetchComments(&#34;testing&#34;);&#xA;  });&#xA;&lt;/script&gt;&#xA;&#xA;&lt;form&gt;&#xA;  &lt;textarea id=&#34;comment&#34; rows=&#34;50&#34; cols=&#34;5&#34;&gt;&lt;/textarea&gt;&#xA;  &lt;button onclick=&#34;submitComment(event, &#39;testing&#39;, document.getElementById(&#39;comment&#39;).value);&#34;&gt;Post&lt;/button&gt;&#xA;&lt;/form&gt;</description>
    </item>
    <item>
      <title>Yet another reason to prefer unit tests 😇</title>
      <link>/blog/yet-another-reason-to-prefer-unit-tests/</link>
      <pubDate>Tue, 03 Mar 2020 00:00:00 +0000</pubDate>
      <guid>/blog/yet-another-reason-to-prefer-unit-tests/</guid>
      <description>Have you ever gotten so frustrated when writing a unit test that you gave up and wrote an end-to-end test instead?</description>
    </item>
    <item>
      <title>Are you any good at TDD?</title>
      <link>/blog/are-you-any-good-at-tdd/</link>
      <pubDate>Sun, 16 Feb 2020 00:00:00 +0000</pubDate>
      <guid>/blog/are-you-any-good-at-tdd/</guid>
      <description>So you practice TDD. But how do you measure your skills?</description>
    </item>
    <item>
      <title>Achieving 100% code coverage will make you a better developer. Seriously.</title>
      <link>/blog/achieving-100pc-code-coverage/</link>
      <pubDate>Tue, 11 Feb 2020 00:00:00 +0000</pubDate>
      <guid>/blog/achieving-100pc-code-coverage/</guid>
      <description>You’re happy to learn new languages frameworks, so why are not happy to learn testing techniques that will help you for the rest of  your career?</description>
    </item>
    <item>
      <title>Do you aim for 80% code coverage? Let me guess which 80% you choose...</title>
      <link>/blog/do-you-aim-for-80-code-coverage-let-me-guess-which-80-it-is/</link>
      <pubDate>Mon, 10 Feb 2020 00:00:00 +0000</pubDate>
      <guid>/blog/do-you-aim-for-80-code-coverage-let-me-guess-which-80-it-is/</guid>
      <description>The only “sweet spot” for code coverage is 100%. Here’s one reason why.</description>
    </item>
    <item>
      <title>Whatever happened to the test pyramid?</title>
      <link>/blog/whatever-happened-to-the-test-pyramid/</link>
      <pubDate>Thu, 06 Feb 2020 00:00:00 +0000</pubDate>
      <guid>/blog/whatever-happened-to-the-test-pyramid/</guid>
      <description>The humble unit test has taken a beating in recent times. What did it ever do wrong?</description>
    </item>
    <item>
      <title>Do devs really need to test?</title>
      <link>/blog/do-devs-really-need-to-test/</link>
      <pubDate>Wed, 29 Jan 2020 00:00:00 +0000</pubDate>
      <guid>/blog/do-devs-really-need-to-test/</guid>
      <description>There’s one big reason why you wouldn’t want to test</description>
    </item>
    <item>
      <title>How to convince devs to do more testing</title>
      <link>/blog/how-to-convince-devs-to-do-more-testing/</link>
      <pubDate>Fri, 24 Jan 2020 00:00:00 +0000</pubDate>
      <guid>/blog/how-to-convince-devs-to-do-more-testing/</guid>
      <description>Why do developers not write more tests? This blog post looks at some reasons why.</description>
    </item>
    <item>
      <title>Beyond TDD: breaking the rules</title>
      <link>/blog/beyond-tdd-breaking-the-rules/</link>
      <pubDate>Thu, 23 Jan 2020 00:00:00 +0000</pubDate>
      <guid>/blog/beyond-tdd-breaking-the-rules/</guid>
      <description>Rules are made to be broken, right? TDD is a strict set of rules that define a process for building software. But experienced practitioners have moved beyond the rules and work towards something else entirely.</description>
    </item>
    <item>
      <title>Get your words right!</title>
      <link>/blog/get-your-words-right/</link>
      <pubDate>Wed, 22 Jan 2020 00:00:00 +0000</pubDate>
      <guid>/blog/get-your-words-right/</guid>
      <description>When you’re in any position of authority, you’ve got to be extremely careful with the words you put out. Here’s why.</description>
    </item>
    <item>
      <title>Become a mature developer, not a senior developer</title>
      <link>/blog/become-a-mature-developer/</link>
      <pubDate>Mon, 20 Jan 2020 00:00:00 +0000</pubDate>
      <guid>/blog/become-a-mature-developer/</guid>
      <description>Junior/senior is a terrible way to judge a developer. This post is a reminder that we should be talking about “mature” developers instead</description>
    </item>
    <item>
      <title>Clean code, dirty code, human code</title>
      <link>/blog/clean-code-dirty-code-human-code/</link>
      <pubDate>Sun, 19 Jan 2020 00:00:00 +0000</pubDate>
      <guid>/blog/clean-code-dirty-code-human-code/</guid>
      <description>Let’s stop judging each other’s code. Instead, let’s work together to make our codebases better.</description>
    </item>
    <item>
      <title>A generalist is born when a specialist becomes bored</title>
      <link>/blog/a-generalist-is-born/</link>
      <pubDate>Sun, 15 Sep 2019 00:00:00 +0000</pubDate>
      <guid>/blog/a-generalist-is-born/</guid>
      <description>I’m a full-stack developer, which means I’m a generalist. I believe that generalism in software development is a good thing.</description>
    </item>
    <item>
      <title>Revisiting your code: a simple technique for writing better software</title>
      <link>/blog/revisiting-your-code/</link>
      <pubDate>Sat, 31 Aug 2019 00:00:00 +0000</pubDate>
      <guid>/blog/revisiting-your-code/</guid>
      <description>Want to write the better code? Here’s a simple technique that programmers of all levels can apply.</description>
    </item>
    <item>
      <title>4 tips for mentoring developers</title>
      <link>/blog/4-tips-for-mentoring-developers/</link>
      <pubDate>Sun, 01 Oct 2017 00:00:00 +0000</pubDate>
      <guid>/blog/4-tips-for-mentoring-developers/</guid>
      <description>Simple ideas that will improve your mentoring</description>
    </item>
    <item>
      <title>How to mentor developers</title>
      <link>/blog/how-to-mentor-developers/</link>
      <pubDate>Mon, 18 Sep 2017 12:00:00 +0000</pubDate>
      <guid>/blog/how-to-mentor-developers/</guid>
      <description>Mentoring is a great technique for accelerated learning, but it’s underused within the industry.</description>
    </item>
    <item>
      <title>Are personality tests useful for developers?</title>
      <link>/blog/are-personality-tests-useful-for-developers/</link>
      <pubDate>Sat, 02 Sep 2017 12:00:00 +0000</pubDate>
      <guid>/blog/are-personality-tests-useful-for-developers/</guid>
      <description>&lt;p&gt;As a software developer my job is writing code. But knowing how to write code isn’t the only skill software developers need. We also need to have great teamwork skills, otherwise projects are doomed to fail.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Code is better when we write it together</title>
      <link>/blog/code-is-better-when-we-write-it-together/</link>
      <pubDate>Mon, 28 Nov 2016 12:00:00 +0000</pubDate>
      <guid>/blog/code-is-better-when-we-write-it-together/</guid>
      <description>In my last post I discussed the effectiveness of code reviews. Or rather, how they can often be ineffective.</description>
    </item>
    <item>
      <title>The problematic pull request</title>
      <link>/blog/the-problematic-pull-request/</link>
      <pubDate>Fri, 18 Nov 2016 12:00:00 +0000</pubDate>
      <guid>/blog/the-problematic-pull-request/</guid>
      <description>Code reviews are a wonderful thing. Multiple pairs of eyes make for higher quality code. Reviews help spot errors and also serve as a teaching tool.</description>
    </item>
    <item>
      <title>Perfect code is an illusion</title>
      <link>/blog/perfect-code-is-an-illusion/</link>
      <pubDate>Fri, 11 Nov 2016 12:00:00 +0000</pubDate>
      <guid>/blog/perfect-code-is-an-illusion/</guid>
      <description>Much of our programmer culture is built on the ideal of perfect code: code which not only works, but is also clean and elegant.</description>
    </item>
    <item>
      <title>The egoless programmer</title>
      <link>/blog/the-egoless-programmer/</link>
      <pubDate>Fri, 30 Sep 2016 12:00:00 +0000</pubDate>
      <guid>/blog/the-egoless-programmer/</guid>
      <description>If you want to be successful at writing code, then you’d best keep your ego out of it. That’s the essence of egoless programming, a concept first written about by the legendary author Gerald M. Weinberg.</description>
    </item>
  </channel>
</rss>
