<story><title>Give A Damn</title><url>http://clayallsopp.com/posts/give-a-damn/</url></story><parent_chain></parent_chain><comment><author>klibertp</author><text>I have different problem - I just can&apos;t code like The Kid anymore. I know I could in the past, I have the code to confirm this. Not anymore, I&apos;m not able to.&lt;p&gt;And often I&apos;m required to. My boss says: &quot;just hack it quickly&quot; or &quot;it&apos;s one-shot script, just write it&quot; and wants it done in an hour or so. And I can&apos;t do this.&lt;p&gt;I don&apos;t even know why I can&apos;t. I tried many times to &quot;just code&quot; and there&apos;s something in my mind that seems to be opposed to this. This &quot;something&quot; refuses to use unknown or not fully understood tools. It refuses to let ugly line of code be. I feel like I&apos;m refactoring my &quot;one-shot&quot; scripts reflexively, without me noticing. And the worst thing is I do it continuosly - not when the script is finished and somehow works, but during writing it for the first time. I know exactly when was the last time I wrote more than twenty (Python) lines of code without breaking the code into functions and classes, caring about names and comments: in 2004. Tests came later, but now they are a reflex too.&lt;p&gt;And now what my boss wants done in an hour I write in three or four. Then he&apos;s getting angry and tells me to go clean and document some code or to implement something else, and I do, and it more often than not works and - I hear - could even be a pleasure to read. But then, few days later, he wants me to quickly convert something or export something or something like that and I just can&apos;t do it, unless I have previous script ready. Then he&apos;s angry again...&lt;p&gt;TL;DR - giving a damn is certainly a good thing, sometimes, but taken to the extreme can disturb your career.</text></comment>
<story><title>Give A Damn</title><url>http://clayallsopp.com/posts/give-a-damn/</url></story><parent_chain></parent_chain><comment><author>Zarel</author><text>On the other hand, I&apos;m reminded of this passage from HPMoR:&lt;p&gt;&quot;But Father had once told her that the trouble with passing up opportunities was that it was habit-forming. If you told yourself you were waiting for a better opportunity next time, why, next time you&apos;d probably tell yourself the same thing. Father had said that most people spent their whole lives waiting for an opportunity that was good enough, and then they died. Father had said that while seizing opportunities would mean that all sorts of things went wrong, it wasn&apos;t nearly as bad as being a hopeless lump. Father had said that after she got into the habit of seizing opportunities, then it was time to start being picky about them.&quot;&lt;p&gt;Or, in context: You can&apos;t skip directly to writing quality code. First, you have to get used to writing code, and to do that, you have to write a lot of it. You have to get used to getting things done. Only after you have a good grasp of getting things done, of seeing a project to completion, should you start worrying about code quality.&lt;p&gt;I have a lot of unfinished projects, and a lot of smaller projects that I have finished. I&apos;m sure all of us do. But once, I decided not to worry so much and just start writing, and I started and shipped an incredibly ambitious project. It wasn&apos;t my best code, but it taught me a lot about not sitting at a blank screen trying to plan everything to be perfect before starting.</text></comment>