[HN Gopher] On finishing projects
       ___________________________________________________________________
        
       On finishing projects
        
       Author : reichertjalex
       Score  : 63 points
       Date   : 2024-08-19 18:03 UTC (1 days ago)
        
 (HTM) web link (www.alexreichert.com)
 (TXT) w3m dump (www.alexreichert.com)
        
       | PaulHoule wrote:
       | See https://en.wikipedia.org/wiki/Kanban
        
         | gopher2000 wrote:
         | How does this help here?
        
       | galleywest200 wrote:
       | >I think there are two strategies that would help a lot: 1)
       | writing a spec (i.e. a plan) upfront, and 2) timeboxing the
       | project by giving myself a deadline.
       | 
       | I would like to add another possible strategy: watching a number
       | go up.
       | 
       | Recently I have started tracking the books I am reading. I track
       | the page number I am currently on via a dashboard I made in
       | Obsidian, which displays a %-read for each book. I have found
       | that "number goes up" gives me just enough of a dopeamine hit to
       | encourage me to pick the books up more frequently than I had
       | before.
        
         | reichertjalex wrote:
         | Ooh I like that! I definitely feel that in some sense when I
         | have a good streak of commits per day, where I don't want to
         | break the streak. Or for workouts, it's suuuper motivating to
         | see the number continue to go up.
         | 
         | But oftentimes when a project or essay is incomplete, it's hard
         | for me to think of a good "number" to track that would be a
         | good motivator (since i.e. lines of code, or the number of
         | words in a draft, don't necessarily feel like a good proxy for
         | progress all the time). I'm curious if there's a metric that
         | would work better?
        
       | ChrisMarshallNY wrote:
       | I had a teacher once, at a training seminar, that kept repeating
       | the phrase "We need to know what 'done' looks like."
       | 
       | "Done" is often a compromise. There's more that can be added,
       | there's still burrs and "rough spots," but we need to declare it
       | ready to go out the door, and be prepared to fully support our
       | release.
       | 
       | I've been shipping software for my entire adult life, and have
       | had to embrace this philosophy.
       | 
       | Just the other day, I stopped working on a "play" project that I
       | was working on, because it was a rabbithole, and not worth the
       | agita of fixing the fundamental design issues that I was
       | encountering (an unfortunate by-product of my "Evolutionary
       | Design" process, is that it's quite easy to fall into Wonderland,
       | and I need to learn to understand that I should just let the
       | rabbit go).
        
         | reichertjalex wrote:
         | > "We need to know what 'done' looks like."
         | 
         | Ugh, yes... I wish I had internalized this sooner!
        
         | daelon wrote:
         | > agita
         | 
         | Interesting word, thank you!
        
           | ChrisMarshallNY wrote:
           | Lots of folks of Italian ancestry, around here.
           | 
           | I hear the word used, often.
        
         | mandeepj wrote:
         | > "We need to know what 'done' looks like."
         | 
         | As much hate as Agile gets here at HN because of its wrong
         | usage by many people, one thing that Agile recommends is
         | setting up a 'Definition of Done' within your team before even
         | starting your very first sprint.
        
           | ChrisMarshallNY wrote:
           | It's much older than Agile. The Japanese company I worked
           | for, did that.
           | 
           | They would start at the end, and work backwards.
           | 
           | They _hated_ Agile.
        
       | cloverich wrote:
       | I resonate strongly with this. I found something pretty simple
       | thats been helping me lately though. I uhh, i just force myself
       | to keep working on it until its done. Grind it out. Work on it
       | especially when i dont want to. Ditch those little relaxing
       | moments for it. Wake up early to find time for it. Its torture.
       | 
       | And also therapeutic. I see the incompleteness of my original
       | idea, or plan. I see that the things i declare important feel
       | less so when i have to keep working on it. I start to permanently
       | discard essays, apps, ideas, as i appreciate what it would really
       | take to do them. I say no to myself far more often. I become more
       | disciplined in my work. And more disciplined in my play. I start
       | making more realistic plans and exit points because im not a
       | masochist.
       | 
       | Ultimately i let it change me. I obviously wont grind like this
       | forever. But the grind teaches me, and changes me, into the kind
       | of person that finishes things. Which is mostly about learning to
       | be more selective and less impulsive, and knowing when to play
       | and when to put things down and truly let them go.
        
         | reichertjalex wrote:
         | Yeah, definitely. I know this is a somewhat controversial
         | opinion, but I do think there's value in developing the muscle
         | around "grinding it out". I think the tricky part (depending on
         | your personality type) is knowing when it makes sense to give
         | up and move on to something else.
        
         | turtledragonfly wrote:
         | > I start making more realistic plans and exit points because
         | im not a masochist.
         | 
         | Or, you start to enjoy the pain, because you enjoy the result.
         | But then your mind does its illogical associative thing and you
         | start to just enjoy the pain on its own. Now you're a
         | masochist!
         | 
         | I jest, but only some. Ask me how I know ...
        
         | wonger_ wrote:
         | +1 to being selective and ruthlessly deleting time-draining
         | ideas.
         | 
         | I'm not sure I can force myself to keep working, though. Self-
         | imposed deadlines don't help me either. It seems like a
         | willpower problem, like going to the gym.
         | 
         | What's helped me is making projects alongside a small group of
         | fellow programmers. Seems like the author has done something
         | similar with a hackers co-op chat and with Recurse. External
         | accountability is my most successful motivator.
        
       | haswell wrote:
       | Over the years I've noticed that I'm often operating in various
       | "modes". Some of this is related to depressive episodes, but
       | often it's just a more neutral ebb and flow. I'll have a week
       | where ideas are flowing and connections form easily. I'll have a
       | week where it feels like I can't engage so deeply - like my
       | system is cooling off after exertion.
       | 
       | And this is one of the reasons writing things down has been such
       | a useful tool, and starting with a spec is something I now do
       | religiously after spending the first half of my life just diving
       | in haphazardly (and often not getting very far).
       | 
       | Those ultra productive days are often enough to get a pretty
       | decent spec written; something I can flesh out in far greater
       | detail than I could with a productive coding day. Those down days
       | are now bolstered by the thinking of a version of myself that was
       | firing on all cylinders, and solved many of the problems I
       | probably don't have the brain power to tackle on the fly when I'm
       | tired and stressed for life reasons.
       | 
       | I feel like I've squandered really good trains of thought by
       | telling myself "I'll remember this and write it down later". So I
       | always start with writing. Future me always appreciates it.
        
       | daliusd wrote:
       | I don't remember which book I got idea from but idea is to work
       | in different modes. When you work as programmer then there are no
       | deadlines and etc. So sometimes you have to put different hat,
       | e.g. CEO hat. It took several months to work out but overall
       | result is reasonably good.
        
       | jmbwell wrote:
       | I sometimes battle perfectionism for various reasons. Someone
       | pointed out that it can't be perfect if it isn't even finished,
       | so why not add "done" to what it means to be "perfect." Somehow
       | that tweaked my perspective in a helpful way. Edit: on
       | reflection, possibly because it doesn't imply a compromise of my
       | standards, but actually strengthens them, so I don't have the
       | feeling of giving up or giving less.
       | 
       | Also very much believe in doing some kind of planning, any kind
       | being better than none at all. Otherwise you put yourself in a
       | tunnel but you don't give yourself a light at the end. The plan
       | can change and it will, but if you have none, you might end up
       | digging forever
        
         | codr7 wrote:
         | I don't plan much, first I set a goal and then break it down
         | into manageable steps. Designs without goals rarely turn out
         | well from my experience.
        
       | docandrew wrote:
       | I needed this. I have so many half-finished projects, it's nice
       | to think that there's still a way to make them valuable in some
       | way.
        
       | turtledragonfly wrote:
       | Always glad to see articles discussing an emotional side of
       | software development (:
       | 
       | I do disagree with this claim (though later points temper it a
       | bit):                 Why is it important to share your work with
       | the world? First, because       there's practically no downside,
       | and very, very high potential upside.
       | 
       | There is a big downside: as the author states,
       | finishing/releasing is hard and time-consuming. You only get one
       | life. Every hour spent doing that stuff you won't get back. So,
       | not a direct cost, but an opportunity cost. Personally, I find it
       | important to acknowledge this and face it head-on, rather than
       | waving one's hands and saying "oh, there's basically no
       | downside." Though I admit that the latter can be a useful self-
       | mind-hack to get the ball rolling. But _first_ you decide what
       | you want to do, and why you want to do it, and _then_ you tell
       | yourself whatever lies you need to help it get done (:
       | 
       | The "why is it important..." question is really critical to
       | motivation, at least for me. A person should give that question
       | honest thought and an answer that rings true to them.
       | 
       | I agree about the therapeutic aspect of putting things out into
       | the public.                 Though I don't plan to publicly share
       | all of these proactively, just       knowing that they're
       | publicly viewable helps give me a stronger sense       of
       | accountability. I'm curious if it will make a difference.
       | 
       | Just getting things out of one's mind, and into the world (even
       | if nobody sees them), can be important (helps my sanity, at
       | least). Even just the "rubber duck" sense of _imagining_ someone
       | might see it, can catalyze thoughts in a way that wouldn 't
       | otherwise happen, too. Then, having people actually see them is
       | another layer, and can be humbling and educational.
       | 
       | Also, apropos of nothing, this article made me think of the
       | (mis-)quote:                 We do these things not because they
       | are easy, but because we thought they would be easy!
       | 
       | Good article (:
        
         | jauntywundrkind wrote:
         | You cite this part of the article,
         | 
         | > _Why is it important to share your work with the world?
         | First, because there 's practically no downside, and very, very
         | high potential upside._
         | 
         | And say,
         | 
         | > _There is a big downside: as the author states, finishing
         | /releasing is hard and time-consuming. You only get one life.
         | Every hour spent doing that stuff you won't get back_
         | 
         | Working in public (or working at least from the assumption it
         | will soon be made public), is something folks should try really
         | hard to get into. It should be a default expectation for
         | yourself. The cost is mostly mindshift!
         | 
         | Once you can change your default position, it no longer feels
         | like a cost to work in public. Every action brings release.
        
       | andrewstuart wrote:
       | There was a post on HN recently about building software for
       | yourself - forget the possible audience of millions. If you focus
       | on yourself as the end user then the whole thing becomes easier.
       | 
       | I couldn't find it after a brief search. Maybe someone else
       | remembers it.
        
       | g4zj wrote:
       | I genuinely consider two of my greatest accomplishments to be
       | building a game and composing a song.
       | 
       | Neither are very impressive, but in both cases, I ended up having
       | to simply decide I was done and stop working on them. I could
       | continue making changes indefinitely, adding little improvements
       | and such every day, but they were also complete as they were.
       | Once I learned to be okay with that and move on, I learned what
       | finishing a project really meant (or at least one form of it).
        
       | codr7 wrote:
       | I already have a job, my side projects are all about having fun
       | and learning new tricks.
        
       | ryandrake wrote:
       | I really disagree that releasing a project publicly is a
       | necessary step to deem something done. I have so many projects in
       | my src/ directory that are (in my mind) finished, but that I will
       | never release to the public. I wrote them for my own education
       | and entertainment, not as things that I think the rest of the
       | world would benefit from. And certainly not as a way to build
       | some kind of (ick) -personal brand- among the open source
       | community, or to give me some sense of accountability (to whom?).
       | I don't need GitHub stars or social media thumbs up or hacker
       | news upvotes to measure the worth of something I made.
        
       | munificent wrote:
       | Reposting an old Reddit comment of mine that I think agrees with
       | much of this article:
       | 
       | I'm in my 40s and for most of my life I had an unending series of
       | unfinished projects that I felt guilty about. Today, I am able to
       | finish some stuff, including some pretty large, hard projects.
       | Better, I don't feel guilty about the stuff I don't finish.
       | 
       | The trick for me is to be deliberate and mindful about why I'm
       | embarking on a particular project.
       | 
       | If it's because I want to feel good by:
       | 
       | * Sharing something with others.
       | 
       | * Accomplishing a difficult, challenging task.
       | 
       | * Proving to myself that I can do something.
       | 
       | * Getting the social cachet of being a creative, productive
       | person. (Maybe this is shallow, but who doesn't like to feel
       | impressive in the eyes of their peers?)
       | 
       | Then the goal of the project is the product it and I focus my
       | attention and discipline on it. I try to have as few of these as
       | possible--like only one at a time--so that my willpower is not
       | diluted.
       | 
       | If it's because I want to feel good by:
       | 
       | * Improving a skill.
       | 
       | * Exploring an unfamiliar domain or learning something new.
       | 
       | * Relaxing by tinkering on something I like.
       | 
       | Then the goal of the project is the process and I don't feel bad
       | about not finishing. The real treasure is all the stuff I learned
       | and did along the way and there is no real destination. I can
       | have as many of these as I want because there's no real failure
       | mode here. They're all recreation.
       | 
       | Once I got more honest and clear with myself about my goals for
       | each project, I started to be able to finish the ones where that
       | mattered and stopped feeling bad about the ones where it doesn't.
        
       ___________________________________________________________________
       (page generated 2024-08-20 23:00 UTC)