[HN Gopher] Finish your projects
       ___________________________________________________________________
        
       Finish your projects
        
       Author : aarondf
       Score  : 127 points
       Date   : 2023-06-13 17:33 UTC (5 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | mrcwinn wrote:
       | In the middle of this as we speak, so thanks for the post. I'm
       | absolutely in that rough 10% phase. XD
        
         | aarondf wrote:
         | Rooting for you. You can do it.
        
       | bartq wrote:
       | I think this is important: finish your project in bigger context
       | where your project is a piece needed in higher level picture.
       | Don't finish project just to finish it. This attitude solves
       | problem of motivation, because you naturally finish the project
       | without forcing yourself. Masons don't lay bricks to have bricks
       | laid down, they want to build a house. Of course it much more
       | complex than that, some people are just not types of makers and
       | "finishing projects" is not their cup of tea.
        
       | enos_feedler wrote:
       | Is it bad I can't even finish reading the article?
        
       | ezekg wrote:
       | Totally agree. And even after the big finish^Wlaunch, too many
       | people give up on good projects because they don't know how to
       | get traction yet. The truth is that sometimes that's _your_
       | fault, not the _project 's_ fault. New founders especially quit
       | _good_ ideas way too often, way too early because they 've been
       | conditioned to want to drop things if they fail to reach hockey-
       | stick growth within a certain time threshold. It takes time. All
       | of it.
       | 
       | I briefly wrote about this awhile back as well:
       | https://keygen.sh/blog/5-things-ive-learned-in-5-years/
        
       | doingmaths wrote:
       | I'm definitely guilty of not finishing projects, but I don't know
       | that the "Just do the thing and don't NOT do the thing" is a
       | particularly useful piece of advice. I know I should "fight for
       | the time on the project" but willpower to do so isn't always
       | something that's available.
       | 
       | And that's not a personal failing -- I might decide that tonight
       | I want to work on my game, but then have a long day at work that
       | leaves me emotionally and physically exhausted. It's important
       | not to burn out on your projects too, and _forcing_ labor on them
       | when you do not have the spare capacity can lead to long term
       | failure to complete the projects as well.
       | 
       | I think the much more valuable lens is to consider -- " _Why_ do
       | I work on this project? Is the joy of finishing it important to
       | me? " If you _want_ to finish it, and cannot, then start looking
       | into pushing yourself to finish. If the joy is in just tinkering
       | because tinkering is fun, then allow yourself that pleasure and
       | don 't beat yourself up for finding something you enjoy and
       | partaking in it.
        
       | Ilasky wrote:
       | I really like the analogies of SLC (simple, lovable, and
       | complete)[0] and "I'm the only user"[1] to motivate how I finish
       | my projects. Often times I have a project I'm working on and my
       | imaginary perception of what a user needs is steering the
       | development. Whereas, in reality, I just need the thing to work
       | for myself and I can pretty it up how I like.
       | 
       | [0] https://herman.bearblog.dev/mvp-vs-slc/
       | 
       | [1] https://blubsblog.bearblog.dev/i-am-the-only-user/
        
       | doingmaths wrote:
       | I'm an anarchist --- wait hold on! --- not like "The Purge" kind,
       | but the "mutual aid and share what you can" kind. I genuinely
       | believe that if we operated more on a "people will produce the
       | tools, food, and art they want to produce, and will improve their
       | working conditions if given the opportunity" mindset, and less on
       | a "hit this deadline so your boss makes a buck" mindset we'd be
       | able to finish more of our 'side projects'.
       | 
       | I think we all naturally have these projects in mind, things we
       | would pursue if we had the time. And I think we could move
       | towards a world where we optimize a little less for maximizing
       | profit, and a little more for maximizing our leisure time. It
       | will take some structural reforms, some trust, and a whole lot of
       | learning by doing, but I'd much rather live in a world when I had
       | less stuff but more freedom to pursue things I enjoyed.
        
       | mjwhansen wrote:
       | > Finishing requires courage
       | 
       | Oh man, I feel this. I've been doing a lot of furniture
       | refinishing lately as a hobby. One piece is 90% done and another
       | is 80% done. I was working on the 90% done one today, and was
       | planning to lacquer it today so I can put the hardware on
       | tomorrow and be done... but instead I found a few places where I
       | should really touch up the paint. That pushes back completing it
       | at least one more day as the lacquer needs to sit for a day
       | and... I just need to "ship" the darn thing. I realized it'll
       | probably never be 100% perfect, and that's okay - done is better
       | than perfect, as they say. Having the courage to create something
       | that isn't perfect is a skill.
        
       | jhp123 wrote:
       | To take the contrary position: give up. Your project will take
       | far longer than you think, and you will get much less from it
       | than you hope (at least in terms of external validation and
       | rewards).
       | 
       | You may feel a horrible pressure to finish it, but you are a free
       | person and can simply choose not to. You can free yourself from
       | this pain without lifting a finger. Go take a walk or bake some
       | cookies instead.
       | 
       | If you have the intrinsic motivation to continue with your
       | project, then your interest will return at some point and you'll
       | get back to it with the wind at your back. If you don't have that
       | intrinsic motivation any more then you will only make yourself
       | miserable by trying to whip yourself forward.
        
         | aarondf wrote:
         | I've lashed myself to the mast (so to speak) and forced myself
         | to finish projects that I would've otherwise walked away from,
         | and I'm so so glad I did.
         | 
         | > You can free yourself from this pain without lifting a
         | finger.
         | 
         | Sometimes the cost of doing things is pain. I was going to say
         | the cost of doing _great_ things is pain, but honestly, the
         | cost of doing anything is usually some level of pain.
        
           | bob1029 wrote:
           | It isn't always the case, but I have found that pain is the
           | #1 litmus test for "is what you are doing valuable". Some
           | times this turns out to be a "you worked hard instead of
           | smart" problem, but game theory wise one can assume that
           | painful things are generally avoided or not fully explored.
           | 
           | There is a really good reason you are spammed to death with
           | GPT chat bot clones, but have to go around like a beggar to
           | find things that actually matter.
        
         | gmiller123456 wrote:
         | Reminds me of The Onion skit where a guy spent 15 years writing
         | a book on ant eaters only to realize it was a horrible waste of
         | time.
         | 
         | https://www.google.com/url?q=https://m.youtube.com/watch%3Fv...
         | 
         | Sometimes it best to trust your personal prioritization of when
         | and when not to work on a project.
        
       | cmrdporcupine wrote:
       | Unfortunately I don't get paid to finish personal projects on
       | GitHub, and I need to get paid to feed my family. (And I don't
       | have other devs, product managers, QA, etc. to help, either, like
       | I do at work). And judging from the nature of the vast majority
       | of stuff on GitHub, most people are in the same boat.
       | 
       | Someday I'll retire and then I can get some real work done.
        
       | sheepishly wrote:
       | [flagged]
        
       | pengaru wrote:
       | Commercial software vendors don't even finish _their_ products
       | before shipping what 's often aspirational vaporware in the form
       | of a skinned update mechanism.
       | 
       | Don't get me wrong; I'm totally in favor of finishing things in
       | the sense of doing the un-fun work of finishing instead of
       | distracting yourself with a fresh set of problems every time you
       | reach the un-fun finishing phase of resolving existing messes.
       | 
       | But it's worth noting that what qualifies as "finished" seems
       | vastly different from what it was back in the days of shipping
       | software on CDs and floppy disks.
       | 
       | You don't even get a finished automobile anymore in some cases,
       | and we're not talking kit car prices. Tesla, I'm looking at you.
        
       | seabass-labrax wrote:
       | I tend to have the opposite experience from the author's: I know
       | enough about the domain to know that choices I make at the
       | beginning could cause massive problems later on (in performance-
       | critical software, for instance), yet not enough to know exactly
       | where the traps are. Once the project is underway and empirical
       | data can be collected, it's much easier to direct attention to
       | known issues and opportunities.
       | 
       | By nature I enjoy the 'boring' stuff, to use the author's term,
       | and often find a clean code-to-package CI pipeline and an up-to-
       | date wiki more satisfying than the software itself!
       | 
       | I wonder what the ratio of 'non-finishers' to 'non-starters' is.
       | I suspect I'm in the minority, but maybe someone here knows of a
       | reliable study of this.
        
       | Lammy wrote:
       | > Sometimes finishing is just the beginning: You release the
       | library, the package, the SaaS product, and your work is really
       | just beginning. Users have issues, customers have feedback, and
       | dependencies need upgrading. In some sense, there is no finished
       | software; there is only released software.
       | 
       | Translation: "Please get locked in to using GitHub"
        
         | aarondf wrote:
         | Ha. I don't work for GitHub tho! I'm just a guy writing about
         | my feelings
        
           | Lammy wrote:
           | I didn't claim you did. Why would GitHub (read: Microsoft)
           | "amplify your voice" in a way that doesn't benefit them? They
           | want people locked into GH via their non-Git offerings.
        
       | interroboink wrote:
       | In general, I like the empathetic tone of the article, and I
       | appreciate that it addresses an emotional facet of software
       | development. But nevertheless it triggers some little part of me
       | w/regard to telling people what they should or should not do, or
       | what they may be proud of.
       | 
       | I worry for someone who reads "You also have a duty to your
       | future self to release the project" and "...you tell yourself
       | that you are the kind of person who ships" and takes that to mean
       | "if you don't release it, you're failing yourself" and "you're
       | the wrong kind of person if you don't ship."
       | 
       | On an emotional level, I think it's better to start from a place
       | of (unconditional!) self-love, and go from there, rather than
       | beating yourself up because you're not meeting some blogger's
       | expectations of how you should act.
       | 
       | And just to be clear: I don't think the author _means it_ that
       | way, but that 's one way it can come across, to some people, in
       | some states-of-mind.
       | 
       | I've generally found it more useful to phrase things like this in
       | terms of "I" rather than "you". As in: "I had X experience when I
       | did Y" rather than "you should do Y, so that you will feel X."
       | It's a common mis-step in giving well-meaning advice, I find.
       | 
       | EDIT: Also, I'm sure there are plenty of people who really do
       | benefit from advice being given in this more pointed way, and I
       | realize it's a bit onerous to always write and phrase things for
       | a "safest common denominator," but I think it's worth keeping in
       | mind, at least.
        
         | aarondf wrote:
         | Nuanced and valuable feedback, that I receive. Thank you!
         | 
         | I think your edit was basically going to be my reply, haha. It
         | _is_ hard to address every side of every potential topic in an
         | article. I actually needed help softening the tone to end up
         | with the final version you 're reading today. I'm empathetic by
         | nature so it's easy for me to write with empathy, but I'm still
         | prone to generalizing my personal experiences!
        
           | BeetleB wrote:
           | > You have a duty to your past self to release the project.
           | It's a way to honor your work and sacrifice. All the time
           | spent on the project is time you could have spent on
           | something else. That time was not without cost.
           | 
           | Ouch!
           | 
           | I strongly encourage you to read up and understand the sunk
           | cost fallacy. In general, do not let past efforts be the
           | guide for future decisions.
           | 
           | I've quit a lot of projects in my life. And it was the
           | _right_ thing to do. Put another way, many of the valuable
           | projects I 've completed would _not_ have been accomplished
           | had I stuck to the projects I had sunk time into.
           | 
           | > You also have a duty to your future self to release the
           | project. Every time you don't release a project, you're
           | telling yourself that you're the kind of person who doesn't
           | ship.
           | 
           | If you tell yourself that every time you don't release a
           | project, the fix is not to release the project, but to stop
           | telling yourself these lies.
           | 
           | Despite the strong complaints, the article isn't that bad and
           | does have some merits.
        
             | OJFord wrote:
             | I think an easy to grasp version of sunk cost is 'buying is
             | the same as holding' (modulo fees and taxes) from
             | investing. In other words: you can spend today working on
             | the existing project that's going nowhere, or on the newer
             | idea that has potential. You allocate the day either way -
             | it's not somehow less because it was left on the default
             | option of what you were already working on.
        
             | aarondf wrote:
             | Glad you still liked it, despite the strong complaints!
             | 
             | I hear your feedback, but I don't fully agree with all of
             | it. I do understand the sunk cost fallacy quite well, but
             | thinking about the time committed can be a useful framing
             | to help push past the fear of releasing or drudgery of the
             | last 10%.
             | 
             | > If you tell yourself that every time you don't release a
             | project, the fix is not to release the project, but to stop
             | telling yourself these lies.
             | 
             | I mean, if you never ship you're literally the kind of
             | person who doesn't ship though. You can tell yourself
             | whatever you want, but eventually you'll stop believing
             | yourself because you know it's not true!
             | 
             | Perhaps you'll enjoy my other piece more: Publishing your
             | work increases your luck
             | (https://github.com/readme/guides/publishing-your-work)
        
             | Eisenstein wrote:
             | > Despite the strong complaints, the article isn't that bad
             | and does have some merits.
             | 
             | I will likewise critique your critique:
             | 
             | Instead of creating a new thread you post directly to the
             | author who responded to an unrelated message. Since the
             | author is obviously responding to criticisms, why did you
             | feel the need to expand a thread with a non-related article
             | quotation you took issue with rather than start your own?
             | It seems to me you wanted to ensure that the author read
             | what you wrote because you felt it was particularly
             | important for him to see it. I don't agree.
             | 
             | The article is about finishing projects instead of starting
             | new ones -- it is not about when to cut losses. The two
             | topics may seem related but I argue that they are not.
             | 
             | The type of person to leave an unfinished project on the
             | table because it isn't 'good enough' is the person for whom
             | the author is writing. It is not the type of person who
             | can't let a project go despite the damage that project is
             | causing to other things or despite the project being a lost
             | cause.
             | 
             | Example:
             | 
             | The person who makes a bet 'if I risk X in exchange for A%
             | of success happening and I lose, I can live with that, but
             | I couldn't live with not trying' is not the person who
             | makes a bet 'I lost X, which I couldn't afford to lose, but
             | if I risk everything I have left or go into debt, then I
             | can make back what I lost and be whole again'. One is an
             | entrepreneur and the other is a gambling addict. The same
             | type of difference exists in the two cases you present.
             | 
             | Your final sentence seems to be a half-assed acknowledgment
             | that you found value in the work, but you are unable to
             | give praise so the complements you use are negated put-
             | downs ( _not_ bad, _despite_ complaints, _is not_
             | meritless). I think that this form of praise is worthless
             | and makes you look petty. Stop doing it.
        
       | doctor_eval wrote:
       | I have two projects on the shelf right now. I've been dragged
       | away (read: need money) to work on non-code projects. To the
       | point where I don't feel confident about opening my IDE!
       | 
       | So, this article is really timely. Thanks.
        
       | c7DJTLrn wrote:
       | I tried forcing myself to finish a personal project before moving
       | on to the next one. I've just ended up procrastinating and
       | getting nothing done for the past 6 months. In turn, that has
       | created a cycle of guilt and anxiety making me not want to touch
       | any of my projects at all.
        
       | rozenmd wrote:
       | My "hack" is to release work early (while you're still
       | embarrassed by it), and iterate ruthlessly:
       | https://onlineornot.com/unreasonable-effectiveness-shipping-....
        
         | forgotmypw17 wrote:
         | I try to make at least one commit a day. Some days I fail, but
         | often I have weeks-long streaks.
        
         | aarondf wrote:
         | Love this framing! Good article. Followed you on Twitter!
        
       | phoe-krk wrote:
       | The main problem with finishing projects is that the fun 90% of
       | the project takes 90% of the time spent on it, and the un-fun 10%
       | required to actually polish and release it takes _at least_ the
       | other 90% of the time spent on it.
       | 
       | And then come the issues and PRs and people requesting your
       | attention and time that they're entitled to because they found a
       | project on GitHub that seems to fulfill 90% of their needs, and
       | they only require you to implement or review the other 90%.
       | 
       | Keeping stuff unfinished is actually not a bad idea.
        
         | Hamuko wrote:
         | Eh. The vast majority of the time that you ship something, the
         | end result is that literally nothing happens.
        
       | stuckkeys wrote:
       | I also listen to the same song on repeat. How do you think
       | Despacito got all those views.
        
         | aarondf wrote:
         | The thought of listening to Despacito for a week straight is
         | making me sweat
        
       | mijustin wrote:
       | I often say this to my teenagers: "You don't get any credit for
       | the homework you _thought_ about handing in. Even if it 's not
       | perfect, the only way to get a mark is if you hand it in."
       | 
       | So true for work and side-projects as well.
       | 
       | (I needed this reminder myself as I have a blog post I've been
       | noodling on for 12+ months. I just need to publish the damned
       | thing!)
        
         | dotnet00 wrote:
         | To latch onto that analogy, the point of homework is to make
         | sure you learn the topic.
         | 
         | So, if it weren't mandatory, handing it in isn't all that
         | important as long as you're doing it. Indeed, in grad school,
         | there was very little graded homework and most was just
         | assigned with solutions given for anyone who wanted to do it.
         | 
         | So, to bring the overly stretched analogy back to projects, I
         | think you shouldn't feel like you need to "finish" something if
         | it meets enough of the goals you set for yourself.
         | 
         | Eg I spent months working on projects like custom OS's and game
         | engines. But as the nature of those kinds of projects is to
         | have endless room for growth, I just drew the line at some
         | point that I had learned and done enough and could just drop
         | them in whatever potentially buggy state they were in.
        
         | hacknewslogin wrote:
         | This reminds me of two quotes that really helped me with
         | perfection anxiety: "If it's worth doing, it's worth doing
         | badly." "Within acceptable tolerances."
        
           | whartung wrote:
           | The corollary of which is "It's not just good, it's good
           | enough" (which I think is a Simpsons reference).
           | 
           | I actually have a project on the shelf that's ][ far from
           | being releasable.
           | 
           | It's waiting on two things.
           | 
           | One, is since it's a Java GUI, getting it built into a form
           | for the MacOS/Window/Linux platforms, rather than just
           | "here's a jar file". There's ways around this, but it's not
           | quite drag and drop, and I haven't got a Windows box to test
           | anything on, so its stalled. (I tried installing one of MS's
           | VM images that they offered, but that's didn't work,
           | so...back to the shelf).
           | 
           | Two, is documentation. I could probably just let it go, and
           | explain it to the 3 people who might actually download it and
           | use because simply launching it, "Neat!", and letting it bit
           | rot forever more. But, _I_ think it needs some documentation,
           | so...it sits.
           | 
           | If I could satisfactorily drag and drop the installers, I'd
           | probably press on with it, but it could still use some docs.
           | 
           | Meanwhile, I continue on my meta project which this project
           | would inevitably be folded into, so it's not all lost.
        
             | marcosdumay wrote:
             | Personally, I have lost count of the times I've got a jar
             | from some place, and had to look at the source to discover
             | how to use, and still used the software.
             | 
             | It is really not a good experience, but totally beats not
             | having the software.
        
       | agumonkey wrote:
       | I heard that Shannon was a mess hyper multitasker. He just went
       | wherever his mind wanted to, and moved accordingly. Made me try
       | to accept my scrapyard of project shelf and just keep iterating
       | hard.
        
       | turnsout wrote:
       | Counterpoint: do what actually matters to you. You may constantly
       | start projects and never finish them, but that may actually be
       | serving your need for experimentation and learning. For someone
       | else, that same behavior might be unhealthy avoidance. If
       | "finishing" a project (software is never done) is something that
       | matters to you, find ways to work towards that goal. I've shipped
       | plenty of things, but also walked away from 10X more projects
       | that were "90%" done, because I got what I needed out of them.
        
         | xwowsersx wrote:
         | I agree with your idea, but I don't see at as a counterpoint. I
         | don't read this post as making an axiological statement about
         | the would-be reader's work (I may have read it wrong though!).
         | To me, the article assumes that "finishing" the thing is
         | something the reader already values, or at least does in many
         | cases. And the author is offering some advice for how to stick
         | to it and power through even when there are painful stages
         | along the route to what the reader already wants. I see this as
         | trivially or obviously true too, namely the idea that not every
         | moment or every ounce of work on the way to something you
         | yourself really deeply desire will feel like elation and fun.
        
           | aarondf wrote:
           | Author here: you are reading it as I intended! Not "you have
           | to finish everything" but rather "you want to finish
           | something but it's hard, now what"
        
       | SCUSKU wrote:
       | I always remind myself that "Done Is Better Than Perfect"
       | whenever I think I should add some new feature to a project
       | rather than ship it.
       | 
       | I think the scariest thing is accepting that if you ship
       | something people probably won't care. It's easier to continue
       | working and not ship it under the assumption that just adding
       | that one more thing will then make everyone love it.
       | 
       | I don't know how it happened, but at some point I stopped caring
       | about outcomes and have accepted that most ideas I have are
       | stupid, most projects bad, but the only way to find good ones is
       | to just put it out in the world. Worst case scenario everyone
       | ignores it.
        
       | [deleted]
        
       | bodge5000 wrote:
       | I used to have this problem and then maybe ~8 years ago, I solved
       | it, and word of warning, it can go the opposite way. When I
       | finished my last project I started work on a new one, which I
       | predicted would only take a few months. Common mistake I know,
       | but even looking back, technically speaking I wasn't wrong by
       | much. It is a simple project on a technical level, but not so
       | much on a design level (by that I mean game design, its a game I
       | was working on).
       | 
       | 3 years later, I realised it was a fundamentally flawed idea. 6
       | years later, now, I'm still working on it, despite knowing that.
       | Very recently, for the first time in that 6 years, I've been
       | successful at pulling myself away onto other projects, but that
       | main one still sits there and I will get back to it, whether I
       | want to or not.
       | 
       | All thats not to say that finishing things isn't important, just
       | that it can go both ways. Sadly I don't have any advice to stop
       | others from falling into the same trap as I did other than maybe
       | being aware of that.
       | 
       | EDIT: To be clear, this isn't a "just ship it" situation. I don't
       | have anything to ship other than mismatched ill-formed
       | prototypes, and I do mean prototypes. Maybe one day I'll just
       | polish up one of those prototypes and ship it, that's been my
       | thought process lately
        
       | carb wrote:
       | I love this article and the premise. Further similar
       | reading/watching in some of my favorite Zack Freedman videos!
       | 
       | - "Here's What's Preventing You From Finishing Projects":
       | https://www.youtube.com/watch?v=L1j93RnIxEo - "How to Finish Your
       | Weekend Projects in One Weekend":
       | https://www.youtube.com/watch?v=72a85tWOJVY
       | 
       | "Finishing" more projects (even if that means changing the scope
       | and announcing it "finished") has been amazing for my internal
       | willingness to start new projects or tell friends about them. I
       | have much less anxiety that I'll leave another half-finished
       | project sitting around with lost motivation.
        
       | ge96 wrote:
       | lol (monkey eyes, looks away)
        
       | mkoubaa wrote:
       | Except software is never finished. If you publish something,
       | there's a tacit expectation that you'll return to it, and it'll
       | never be truly behind you.
       | 
       | Rest assured, the only way that returning to a finished project
       | takes more mental bandwidth than the guilt of never finishing it
       | is if it's wildly successful. And that's a good problem to have
        
         | aarondf wrote:
         | Totally! I referenced that near the end:
         | 
         | > Sometimes finishing is just the beginning: You release the
         | library, the package, the SaaS product, and your work is really
         | just beginning. Users have issues, customers have feedback, and
         | dependencies need upgrading. In some sense, there is no
         | finished software; there is only released software.
        
       ___________________________________________________________________
       (page generated 2023-06-13 23:00 UTC)