<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office">

  <head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    
    
    <!--[if gte mso 9]>
    <xml>
      <o:OfficeDocumentSettings>
        <o:AllowPNG/>
        <o:PixelsPerInch>96</o:PixelsPerInch>
     </o:OfficeDocumentSettings>
    </xml>
    <![endif]-->
    
    
    <style type="text/css">* a:hover{cursor:pointer;}</style>
    

    <style>body {-webkit-animation:bugfix infinite 1s;}@-webkit-keyframes bugfix {from {position:relative;}to {position:relative;}}</style>

  </head>

  <body style="word-wrap:normal;  word-break:break-word;">

    <style>a {word-wrap:normal;word-break:break-word;}.background-contain {background-size:contain;}@media only screen and (max-width:600px) {.container {-webkit-text-size-adjust:none !important;}.container,.palm-one-whole {width:100% !important;min-width:100% !important;}.palm-one-half {width:50% !important;min-width:50% !important;box-sizing:border-box;}blockquote .container,blockquote .container div,blockquote .container table {width:auto !important;min-width:0 !important;position:relative !important;}img {max-width:100%;}.border-outer,.border-middle,.border-inner,.inner,[title="separator"] {width:100% !important;}.innercell {padding:8px !important;}.palm-block {display:block !important;}td.palm-one-whole {display:inline-block !important;padding:0;}td.palm-one-whole:first-child:not(:only-child) {margin-bottom:16px;}td.hostname {padding-top:3px !important;}}@media only screen and (min-width:601px) {.preview-card {max-width:600px !important;}}@media only screen and (min-device-width :320px) and (max-device-width :568px),only screen and (min-device-width :768px) and (max-device-width :1024px),only screen and (max-device-width:640px),only screen and (max-device-width:667px),only screen and (max-width:480px){.container {width:100% !important;min-width:100% !important;}.p,.small,li,font[size="2"],font[size="3"] {font-size:1em !important;}}@media only screen and (min-device-width :320px) and (max-device-width :568px),only screen and (min-device-width :768px) and (max-device-width :1024px),only screen and (min-device-width :1224px)  {.message-wrapper {padding-top:6px;}.apple-only[style] {display:block !important;max-height:none !important;line-height:normal !important;overflow:visible !important;height:auto !important;width:100% !important;position:relative !important;}.no-apple {display:none !important;}form {font-size:inherit;}input[type="text"] {height:43px;padding-left:4px !important;}button:hover {cursor:pointer;}}@media only screen and (min-device-width :1224px)  {.apple-mail-form {display:block !important;background-color:white !important;}}* [office365] .outlook-com-hidden {display:none !important;}* [office365] .outlook-com-button {display:block;}* [office365] .outlook-com-only {display:block !important;max-height:none !important;line-height:normal !important;overflow:visible !important;height:auto !important;width:100% !important;position:relative !important;}.ExternalClass {width:100%;}.ExternalClass .outlook-com-button {display:block;}.ExternalClass button {height:auto;}.ExternalClass .outlook-com-hidden {display:none !important;}.ExternalClass .outlook-com-only {display:block !important;max-height:none !important;line-height:normal !important;overflow:visible !important;height:auto !important;width:100% !important;position:relative !important;}.ExternalClass .ecxlabels {display:none !important;}.ExternalClass .ecxlabels {display:none !important;}.ExternalClass .ecxarrow {display:none !important;}.ExternalClass cite >div + div {padding:0 0 4px 0;}.ExternalClass .h1 {padding-bottom:5px;}.ExternalClass .h2 {padding-bottom:5px;}.ExternalClass .h3 {padding-bottom:5px;}.ExternalClass [lang="brand-pinterest"] {width:280px !important;}</style>

    
    <!--[if (gte mso 9)|(IE)]>
    
    <style>a,body {font-family:'Calibri',Arial,sans-serif;}img {border:none !important;-ms-interpolation-mode:bicubic;}td {mso-line-height-rule:exactly !important;}.mso-card-inner table {border-collapse:collapse !important;mso-table-lspace:0pt;mso-table-rspace:0pt;vertical-align:top;}.outlook-com-only {display:none !important;font-size:0 !important;}#mso-one-whole {width:100% !important;}.border-outer,.border-middle,.border-inner {border:none !important;}.border-middle,.border-inner {width:100% !important;}.mso-border-outer,.mso-border-middle,.mso-border-inner {padding:1px;}.mso-border-outer {background-color:rgb(245,255,255);}.mso-border-middle {background-color:rgb(223,246,255);}.mso-border-inner {background-color:rgb(153,176,225);}</style>
    
    <![endif]-->
    

    <table class="container" lang="container" dir="ltr" border="0" cellpadding="0" cellspacing="0" valign="top" style="width:100%;  margin-top:6px;">
      <tr>
        <td valign="top" class="message-wrapper" style="line-height: 1.31;  color: #222;  font-family: arial, sans-serif;">

          <!--[if mso]><table width="590" border="0" cellpadding="0" cellspacing="0" valign="top" style="width:590px;border-collapse:separate;"><tr><td valign="top"><![endif]-->
            <div style="max-width: 590px;">Concur on all points. Bravo!</div><div style="max-width: 590px;"><br></div><div class="mixmax_signature" style="max-width: 590px;"><div style="max-width: 590px;"><font color="#666666" style="background-color: rgb(255, 255, 255)">Najaf Ali - Founder at <a href="https://links5.mixmaxusercontent.com/rSxCBSBNkaSyYEvDv/l/FOv5sn58MCf9EF4qD?messageId=x1QTTaIZhtzH2nlP4&rn=gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI&re=icmcv5yZ1JHbuMHdzlGbARXYoNmI">Happy Bear Software</a></font></div><div style="max-width: 590px;"><font color="#666666">Phone: 07590 073 977</font></div><div style="max-width: 590px;"><font color="#666666">Skype: alinajaf85</font></div><div style="max-width: 590px;"><font color="#666666">Timezone: <a href="https://links3.mixmaxusercontent.com/rSxCBSBNkaSyYEvDv/l/ZzmbIYHZzjgGZnic2?messageId=x1QTTaIZhtzH2nlP4&rn=gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI&re=icmcv5yZ1JHbuMHdzlGbARXYoNmI">London, UTC + 1</a></font></div><div style="max-width: 590px;"><font color="#666666"><a href="https://links7.mixmaxusercontent.com/rSxCBSBNkaSyYEvDv/l/whT74JzZldI7NkKZU?messageId=x1QTTaIZhtzH2nlP4&rn=gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI&re=icmcv5yZ1JHbuMHdzlGbARXYoNmI">LinkedIn</a> | <a href="https://links1.mixmaxusercontent.com/rSxCBSBNkaSyYEvDv/l/zyiWDmuQQZPqVvKhu?messageId=x1QTTaIZhtzH2nlP4&rn=gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI&re=icmcv5yZ1JHbuMHdzlGbARXYoNmI">Twitter</a> | <a href="https://links10.mixmaxusercontent.com/rSxCBSBNkaSyYEvDv/l/AHDZ86vA2ttNDs1y9?messageId=x1QTTaIZhtzH2nlP4&rn=gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI&re=icmcv5yZ1JHbuMHdzlGbARXYoNmI">Medium</a> | <a href="https://links5.mixmaxusercontent.com/rSxCBSBNkaSyYEvDv/l/9IBkDBVUAEmPY23S0?messageId=x1QTTaIZhtzH2nlP4&rn=gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI&re=icmcv5yZ1JHbuMHdzlGbARXYoNmI">GitHub</a><br></font></div><div style="max-width: 590px;"><font color="#666666"><br></font></div><div style="max-width: 590px;"><font color="#666666">I run a technical consultancy specialising in Ruby on Rails. Have a look at <a href="https://links9.mixmaxusercontent.com/rSxCBSBNkaSyYEvDv/l/AnNeeIPsfhzOsXxV3?messageId=x1QTTaIZhtzH2nlP4&rn=gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI&re=icmcv5yZ1JHbuMHdzlGbARXYoNmI">this one-page info sheet</a> for a summary of the services we provide. We're always happy to meet people building software, so if you think of anyone appropriate for us we would appreciate being put in touch :-)</font></div></div><img align="left" width="0" height="0" style="border:0; width:0px; height:0px;" src="https://track.mixmax.com/api/track/v2/x1QTTaIZhtzH2nlP4/i02bj5SZyF2d0Z2bzJXYlJWewBXYoBUasFmI/icmcv5yZ1JHbuMHdzlGbARXYoNmI/gIwV3bydEIzJXZzVFI5JWdSBibvRmbvxkI?sc=false" alt="">
          <!--[if mso]></td></tr></table><![endif]-->
        </td>
      </tr>
    </table>

    <div style="max-width:590px;">
