{"id":7439,"date":"2014-01-28T10:00:59","date_gmt":"2014-01-28T16:00:59","guid":{"rendered":"http:\/\/www.mrc-productivity.com\/blog\/?p=7439"},"modified":"2022-11-22T10:59:28","modified_gmt":"2022-11-22T16:59:28","slug":"7-habits-of-highly-productive-web-developers","status":"publish","type":"post","link":"https:\/\/www.mrc-productivity.com\/blog\/2014\/01\/7-habits-of-highly-productive-web-developers\/","title":{"rendered":"7 habits of highly productive web developers"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2010\/11\/Education.jpg\" alt=\"Education\" width=\"76\" height=\"100\" class=\"alignleft size-full wp-image-725\" \/>A recent Forrester <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Outbound Link', 'Forrester Study']); \" href=\"http:\/\/info.thoughtworks.com\/rs\/thoughtworks2\/images\/Continuous%20Delivery%20_%20A%20Maturity%20Assessment%20ModelFINAL.pdf\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">study<\/span><\/a> highlights a major shift in the business landscape: More and more, software development plays an increasingly important role in a company\u2019s competitive edge. According to the study, \u201cCompanies that are able to innovate quickly with software will outcompete traditional market leaders.\u201d<\/p>\n<p><strong>There&#8217;s just one problem<\/strong>: As the study points out, software development is still a problem for the majority of companies. Most are not able to deliver software solutions as fast as the business leaders want them.<br \/>\n<figure id=\"attachment_7442\" aria-describedby=\"caption-attachment-7442\" style=\"width: 240px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2014\/01\/small_2300190277.jpg\" alt=\"photo credit: Nathan E Photography via photopin cc\" width=\"240\" height=\"180\" class=\"size-full wp-image-7442\" \/><figcaption id=\"caption-attachment-7442\" class=\"wp-caption-text\">photo credit: Nathan E Photography via <a href=\"http:\/\/photopin.com\">photopin<\/a> <a href=\"http:\/\/creativecommons.org\/licenses\/by\/2.0\/\">cc<\/a><\/figcaption><\/figure><\/p>\n<p>The fact is, as business moves to the web, software development speed plays a crucial role in a company\u2019s success. The old software development methodologies&#8211;in which development projects required months (or even years) to complete&#8211;will no longer work. Businesses must permanently shift their development cycle into the \u201cdays and weeks\u201d range.<\/p>\n<p>How can businesses improve their development speed so drastically? While the answer to that question varies by company, today I\u2019d like to focus on one area that\u2019s relevant to most businesses: improving developer productivity.<\/p>\n<p>What separates the productive developer from the unproductive? What do the productive developers do differently? How can developers become more productive? We posed those questions to a few experts in the area, and have compiled their advice below. Here are 7 habits of highly productive developers:<br \/>\n<a name=\"20140127\"><\/a><!--more--><\/p>\n<h3>1. They build with the future in mind<\/h3>\n<p>First, what does the term \u201cproductive developer\u201d even mean? Does it mean they complete development projects quickly? Not necessarily. A \u201cfast\u201d developer isn\u2019t always a \u201cproductive\u201d developer. I\u2019d say that a \u201cproductive\u201d developer is one who builds web applications\/sites the right way, in the most efficient manner possible.<\/p>\n<p>Let me explain. Suppose you take two developers&#8211;Developer A and Developer B. Developer A completes an application development project two times faster than Developer B. But, his application isn\u2019t scalable and is more difficult to maintain. Meanwhile, Developer B\u2019s application adapts to changing technology, grows with the company, and is easily maintainable. Over the life of both applications, Developer A\u2019s application requires more maintenance effort and must be replaced far sooner than Developer B\u2019s application. <\/p>\n<p>Who is the most productive developer? I think the answer is clear. My point is this: Speed doesn\u2019t equal productivity. I believe productivity is measured by speed plus quality. Productive developers understand that development is the easy part. Creating an easily maintainable application that adapts to changes is far more important than rushing through a project. <\/p>\n<h3>2. They don\u2019t (try to) multitask<\/h3>\n<p>Have you ever seen job descriptions requiring \u201cthe ability to multitask?\u201d The problem with this requirement: It\u2019s physically impossible. Studies show that our brains can only focus on one task at a time. The idea of \u201cmultitasking\u201d isn\u2019t actually multitasking at all. It\u2019s jumping from one thing to another, which as explained below, is actually quite unproductive.<\/p>\n<blockquote style=\"line-height: 1.7em; background-image: none; margin-left: 0; padding-left: 18px; height: auto;\"><p>\n\u201cOne reason many information technology professionals (including web developers) get stalled when it comes to completing projects is multi-tasking,\u201d Yaron Sinai, an Author and CEO of <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Source', 'Elementool']); \" href=\"https:\/\/www.elementool.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">Elementool<\/span><\/a>. \u201cIt\u2019s actually the No. 1 reason people aren\u2019t productive.\u201d<\/p>\n<p>\u201cThe brain is able to focus on only one thing at a time, so when folks are supposedly multi-tasking, what they\u2019re actually doing is something more complex: \u2018switch tasking.\u2019 When switching to another task, it usually takes about 12 minutes to fully re-focus on the new task. That means wasting an hour of focus time for every five tasks supposedly being multi-tasked.\u201d\n<\/p><\/blockquote>\n<p>The problem is, developers are often pulled from one task to the next. They might jump from development, to fixing bugs, to answering questions, and so on. How can developers avoid \u2018task-switching\u2019 in their development projects? <\/p>\n<blockquote style=\"line-height: 1.7em; background-image: none; margin-left: 0; padding-left: 18px; height: auto;\"><p>\n\u201cTo help IT teams (and web developers) avoid multi-tasking when working on a project, the work plan should be built in a way that focuses the team on one task at a time,\u201d explains Sinai. \u201cEach team member focuses on one task until it\u2019s completed, before moving on to the next task.\u201d<\/p>\n<p>\u201cWhen it comes to focusing on one task, 50-minute sessions are ideal. Choose a specific task to be completed and put it on the calendar as if it\u2019s a meeting. But schedule the meeting for 60 minutes. When it comes time for the task to be done, set a counter for 50 minutes and put your mind only to that task for those 50 minutes.\u201d\n<\/p><\/blockquote>\n<h3>3. They actively eliminate distractions<\/h3>\n<p>Going one step further, productive developers understand the role distractions play in lengthening a development project&#8211;and actively seek to eliminate them. While the distractions vary by developer, one thing is certain: If you want to boost productivity, find a distraction-free zone. <\/p>\n<blockquote style=\"line-height: 1.7em; background-image: none; margin-left: 0; padding-left: 18px; height: auto;\"><p>\n\u201cThere are a few things I do though during heavy duty programming sessions,\u201d explains Thomas Puchalski, Programming Manager at <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Source', 'Ninja Programming']); \" href=\"http:\/\/www.ninjaprogramming.net\/\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">Ninja Programming, LLC<\/span><\/a>. \u201cWhen I set out to really go to town on a project, I make sure to cut off all contact. I turn my phone off or put it on silent. I also don&#8217;t bother checking any e-mails. I try to cut off all distractions from the outside world. Personally, I rely heavily upon my short term memory to pull me through these sessions. That&#8217;s what is used to jump back and forth through code that I have written so I know what I&#8217;m doing and what needs to come next. If I am pulled out of that zone, and my brain switches over to thinking about something else, I lose everything that I have just worked on trying to log up there. I now have to go back and get a quick mental summary of everything that I did and get my mind back into what needs to be done. That may not seem like a lot of time lost, but if that is constantly happening, then it starts to add up and can at least double the project&#8217;s timeline.\u201d\n<\/p><\/blockquote>\n<h3>4. They don\u2019t try to reinvent the wheel<\/h3>\n<p>The truth is, building a new application or site from the ground up is rewarding. However, it\u2019s usually inefficient. Productive developers understand the value of using frameworks and tools that eliminate much of the repetitive coding tasks. Sure, they could do everything from scratch&#8230;but chances are, someone has already created parts (or all) of the solution they need. <\/p>\n<blockquote style=\"line-height: 1.7em; background-image: none; margin-left: 0; padding-left: 18px; height: auto;\"><p>\n&#8220;One key habit of highly productive web developers is avoiding starting from scratch,&#8221; says <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Source', 'Sid Savara']); \" href=\"http:\/\/sidsavara.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">Sid Savara<\/span><\/a>, Technical Manager at the University of Hawaii. &#8220;Typically this means digging into your &#8216;swipe file&#8217; of previous work you&#8217;ve done, purchasing a theme and modifying it &#8211; or using a framework like Bootstrap. We have standards for what is a &#8220;good&#8221; responsive landing page, and consumers have expectations of what standard types of sites should look like (e-commerce, portfolios, etc). By getting a headstart with a foundation in place, it can easily cut development time by days or even weeks.&#8221;<\/p>\n<p>&#8220;Starting from scratch makes sense if you are making something truly unique or groundbreaking &#8211; but most people don&#8217;t have a clear vision of a brand new, cutting edge site in their mind. They just want their site to look modern, comparable to their competitors &#8211; and under budget.&#8221;\n<\/p><\/blockquote>\n<h3>5. They understand the end goal<\/h3>\n<p>Productive developers don\u2019t start a project without a clear understanding of the problem they\u2019re trying to solve. Rather than dive right into a project, they take the time to truly understand the user\u2019s needs. Unclear requirements or vague requests will only waste time and frustrate both sides.  <\/p>\n<blockquote style=\"line-height: 1.7em; background-image: none; margin-left: 0; padding-left: 18px; height: auto;\"><figure id=\"attachment_7444\" aria-describedby=\"caption-attachment-7444\" style=\"width: 240px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.mrc-productivity.com\/blog\/wp-content\/uploads\/2014\/01\/small_2377844553.jpg\" alt=\"photo credit: Bogdan Suditu via photopin cc\" width=\"240\" height=\"180\" class=\"size-full wp-image-7444\" \/><figcaption id=\"caption-attachment-7444\" class=\"wp-caption-text\">photo credit: <a href=\"http:\/\/www.flickr.com\/photos\/bogdansuditu\/2377844553\/\">Bogdan Suditu<\/a> via <a href=\"http:\/\/photopin.com\">photopin<\/a> <a href=\"http:\/\/creativecommons.org\/licenses\/by\/2.0\/\">cc<\/a><\/figcaption><\/figure>\n<p>\u201cI think the ultimate difference between productive and unproductive developers is the ability to take the time to fully understand a task set before them,\u201d says Hasan Nazeer, Senior Application Engineer, <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Source', 'Lyons Consulting']); \" href=\"http:\/\/www.lyonscg.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">Lyons Consulting Group<\/span><\/a>. \u201cA productive developer will have plenty of work to do, but unlike the unproductive developer, will approach his work by having a complete understanding of all requirements. A productive developer is constantly driving towards completing his work, and thus does not have time to not fully engage in his tasks.\u201d<\/p>\n<p>\u201cI know from my own experiences, whenever I made sure I knew exactly what I was doing, and understood all the requirements of my job, I was able to complete tasks without delays. I also have looked to co-workers or superiors to ask questions when I didn\u2019t fully understand, so that I can better learn my job. While of course some tasks take longer than others, by preparing and being knowledgeable about your project, you can be more productive and accomplish the job more efficiently.\u201d\n<\/p><\/blockquote>\n<h3>6. They never stop learning<\/h3>\n<p>Productive developers constantly seek to improve themselves. They understand that in this field, you can\u2019t sit idly by and coast along on current knowledge. They\u2019re always learning, and constantly looking for ways to become better at their craft. <\/p>\n<blockquote style=\"line-height: 1.7em; background-image: none; margin-left: 0; padding-left: 18px; height: auto;\"><p>\n\u201cI&#8217;ve worked with a number of web developers and have managed teams of 8 to 9 developers,\u201d says Joshua Maag, CEO at <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Source', 'Squarehook']); \" href=\"http:\/\/www.squarehook.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">Squarehook<\/span><\/a>. \u201cThe key that separates the two has often been how eager the individual is to learn.  Developers who spend their free time learning and growing are often way better.  Simply put, they want to know how to solve a problem, how to become a better programmer, and how to excel their career.\u201d  <\/p>\n<p>\u201cProductive developers often work on side projects for themselves, they always have ideas, they are coachable and willing to accept criticism on their work.  Customers are often in a state of flux.  Being adaptable and responsive to ideas makes you a valuable member of any project.\u201d\n<\/p><\/blockquote>\n<h3>7. They communicate clearly<\/h3>\n<p>Whether you\u2019re building web sites or applications for business users or for outside customers, one thing remains the same: Frequent communication will save you from hours of frustration and wasted time. It not only keeps everyone on the same page, it helps you identify problems early, and can keep you from wasting days or weeks on a feature that the customer doesn\u2019t want.<\/p>\n<blockquote style=\"line-height: 1.7em; background-image: none; margin-left: 0; padding-left: 18px; height: auto;\"><p>\n\u201cI&#8217;ve been developing websites for over 15 years and I would say the best habit to have as a web developer is to be an excellent communicator,\u201d says Glenn Romanelli, President\/Creative Director of <a onclick=\"_gaq.push(['_trackEvent', 'Blog', 'Source', 'Lighthaus Design']); \" href=\"http:\/\/www.lighthausdesign.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"color: red;font-weight: bold\">Lighthaus Design, Inc<\/span><\/a>. \u201cMost clients tend to become unhappy when a job takes too long to complete, and since the average website consumer tends to underestimate how long a website project should take, it usually doesn&#8217;t take very long for a client to get impatient.\u201d<\/p>\n<p>\u201cSometimes as developers we get very busy &#8211; caught up in the coding. But it&#8217;s critical we take time each week to speak to our clients in clear terms so that they understand what they need to do to help keep the project on track, and to make sure they completely understand what we&#8217;re asking of them, and that they know specifically how to execute.\u201d\n<\/p><\/blockquote>\n<p>So, what do you think? Did I leave anything off of that list? If you\u2019d like to add another habit of highly productive developers, please share in the comments.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A recent Forrester study highlights a major shift in the business landscape: More and more, software development plays an increasingly important role in a company\u2019s competitive edge. According to the study, \u201cCompanies that are able to innovate quickly with software will outcompete traditional market leaders.\u201d There&#8217;s just one problem: As the study points out, software &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.mrc-productivity.com\/blog\/2014\/01\/7-habits-of-highly-productive-web-developers\/\"> <span class=\"screen-reader-text\">7 habits of highly productive web developers<\/span> Read More &raquo;<\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"default","ast-global-header-display":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","slim_seo":{"title":"7 habits of highly productive web developers - mrc&#039;s Cup of Joe Blog","description":"A recent Forrester study highlights a major shift in the business landscape: More and more, software development plays an increasingly important role in a compa"},"footnotes":""},"categories":[8],"tags":[15],"class_list":["post-7439","post","type-post","status-publish","format-standard","hentry","category-education","tag-web-development"],"_links":{"self":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts\/7439","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/comments?post=7439"}],"version-history":[{"count":13,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts\/7439\/revisions"}],"predecessor-version":[{"id":13921,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/posts\/7439\/revisions\/13921"}],"wp:attachment":[{"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/media?parent=7439"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/categories?post=7439"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/blog\/wp-json\/wp\/v2\/tags?post=7439"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}