[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)