[HN Gopher] When should you give up on a project that doesn't work?
       ___________________________________________________________________
        
       When should you give up on a project that doesn't work?
        
       Author : xmprt
       Score  : 129 points
       Date   : 2024-02-02 18:07 UTC (4 hours ago)
        
 (HTM) web link (www.preethamrn.com)
 (TXT) w3m dump (www.preethamrn.com)
        
       | AdamJacobMuller wrote:
       | Personally, I don't ever give up on projects like this (the one
       | he discussed in the article is a cool idea also).
       | 
       | I work on small projects like this, I get them to a point, I
       | pause. I come back a day or a week or a year later when I need it
       | again (and find it broken) or want to add some feature. Sometimes
       | I hate my code and want to rewrite it from scratch but I try to
       | avoid that impulse as much as I can.
       | 
       | For me the key is to just never think of it as "giving up", I'm
       | just not working on a particular project right now.
        
         | WaxProlix wrote:
         | I agree, and I think the author does too. Note that they said
         | they were "putting it back on the shelf" and were willing to
         | come back to it.
         | 
         | I think distance and time can help with perspective, too. In a
         | number of projects, stepping away (especially during the rat-
         | holing on useless cruft features or w/e sections) and coming
         | back later can help bring some good clarity.
        
           | xmprt wrote:
           | Author here. I think all the buzz that this is getting make
           | me want to give it another shot. I'll probably throw away
           | most of the code and start from scratch though - one thing I
           | learned from programmers much smarter than me is that the
           | first solution is never the best one.
        
             | janalsncm wrote:
             | I don't think you need to throw your code away, I think you
             | need to fix your ranking algorithm. People use Craigslist
             | even though it's got minimal styling. CSS isn't UX.
             | 
             | And to fix your ranking algo you need to understand places
             | more deeply. The core of your product. You mentioned
             | yourself that ranking by page views was flawed.
             | 
             | First of all, it seems that you can probably categorize
             | places into a distinct set of categories. Historical
             | landmarks, locations of past events, locations of ongoing
             | or regular events, buildings for large businesses or
             | government, metro areas (cities, counties, states) etc.
             | Figure out what you actually think is interesting.
             | 
             | Probably don't include a link to Manhattan on your map next
             | to a local business for example.
             | 
             | Choose a city you're not familiar with and figure out if
             | the top links are interesting to you. Tweak your algorithm
             | and check another city. Simple isn't always good, the world
             | is messy and you'll have a lot of edge cases.
        
             | jll29 wrote:
             | Think about the _user_:
             | 
             | Is your use case "I'm a tourist in New York, who would like
             | to learn more about my whereabouts." or "I live in New
             | York, and I would like to be surprised with historic facts
             | about places in my community", or what?
        
           | nonrandomstring wrote:
           | Yeah "the shelf" is where projects go. Never give up.
           | 
           | There's some kinda weird zombie projects though;
           | 
           | Project Deja-Vu: halfway through a new project you have a
           | vague recollection of having done something similar before,
           | and when you search your archives and find exactly what
           | you're working on - even with the same comments (maybe this
           | is an age related thing )
           | 
           | Project "Father give me legs...": Every time you look at it
           | you're overwhelmed with a wave of guilt, memories of broken
           | promises...
           | 
           | Project impossible: It's a brilliant idea, everything works
           | except that one NP-complete quantum-entangled function to
           | send SMS text messages backwards in time to remind yourself
           | not to do something.
        
       | abricq wrote:
       | Writing small, unfinished projects is great ! At least I think
       | so. It's what keeps me passionate. It's a way to learn new things
       | (language, framework, etc...).
       | 
       | I don't like much the phrasing "I give up". How about "I had fun,
       | learned while enjoying it, and now move on to my next unfinished
       | project". Great article though !
        
         | xmprt wrote:
         | Thanks for reading! I came to the same conclusion. I don't see
         | people post about their "failures" enough (although true
         | failures are rare because you can always learn something from
         | them) so I figured this would be a good thing to share.
        
           | abricq wrote:
           | That's true, I guess we see a lot of "success project" and
           | feel ashamed to share our projects with half-started README.
           | But what a great coffee-with-colleague-topic it makes !
        
         | codegeek wrote:
         | I love to do small projects even if they technically don't
         | finish. Sometimes those are useful later down the road when I
         | am working on a bigger project and that little project comes in
         | handy. For example, I just created my own poor man's CMS in Go
         | that processes Markdown to HTML. A while ago, I had played
         | around basic Go library that does that so I just used it easily
         | in my project without needing to spend too much time figuring
         | out that library.
        
           | diggan wrote:
           | Sounds like the general definition of "finish" doesn't match
           | with your own. One could "complete" or "finish" a project if
           | the goal was to learn something specific (or general),
           | although others wouldn't considered it finished unless it was
           | deployed and others use it.
           | 
           | I think lots of us would be better off if we redefined
           | "finish" to basically mean "done", which you can define
           | however you want :)
        
         | RajT88 wrote:
         | This!
         | 
         | I have many unfinished projects.
         | 
         | The goal was not to build a thing - it usually was more an
         | excuse to learn.
         | 
         | Although sometimes it was to build a thing. I once wrote a
         | podcast downloader in powershell because all the ones out there
         | sucked.
        
         | junon wrote:
         | Totally this. This approach is why I'm where I'm at in life, I
         | think.
        
         | tagami wrote:
         | yes, like sketches in art.
        
         | rpastuszak wrote:
         | +100000
         | 
         | Worst case you've learned something new or had fun.
         | 
         | I am yet to regret a single instance when I regretted sharing
         | unfinished, scrappy work:
         | 
         | https://untested.sonnet.io/Share+your+unfinished%2C+scrappy+...
         | 
         | One approach I really liked was the 2/2/2 rule:
         | 
         | 2 hours for a poc - does this even make sense?
         | 
         | 2 days for a prototype to share with friends
         | 
         | 2 weeks to build something useful (paid if your goal is to
         | charge for it)
         | 
         | You can leave the process at any stage. Each stage teaches you
         | something new.
        
           | abricq wrote:
           | Bless your mess !
        
             | rpastuszak wrote:
             | Haha thanks for reading!
        
           | el_benhameen wrote:
           | Wow, I really like that rule. I'll often discourage myself
           | from playing with a POC because of how nebulous the timeline
           | can feel. I'm going to this that next time.
        
             | baq wrote:
             | With LLMs nowadays getting a PoC banged out in a couple
             | hours is easier than ever. The things make boilerplate and
             | you can focus on the value.
        
         | alkonaut wrote:
         | This. I have done this for 30 years and never, ever thought
         | about a side project "this could be a commercial success".
         | 
         | What's described here is a lot further along than I normally
         | take a project.
         | 
         | There is always a more interesting project to make that has no
         | potential of being "successful" than the most interesting idea
         | among potentially successful projects.
         | 
         | I think for some people the entrepreneurial angle _itself_ is
         | enough to make a project attractive. But I never quite
         | understood it.
        
           | JJMcJ wrote:
           | > "this could be a commercial success"
           | 
           | Someday maybe, but if not, that's fine anyway because I
           | learned something and had some fun.
        
           | gertlex wrote:
           | I also never ponder personal projects from a commercial
           | standpoint. But I sure see that narrative here on HN
           | frequently.
           | 
           | I have to conclude that most people on HN talking about
           | commercializing are doing purely software projects.
           | 
           | My projects very often include hardware. Commercializing
           | hardware+software projects is hard... orders of magnitude
           | harder than just software. That's probably a factor in why
           | the idea of making money from
           | wiring/soldering/dremeling/hacking things is so far from the
           | forefront of my mind.
           | 
           | As for what's attractive... novelty and usability/street cred
           | do seem to be my subconcious goals. "Street cred" or even
           | just aspiring to have people use a software tool is certainly
           | a form of non-profitable entrepreneurship.
        
           | imhoguy wrote:
           | "commercial success",
           | 
           | I think it is a common dream of escaping 9-5 worklife. I find
           | myself trapped in that quite often, trading fun for
           | possibility of financial independence.
        
         | TheCaptain4815 wrote:
         | Same here for physical "ideas"/ecommerce stuff. By constantly
         | "failing", I've gotten very efficient at knowing whether an
         | idea or product is worth attempting.
         | 
         | I will say there is a certain charm to being ignorant that I've
         | seen bring people success (including myself). I've attempted
         | ambitious SEO projects when I was less experienced and
         | succeeded, and looking back in hindsight they were pretty crazy
         | given the success odds.
        
         | forgotmypw17 wrote:
         | I liked how Sid Meier put it in an interview:
         | 
         | > Our philosophy is to find the fun first and do a lot of
         | prototyping and a lot of iterating very early on. There are
         | probably more projects that I've worked on that haven't turned
         | into final games than have.
         | 
         | > We have ideas. We have prototypes. We spend a lot of time
         | trying out ideas. Probably two-thirds of them don't end up
         | going anywhere, but experimenting with those kinds of things is
         | fun.
         | 
         | To answer the OP question, I can't find the interview I was
         | looking for now, but I remember that he said that he stops
         | working on a prototype when he realizes that he's learned
         | enough from it.
        
         | Verdex wrote:
         | I think unfinished projects are important. On a personal level,
         | I've had many unfinished projects that felt (at the time) like
         | failures. At one point in time, I had two different ideas for
         | parse libraries that I had to give up on because I couldn't
         | figure out how to make them work in a way that was remotely
         | useful. However, a few years later, I was able to create a
         | third, otherwise unrelated, project that I realized I could use
         | to unify the previous two.
         | 
         | If you're not running into situations where you have to put
         | away a project as unfinished then it might mean that you're not
         | pushing yourself to and beyond your capabilities (which,
         | depending on your goals, can be totally fine). And just because
         | something ends up unfinished, doesn't mean that it might not be
         | able to come back later in a different form.
        
         | Madmallard wrote:
         | I think these are necessary pre-requisites to larger projects
         | that you may try to bring to market. If it's too daunting and
         | you can't ever finish then the reality is you're probably not
         | yet competent enough. Hayao Miyazaki went through thousands of
         | unfinished short stories and Manga before working at Toei and
         | other studios then he finally developed enough confidence and
         | competence and started hitting homeruns later. It wouldn't have
         | happened without that prior buildup over decades.
        
         | szundi wrote:
         | I have spent my middle and high-school years writing about 1000
         | games. Literally. Most of them I just stopped when the
         | interesting part was done. I have kind of finished like 5-6 at
         | all.
         | 
         | Best time of my life.
         | 
         | Also sometimes wrote (finished) software for companies as a
         | freelancer.
         | 
         | Then I finished high-school and started uni where my startup
         | was founded with a friend. I had a successful exit lately.
        
       | zitterbewegung wrote:
       | Well before giving up try to pivot it into something but having
       | one unfinished projects are a really good way to learn something
       | new.
        
       | encoderer wrote:
       | I'll be blunt. You were being a perfectionist. That is a
       | guaranteed way to kill momentum and ensure you never have any
       | fun.
       | 
       | So the algorithm wasn't great and the map was slow. Rome wasn't
       | built in a day. I get it, you have a vision in your head for how
       | you want it to work and it wasn't there yet. But this is actually
       | a psychology problem and not a project problem.
        
         | cellularmitosis wrote:
         | I was about to say, it loaded pretty quickly and I found two
         | interesting places right around the corner from where I live.
         | If this is a "failure", I'd hate to hear how he classifies my
         | personal projects...
        
       | 303uru wrote:
       | In this instance, I'm not sure why the author is giving up.
       | 
       | That said, I do find in industry it's worth knowing how and when
       | to kill a project. I always push for the creation of a kill list
       | when ideation begins.
        
       | precommunicator wrote:
       | OsmAnd has this feature
        
       | sackfield wrote:
       | I think its usually when the project becomes a burden (the author
       | notes as such in the conclusion), this is a bit simplistic as
       | sometimes you just have to push past this to get somewhere, but
       | if its a hobby project it should bring you some joy. When you see
       | yourself doing fake productivity its bad news.
       | 
       | I also find that sometimes I will scope tasks too big, take too
       | long to finish them and get demotivated, if I break them up
       | further I can keep momentum (even if the breakup is during the
       | original task).
       | 
       | Having said that I don't think giving up is necessarily a failure
       | case that people think it is, I often take a lot of learnings
       | after attempting to do very ambitious projects that I eventually
       | scrap, but the learnings stay with me.
        
       | velcrovan wrote:
       | OK so they gave up after one month of tinkering because "the
       | hypothesis was wrong". Was it though?
       | 
       | The hypothesis was "if you could drag around a map to search for
       | articles nearby and sort them by pageviews it would be more fun
       | and could potentially help with vacation planning."
       | 
       | After one month they realized it would be harder than they
       | thought. They had a clear idea of how to proceed, but just didn't
       | want to do it. That's totally fine, but the original hypothesis
       | was not really tested here.
        
         | janalsncm wrote:
         | You don't even need a map UI to test the ranking algorithm. At
         | least, simply sorting by page views is probably not ideal. Some
         | recency bias would be useful.
        
         | quickthrower2 wrote:
         | I did skim, but I got the impression it was tested as a NO
         | because of all the irrelevant articles (whole city pages, death
         | of Epstein etc. )
         | 
         | This is the scraping tarpit! And why I avoid scraping projects.
         | Even if there is a nice api it is still like a scraping project
         | as there is tonnes of raw crap to deal with and categorise.
         | 
         | Machine learning might help. Not necessarily a LLM but could
         | just use attention architecture to predict yes/no relevant or
         | irrelevant, maybe.
        
       | jncfhnb wrote:
       | > I think the biggest takeaway from this is that if something is
       | worth building, you'll know right away. A barely functional
       | prototype from another project I worked on almost 4 years ago got
       | over 1000 upvotes on Reddit in a day just based off of a gif.
       | 
       | I like the rest but I think this is very wrong.
       | 
       | It's very easy to simply imagine your idea is good and will be
       | good if well executed. This is especially true in games.
        
       | semireg wrote:
       | When learning why it's gone wrong has gone cold.
        
         | csours wrote:
         | I agree: when you've stopped learning.
        
       | janalsncm wrote:
       | For OP, maybe he could've simplified the problem to test it.
       | Limit your articles to ones about one city only. Cache all of the
       | links on your machine. There's only 6 million English articles on
       | Wikipedia anyways, and you can download a dump to play with.
       | 
       | If the limiting factor becomes your radius of articles, you know
       | you're on the right track.
       | 
       | Sometimes a prototype takes longer than a couple of days to build
       | out. That's ok too. I've been working on a prototype for the last
       | 6 months but I enjoy the problem.
        
       | y04nn wrote:
       | > and many of the prominent articles that showed up were things
       | like YouTube headquarters shooting" and "Death of Jeffrey
       | Epstein" while more interesting places like "Pittock Mansion" and
       | "Ghirardelli Square" were hard to come by.
       | 
       | I had a very similar project idea few years ago, but I was going
       | to use wikitravel.org as the source of data.
        
       | m3kw9 wrote:
       | There's no answer to "when you should give up" even in the case
       | where you say you are gonna make the next Facebook, who's to say
       | you should give up? You give up when you give up and you learn
       | about yourself so the next time you can make better judgement.
       | 
       | I do think sometimes it helps to finish a project and ship, you
       | can be surprised that your internal dialog is different than what
       | others think when they use it
        
       | intrasight wrote:
       | We spend our lifetimes on projects that won't work in the long-
       | term.
        
       | mittermayr wrote:
       | As someone who also makes these kinds of things all the time
       | (sometimes it works, most of the time it does not) -- let me just
       | thank you for the "fake productivity" angle you highlighted. I am
       | right in the middle of one of those, pushing the launch further
       | out, yet again, and reading your article made that crisp and
       | clear (in my case: changing from SQlite back to MySQL, from JWT
       | via Auth Header to JWT via Cookies, etc.).
       | 
       | I also wanted to mention that clearly knowing the hypothesis to
       | test for at the very beginning isn't all that easy, in my
       | opinion. A lot of the time, you need to walk down the path, even
       | walk it for a good long while, until you hit the right angle or
       | context to truly see where the project could land. You
       | (hopefully) start these things with a "good enough" reason, but
       | it often needs a lot of shaping and refining to get it all back
       | into the light, for a wider audience.
       | 
       | Curiosity in learning new things will (should) always be a good
       | part of what fuels the effort, it's a safety net (for me as a
       | developer anyway), shielding me a bit from ending up with purely
       | wasted time once it's clear that it didn't lead anywhere. At
       | least I learned something new along the way.
        
       | dmitrybrant wrote:
       | Very cool prototype, and a very interesting idea to sort nearby
       | Wikipedia articles by number of pageviews.
       | 
       | Just a note that the Wikipedia app for iOS does in fact have a
       | map with nearby articles, and we will soon bring the feature
       | (back) to the Android version.
        
       | santoshalper wrote:
       | As soon as you know it won't work. Of course, that's the hard
       | part. The level of near-delusion required to get something off
       | the ground makes it very difficult to know when to let go.
        
       | yuppiepuppie wrote:
       | I must be missing something... wikipedias app on my iPhone does
       | have search by location feature. Is the author talking about this
       | missing feature on android perhaps?
        
       | jll29 wrote:
       | You may just call it "put on hold indefinitely until I feel
       | picking it up again."
        
         | arminiusreturns wrote:
         | Or as I do it: "This is now part of my uber-mega-big catch-all
         | project"
         | 
         | Which is the same thing really, but now my uber-mega-big catch
         | all project has more junk to sift through when I do eventually
         | get to revisiting that sector.
        
       | cmgriffing wrote:
       | CommitStrip has an awesome comic about this exact process.
       | 
       | https://www.commitstrip.com/en/2014/11/25/west-side-project-...?
       | 
       | Shameless plug, I made a YouTube video that points out a bit of
       | nuance that the comic doesn't explicitly point out.
       | 
       | https://www.youtube.com/watch?v=-L37U81MunM
        
       | Animats wrote:
       | This isn't a project that doesn't work. It's a project that
       | doesn't _attract users_. Different problem.
        
       | garrickvanburen wrote:
       | I just wrote about this in for my Substack "For Starters".
       | 
       | https://forstarters.substack.com/p/for-starters-14-when-do-w...
       | 
       | TLDR; If you're asking the question - you should probably stop.
       | If you're still unsure, set some specific, short-term measures of
       | success and stop immediately when you don't achieve them.
        
       | GoodUser77 wrote:
       | Just transform your project to something new and better good luck
        
       | stevage wrote:
       | Seems like a lot of unnecessary self flagellation for a side
       | project that mostly worked.
        
       | whartung wrote:
       | Arguably, all I have are a bunch of unfinished projects.
       | 
       | Some are just "on hold", the subject still interests me, though
       | the passion has dwindled.
       | 
       | Some are just dead, they served their purpose.
       | 
       | Some are "in production", in that I use them but don't "work on
       | them". They're good enough.
       | 
       | Back in the day, we were using a tool that facilitated rapid
       | iteration and development. The premise (way before any of this
       | stuff became really fad-ish) was to get the customer involved.
       | Fast results, early demonstrations, fast feedback. You know the
       | drill.
       | 
       | But the key take away was the analogy he promoted. Simply "it's
       | one thing to have sheet music, it's another to hear it". The
       | premise being you can write the music all you want with notes and
       | staves and what not, but it's not real until you hear it.
       | 
       | And, I don't know anything about music, so I can't speak to how
       | actually writing music works for folks. But the point was made.
       | You can make all the slide shows you want, but running code,
       | hands on experience speaks volumes more than shouting at each
       | other in a room with a whiteboard.
       | 
       | Of course, like everything, it's nuanced. But the point is made.
       | 
       | Recently, my friend had a need, and we came up with a pretty cool
       | database type of system. No reason to go into details, but it was
       | pretty cool, we came up with some great concepts, we thought
       | through some hard problems, we started pounding out code, wrote
       | up a nice rough draft of the query language.
       | 
       | In the end though, we felt that we were working on a trap with no
       | mouse. The need wasn't that great. So we shelved it. We were
       | close, but not quite to the most minimal MVP. To prove the core
       | tenet. But, even close we felt it wasn't worth pursuing.
       | 
       | So, we stopped, and really haven't looked back.
       | 
       | And there's nothing wrong with that. Learn, move on.
       | 
       | That said, it behooves to make honest appraisal of why something
       | is being stopped. Sometimes, and it's hard to tell when, but
       | sometimes it's worth pushing through whatever barrier has come up
       | and push on. Maybe with a little more work, you'll find that
       | whatever was stopping you was surpassed and is no longer holding
       | you back. Perhaps some new wind will fill your sails.
        
       | kibitzor wrote:
       | A similar project to what the author worked on is "WikiShootMe"
       | [0] that finds Wikipedia photos near you (green/yellow/blue), and
       | needed (red) on a map. This was discussed here 2 years ago [1].
       | 
       | [0] https://wikishootme.toolforge.org/ [1]
       | https://news.ycombinator.com/item?id=31575909
        
       ___________________________________________________________________
       (page generated 2024-02-02 23:00 UTC)