<div style="max-width:590px;">
  <p data-m-apply-default-font="true"><br></p>
  <div class="gmail_extra">
    <p data-m-apply-default-font="true"><br></p>
    <div class="gmail_quote">
      On Tue, Sep 13, 2016 4:09 PM, Patrick Gleeson <span dir="ltr"> <a href="mailto:patrick@gojimo.co.uk" target="_blank">patrick@gojimo.co.uk</a></span>
 wrote:<br>
      <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
        <u></u>
        <div dir="ltr"><div><div><div><div><div>Thanks to everyone who participated! There were 66 responses, of whom 52 self-identified as senior, 13 as middleweight and one as junior.<br><br></div>6% of respondents said the last codebase they inherited was good, 55% said ok, and 39% inherited something bad. Looking at just senior developers, only 4% said good, 52% said ok, and 44% said bad.<br><br></div>Brief bit of trollnalysis:<br><br></div>First of all, assuming (unfairly), that LRUG respondents are representative of the industry as a whole, it's clear that job title inflation has run amok. Faced with a severe shortage of Ruby developers, employers will add pretty much any adjective to a prospective candidate's offer title to get them to come on board. Anecdotal evidence supports this: I can barely find the # key on my laptop, and yet my email signature still gets to have "Senior" in it. When all those graduates of General Assembly and Makers Academy start flooding the market, a bunch of us are going to have to up our game, because the word "Senior" will no longer be handed out like candy to anyone with over a year's experience.<br><br></div>Continuing to assume (still unfairly) that the results are representative of the industry, we Ruby developers are clearly both grumpy and hypocritical. If <i>most</i> codebases are at best ok, then that applies to our own code as well as the code we judge. The fact that the more senior you get the more you dislike other people's code suggests that in fact code "quality" is merely a measure of how well other people's code conforms to your own personal preferences, which get more idiosyncratic over time. It's telling that complaints about code were broadly split between the "too complicated for what it needed to achieve" camp and the "too simplistic for what it needed to achieve" camp - are those really objective judgements about the code itself, or just subjective expressions of preferred style?<br><br></div>Depressing conclusion: the more experienced you get, the more likely you are to hate the codebase you have to work on. No matter who you are, you probably won't think the next codebase you inherit is good. And the next person will probably think the same about the code they inherit from you. In short: coding sucks. Let's all set up artisanal coffee shops.<br clear="all"><div><div><div><div><div><div><br>-- <br><div data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="color:rgb(136,136,136);font-size:12.8px"><div dir="ltr"><p style="font-size:12.8px"><b><font face="verdana, sans-serif" color="#073763" size="1">Patrick Gleeson</font></b></p><p style="font-size:12.8px"><font face="verdana, sans-serif"><font color="#073763" size="1">Senior Ruby Developer</font></font></p><p><font face="verdana, sans-serif" color="#073763" size="1">Gojimo is available on <a href="http://m.onelink.me/44374fef" style="color:rgb(17,85,204)" target="_blank">iOS</a>, <a href="http://m.onelink.me/feee4922" style="color:rgb(17,85,204)" target="_blank">Android</a> (beta) and <a href="http://app.gojimo.co/" style="color:rgb(17,85,204)" target="_blank">web</a> (beta)</font></p><p style="font-size:12.8px"><font face="verdana, sans-serif" color="#073763" size="1">EducationApps Ltd is a registered company in England, No. 07556427</font></p><p style="font-size:12.8px"><span style="color:rgb(7,55,99);font-family:verdana,sans-serif;font-size:x-small">Gojimo, c/o Edspace, Block D Room 203, Hackney Community College, London N1 6HQ </span></p></div></div></div></div></div></div>
</div></div></div></div></div></div></div>

      </blockquote>
    </div>
  </div>
</div>
</div>
    
  </body>
</html>