Hacker News new | past | comments | ask | show | jobs | submit login
Finish your projects (github.com/readme)
513 points by aarondf on June 13, 2023 | hide | past | favorite | 230 comments



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.


When I read Meditations by Marcus Aurelius, the book was written in second person point of view (using you/your vs I/my or they/theirs).

It sounded like the former emperor was talking directly to me, but later I found he was writing to himself. He never intended for his works to be published.

With that in mind, it may be possible the blogger, Aaron Francis, in this case is also speaking to himself.


As an aside, when I see people beat themselves up for not being able to face their struggles with the stoic reflection of Marcus Aurelius, I want to remind them that unlike them, Mr Aurelius was extremely wealthy, one of the most powerful men in the world, and absolutely blasted on opium for most of his day.


That sounds like it would complicate life, not make it easier? His wealth and power is predicated on him being the leader of the friggin’ Roman Empire. I don’t see that as an easy life.

Being an emperor and even trying to do a good job is damn near impossible in my eyes. Lot of respect for that. My tiny life sometimes overwhelms me already.


> My tiny life sometimes overwhelms me already.

Because you (presumably) have to deal with every tiny thing in your life. Even having to buy and cook food can feel overwhelming when you’re busy trying to accomplish other things.

Marcus Aurelius had slaves. He was the emperor. He did not have to worry about the multitude of minutiae required just to continue to exist.

When it seems to you rich people are able to achieve more, remember that’s because they need to do less. If you did not have to think about basic necessities, you too could do more of what you dream about.


No, because I am less capable. It’s sometimes simple like that.

He wasn’t “rich people” like some Russian oligarch. He had shit to do and deep moral obligations. Millions of lives depended on it. Things of vast strategic importance stretching both thousands of miles and many decades.

Slaves don’t manage your long term ambitions and juggle your various mental and moral anguishes. They keep your house clean and provide you with food, sure. But to be honest, as a rich Westerner, I’m not too far off that.

He didn’t dream about standing knees deep in foreign horse shit managing the nitty gritty of brutal wars for the continued existence of an empire that looked solely at you.

All this could be handled with great nonchalance and incompetency which would have made his life relatively easy. But he decided to try and do a good job, now that’s something to take serious.

I get that “rich people” have some leverage, but this is another thing altogether.


> No, because I am less capable

You know yourself better than I, obviously, but if you're assuming that because your path differs from theirs, I think you should have some doubt that the difference is because you are less capable. It may be that you have different values.


While I believe in equal value of human life, I don't think we are in any way equal in abilities both inborn and acquired. People like Aurelius are rare and dismissing him and his accomplishments as "rich people have it easy" doesn't do justice to both his skills and rather significant sacrifices. More importantly, it absolves us from taking a look at ourselves and the state of our lives.

He seems to have resisted, or rather, his particular ethical framework provided the power to resist two very big and very real problems:

"Mo money mo problems" (~Socrates)

"Power corrupts; absolute power corrupts absolutely" (~Shania Twain)


> I don't think we are in any way equal in abilities both inborn and acquired.

Well, sure, I didn't say anything that disagrees with that at all. But you phrased it in a more general sense of being less capable.

Perhaps I read it wrong, but that didn't sound like you were saying "I'm less capable at X", rather that you were saying you were less capable in general. That was the sentiment I was pushing back on.

And I wasn't even saying that assessment was wrong. I was just saying that it's the sort of sentiment that can easily come from incorrectly underestimating one's self and so deserves a deeper look.


Ah, I see. Thanks for the clarification. I was going for “less capable at X”, but an emperor is quite a big job so he’s better at 75% of things that actually matter in practical life: planning, strategizing, managing, coercing, negotiating.

He was a fine emperor, but I have my specialties. Also, I have a good simple life for which I am grateful. Being an emperor sucks.



I believe he was making a pretty decent joke there. At least, I'm pretty sure he knew that Socrates didn't literally say "Mo money mo problems", either.


> I'm pretty sure he knew that Socrates didn't literally say "Mo money mo problems"

This is cracking me up, thanks.


Managing people is a lot more complicated than you seem to realize


When Marcus Aurelius' status gets mentioned as a counterpoint to his philosophy, I like to remind people of Epictetus, which, born a slave, arguably lived the very opposite life of Aurelius and still ended up with a similar outlook on life.


I didn't know about the opium. He mentioned not getting addicted to things in the book. I bet he was talking about all of the things he had done wrong in his life. Do what I say not what I do.


Romans didn't consider opium an addiction as much as a medicine. Same as many of the drugs we now consider illicit. Marcus Aurelius was taking opium every day for "stomach issues" (krohns or similar perhaps?) and "nerves".


Interesting. Like how people are absolutely juiced to the gills on caffeine these days, riding a stimulant Shai Hulud across the sands of time.


Caffeine though really is a jackpot for humanity, it has realistically speaking no negative side effects.

Even serious physical symptoms from withdrawal are basically just a week of headaches and other minor things.


> it has realistically speaking no negative side effects.

Realistically speaking, that's not true. I did some voluntary experiments on myself during Ph.D. corrections process and, besides resistance, when coupled with a lot of hard work for a prolonged time, it's certainly very unhealthy for the body.

If you regulate your consumption and pair it with good sleep, it's a boon. Otherwise, it's a slow-killing drug.


From most studies I saw, moderate consumption (<=~3 cups of coffee) has no long term negative health effect.

Could you expand on what you found and what were the specifics?


I think moderate consumption is a function of tolerance and the specific metabolism of the person combined. I remember reading a comment in HN, where the commenter had a genetic trait which slowed caffeine metabolism by 4 times. So, he had it inside his system 4 times longer, and caffeine had no positive effect on him. However, let's not digress.

I'm not a body hacker, and I don't like to mess with my body much, however I had limited time, this was once in a lifetime situation, so I had to put some regular hours to finish my Ph.D. corrections.

Also, it's worth noting that I'm an avid black tea drinker since 6 or so. I didn't change my tea consumption habits through my life.

First, I read about resetting caffeine resistance/dependence. The method is simple and clear: "Give up coffee for a week. You'll have headaches in day 3-4. Endure. You'll be fine". Then I started to consume coffee to the point where I felt productive, yet not tipsy. I have a Starbucks mug, it's "Tall" in Starbucks parlance. I started with two cups. One morning, one after lunch. As the resistance built up, I started to increase in a controlled manner, to the same line. Productive, but not tipsy. I was putting 10-12 Pomodoros a day (250+ minutes of truly deep work), and my mind was mushy and tired everyday at ~5PM. I never pushed my body beyond that point, because I needed that brain tomorrow. Left my desk and got rest.

I finished everything on time, left coffee for ~3 months, had the headache on day 4, alleviated with 2 sips of coffee that day.

As of today, I drink half a "Tall" every day, and feels enough. If it's too stressful, I also drink another half on the other half of the day, and these are my findings about my body.

Considering I'm not in "battle mode", I can really work well with half a mug of coffee/day.

Coffee shorts my hunger regulation and appetite, and makes me lean to sugar. That's not good. Considering my brain has less brakes and way higher idle than most people (per my doctor's words), this is double bad. So regulating coffee has a net positive effect on everything.

I can reliably build and reset coffee reliance/resistance now, since I know how my body reacts to caffeine.

I always think 10-12 hours ahead since it's caffeine's life in your body. Will I be awake 10 hours later, or will I be battling against caffeine to sleep? This is important for me.

Coffees with mild/mild-high caffeine concentrations works best for me. I don't like high-caffeine or ultra-caffeinated coffees. They make me tipsy causes heart palpitations and creates stress for no reason.

Black tea is a good aid for sustaining my focus. It improves focus, but doesn't create the same stress on my body. I can almost drink infinite amount of coffee until 2 hours before sleep, and it'll keep me collected and focused. What I live is it doesn't create an illusion of being not-tired by priming the body, so I can reliably feel how tired I am and plan accordingly.

Hope this helps, and please don't hesitate to ask for further specifics.


Perhaps you know if this makes any sense or if it's just a personal impression of mine.

I started taking coffee at 20, for some two or three years, I later started taking black tea instead. One teaspoon of Twinnings Earl Grey, to be precise.

Thing is, by any calculation I do, a cup of coffee ought to have more caffeine in it than the cup of tea. Especially since I sometimes had not one, but two cups of coffee back then. I can still do this, if I'm travelling or I spend the day outside for some reason I'd rather take coffee than tea.

Problem is, tea wrecks my sleep in a way coffee just doesn't. It feels as if tea stays with me way, way longer than coffee does. If I ever take more than one cup of tea in a day I know that I'll be feeling it the next day, maybe even the day after, whereas with coffee, as long as I don't take it too late in the day I'm largely ok. Sleep does worsen somewhat but nothing I can't manage.

It puzzles me, since as far as I know it's caffeine in both cases, I don't understand why my metabolism seems to act in such a different way.


> Black tea is a good aid for sustaining my focus. It improves focus, but doesn't create the same stress on my body.

Black tea contains 30–90 mg of caffeine per cup (and some theobromine and theophylline, which are similar to caffeine, and also stimulants.) Giving up coffee because of the caffeine but dinking black tea instead is self-defeating.


I'm aware, but as some studies [0], and my body, shows, their effects are not similar. Black tea doesn't make me tense and causes heart palpitations for me. Instead, I keep my calm and being able to focus.

I don't reduce coffee because of caffeine, but because it affects my appetite, makes me tense when I drink too much, and causes heart palpitations and makes me uncomfortable. Black tea doesn't do any of that.

[0]: http://apjcn.nhri.org.tw/server/apjcn/17/s1/167.pdf


Have you ever tried Yerba Mate? If so, what do you think about it? I have found it to be similar to green tea and its derivatives, but it seems to have has less pronounced physical effects -- especially compared to coffee.


It doesn't come with many positives. It steals energy from later in the day for now. Potentially leaving you an over stimulated wreck. And the level at which you notice is higher than it should be for you to dial in the optimum amount.

Much like nicotine, it fools the user into thinking the cessation of withdrawal is part of the positive effect, rather than just removing a negative you wouldn't have if not for caffeine dependence.


Coffee's great, but sometimes I wish I could route the increased number of calls from Mother Nature to a voice machine.


Disrupted sleep, lack of REM sleep, poor attentiveness, …


That is very dependent on the consumed quantity, and the time of consumption.

And is nothing compared to the next most frequently used drugs, alcohol and nicotine, hell it has plenty of positive effects.

So my initial statement I believe still stands that humanity could hardly happen upon another substance that they could use in such a huge amounts with minimal negatives.


You could say the same thing for most amphetamines.

I don't think caffeine is particularly harmful, but it is a huge stretch to paint it as purely beneficial and without side effects. As a point of fact most people getting their "morning jolt" are just treating the side effects of extended caffeine usage - they are physically addicted.

About once a year I spend a month doing no caffeine. Every single year it is quite illuminating to do through first withdrawal and then to experience the first cup of coffee. I recommend it, and you might change some of your thoughts on caffeine if you do this.


FWIW, I kept reading it affects deep sleep, not rem.


only if it has an effect on you, I tried it many times and the only effect it seems to have on me is the bitter taste and heart palpitations if I drink too much of it.

if I'm tired or sleepy and drink it, I'm still tired/sleepy but with a higher blood pressure/heart rate.

sometimes I wonder if it's just people that oversell the effect of coffee.


You might be like me and apparently 1/5th of the human population doesn't really feel the effects of caffeine. Basically goes in and out of your system without 'proper processing'. Been years since I read about it, so things might have become more clear.

I can drink coffee/red bull all day and it'll do very little. Can drink just before going to bed and sleep just fine.

I'll try to find the study on this again if you're interested.


Some coffees with high caffeine have this effect on me as well. I find that different brands of coffees have very different effects on me, I can even get a good coffee feeling from some decafs. I'm convinced it's the other alkaloids in there besides caffeine that I like


Many people have a sleep problem disguised as a caffeine problem. Also many people have a caffeine problem disguised as a sleep problem.

Taken now and then, sure, probably worth it. The part in which a lot of people's brains are seemingly unable to wake up without taking caffeine? Probably not good.


> The part in which a lot of people's brains are seemingly unable to wake up without taking caffeine

That’s very likely just placebo/power of habits, similarly to many people can’t go to sleep without brushing their teeth.


I don't have a sleep problem, i have a Qwitzatteracht problem. This golf game is simply addictive.


Is it known what the dosage would have been? I read elsewhere before that though they drank wine all the time, its alcohol content was very low compared to today.


Sword of Damocles is a bitch and a half. Access to infinite pleasure is ineffective in the face of paranoia and misery since they don't cancel eachother out i.e they are not collinear vectors in mind-space.

Having access to Aurelius' cleaned up mind chatter is a blessing.


It's me. I am that blogger.

You're 100% right and weirdly, that did not occur to me until today. Insightful comment!


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!


> 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.


> 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.


> 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.

I have no idea what you are talking about. My comment is on the same topic as the head of the thread, and provides more details on that original critique.


I stand by my original assessment. I am not seeing a connection between 'the use of 'you' vs 'I' personalization and the effectiveness of the difference in using them' and 'a request to investigate a logical fallacy and the relevance of such fallacy to the article'.


And I stand by my original response: I have no idea what you're talking about.


I think their point makes a lot of sense, although they could have been less aggressive about it.

Your reply, while interesting, would work better as a standalone comment and doesn't really relate to the thread.


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)


> I mean, if you never ship you're literally the kind of person who doesn't ship though

This is a bit of an "argument from extremes" fallacy. If you don't ship 90% of what you work on, but do ship the remaining 10%, then that may well not only be fine, but optimal.

My point is that saying to yourself "Every time you don't release a project, you're telling yourself that you’re the kind of person who doesn't ship." is a faulty belief. There's a whole spectrum between releasing everything and releasing nothing. Some people like myself start a lot of things (big and small), and there is no practical way to finish all of them - life is simply not long enough. For such people, not finishing 80-90% of those projects and focusing on a few that seem to have higher value is the way to go. Such a person should not (and hopefully does not) tell themselves that "they're the kind of person that doesn't ship." If they do tell themselves that, the solution isn't to start shipping everything they start, but to change their internal monologue.

I strongly recommend you get to know intricately the lives of successful creators. The majority have more projects unfinished than finished.


I recognize the author’s argument from the Atomic Habits books — inner motivation heavily stems from the picture of self.

The example used in the book (there used for stopping negative habits) was that of smoking. A smoker that is looking to quit goes out with a colleague for a smoke break, and the colleague offers him one. If he refuses by saying “I don’t smoke now/I’m trying to quit”, he will much more likely not be able to quit his addiction. But if he answers with “I’m not a smoker”, he is on a good path.

It was a really eye opening part of that book for me - people’s view of themselves recursively depends on past experiences/facts and inner motivations. If we do (or don’t do in case of smoking) something a lot of time we can accept it as our new selves, and vice versa.


Of course I do not ship a lot of personal projects. That’s why they’re personal.

I have enough to ship in my day job. Not shipping my personal projects is my prerogative.


Of course that's your prerogative, but their claim still holds true. If you never ship your own projects, you're still a person that never ships.

What you do at your day job doesn't matter, (unless you work for yourself), if you ship while at work, your work is a place that ships. Not you.


> What you do at your day job doesn't matter, (unless you work for yourself), if you ship while at work, your work is a place that ships. Not you.

Naw, this is just a toxic take.

A project is a project, whether it's a solo one or collaborative. Whether it's "personal" or professional. 99.9999% of software that actually gets widely used (because it's useful to many people) has more than 1 coder, and arbitrarily deciding that the only "real" coding you can claim to is unpaid solo coding is a weird gate to keep.

Does the Sistine Chapel not make Michelangelo "someone who completes paintings" because he was doing paid work for the Vatican? Please.


Don’t worry, there’s no conflict there. We don’t ship at my day job either ;)

But really my point was that you can still derive a lot of satisfaction from a project without shipping it.


Absolutely!


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.


Understanding the sunk cost fallacy and having an opinion like the authors are not mutually exclusive. It doesn’t always apply and shouldn’t be used as an excuse to abandon whatever one feels like without guilt.


> It doesn’t always apply and shouldn’t be used as an excuse to abandon whatever one feels like without guilt.

Unless you made commitments to others, one should never feel guilt for not finishing a project.

Something I learned in my 20's: Guilt is one of worst long term motivators, and almost never yields anything positive. It's why those who guilt trip others are best avoided.


And applying sunk cost fallacy indiscriminately can itself be fallacious as the rewards may be so unpredictable or intangible as to elude simple calculus


IMO, your post is spot on. Grinding out the last 10% of the boring details while fear starts creeping in and new ideas surface to distract you is exactly what I’ve felt.

You’ve codified this in a way that I feel like I can begin to manage it better. Really great post. I’ll incorporate this one into my life going forward.


I don’t know.

In video games which I personally know, “make games that are fun to make not to play.”

The polish and marketing of a thing is always done better by bigger budgets which you don’t have. The math the article is missing is that shipping something polished and boring is only possible because you valued your time at zero. So even if you find success, an honest accounting could wind up making your ROI negative.

Indeed I’ve gotten out of so many worse situations by quitting early and getting my life back compared to the colleagues I left behind. It was never worth the chance to ship something that would have never found an audience anyway. This is especially true of people doing startups, they are doing psychological warfare against themselves and shrouding the reality that they have already failed and will have learned little by spending 4 years on something compared to 1.


To me, this sounds like you’re deluding yourself. You’re convinced that each time you’ve given up was a good idea in hindsight? Is this the case sir?


Thank you for letting me know, that's encouraging for me to hear. Good luck!


One thing we should do while we’re configuring oauth consent screens, verifying domains, and other 10% drudgery is tell ourselves we’re building reusable infrastructure or at least obtaining the knowhow to do so.


Are young people these days mentally so weak and fragile, and everyone has to be politically correct all the time so that we don’t break their fragile hearts? If you intent to finish and released the product and you fail to do so, is there a need to sugar coat it so that you feel better . You shouldn’t feel better by lying to yourself. This is how you learn and improve as a person . Accept pain .


> Accept pain.

Now this is something I can get behind (:

But for the rest, I think we are not on the same page w/regard to most of what I was trying to say.

I guess you took my text to mean we should all tiptoe around everyone else's feelings all the time, to the point of absurdity ­— everyone gets a participation trophy, and nobody is allowed to acknowledge harsh reality, etc.

I actually come from the other direction: failure is real, pain is common, so why add more to that pile for others? Why give people more reasons to feel bad about themselves through some choice of words?

I suppose there's some aspect of "I waded through shit to get where I am, so you should too — it'll be good for you", and that seems ... off, to me. We are all wading through shit all the time already. Different kinds for different people. So maybe throw a rope from time to time, if you've got one.

---

Aside: I don't think this is about young people these days, or political-correctness. This is about having empathy and broader perspective.


I think you misunderstand. Unconditional self-love isn't about pain avoidance. It's about accepting the pain as a function of ego and learning from it without turning it into self-flagellation or internalizing it as a function of identity.


> 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.

This will only cater for people who don't automatically apply that filter. I'd say for most people the article won't stream directly into their consciousness as fact, and they will be applying caveats already.


Agreed that most people have some thickness to their skin already, so to speak. And communication styles vary, of course.

But I do think there's something to be said for the sort of culture we want to foster. If one blogger writes something a bit one-sided or pushy, then no big deal. But if lots of them do, or most of them, then it starts to affect what we consider normal. Personally, I'd rather we don't normalize the self-flagellation approach to progress, or at least be pretty careful about it (see another comment about "healthy masochism").

If everybody is in on the game, then it can work (eg: I enjoy talking shit with friends, because we all know we're friends), but in a public forum that's harder to be sure of. I almost feel like being a giant asshole (Linus Torvalds?) is better in this space, since it's so over-the-top obvious and people can easily reject it if they don't like it. But when it's more subtle, the risk is that some small cumulative effect nudges people to actually feel bad about themselves, even if just a little bit, spread so thin it's hard to measure.

But anyway, it's a small point; I only wish the 1-ton weight were moved 1cm to the left, or so. Sometimes I write too much text about too small a topic, and it comes across overblown (:


Haha not overblown - I wouldn't worry too much.

I would just say that this is a link, and not from inside the HN community, so it's not a cultural issue as such. I think it's possible to try and enforce a monoculture internally, but enforcing it on what links get posted might be difficult.


Aren’t you kinda telling someone how they should write a post? Even though you start writing most sentences with I, it comes off as what they should rather do.

Which, you know, is fine. I would maybe have {insert similar advice here} :)

Actually I do have a contribution, inspired I think by _why. Rather than telling them how to write, just write. I don’t do that enough myself.

On writing, I think strong points often get through better. Challenge people. They’re adults, they can consider if it applies to them or not.

On completion, for those who have difficulty achieving self love, achieving small completed projects is nearer “fake it till you make it”. It’s easier, actions and thoughts and beliefs impact each other. You can start with any of them, but some might find it easier to start with actions.


> Aren’t you kinda telling someone how they should write a post?

Well, it is not my intent, but I take your meaning (:

I suppose I do draw some fuzzy line between presenting someone with information or perspective, which they may or may not choose to internalize, and telling someone what to do. It's a struggle: I want to share and try to be helpful, but I don't want to be evangelical about it. Likewise, there's challenging people, and there's used-car-salesman-ing them (or so).

Certainly, there are lots of different personalities banging around in the world, and anyone trying to learn has to develop some resilience to the various ways people communicate. But I guess for my part, I do gently advocate for a more gentle approach. I respect if you find "strong" (forceful?) points to be better, though. In my mind, not everyone I talk to is fully an adult (hell, myself included).

I'm reminded a little bit of some East/West cultural differences that come up, sometimes. In the West, we say "the squeaky wheel gets the oil" (i.e. being loud/pushy is rewarded) and in the East it's "the tallest blade of grass gets cut down first." In the West, argumentation follows a "I'm right, you're wrong; here's why..." adversarial approach, while in the East, it's "You're right, but I am right in an even broader sense..." Obviously I'm grossly generalizing, but you get the idea.

But anyway, thank you for your counterpoints. It's a topic that interests me.

(Aside: I don't mean to imply that you or the OP are being used-car-salesman-y; just staking out some points of reference in this many-dimensional space we're discussing :)


With you on finding balance and considered points. That’s my instinct in general. However (and feel free to see if this lands with you) I think I’ve found that the ones that work are super direct. For example, Joel Spolsky had absolutely confident articles that might or might not be perfectly correct for all situations (eg “Things you should never do, part 1”), but the confidence means there is one message in one article. I consider that article a principle to balance against other principles. But it’s not written as if it should be balanced and that probably made it more successful.

https://www.joelonsoftware.com/2000/04/06/things-you-should-...


Yes, I'm more than a little allergic to that sort of tone as well. But I take it more as he's saying out loud what he says to himself for motivation.

These are things that are important to him. His advice and tone may be of use to others who share his values. Those that don't should feel perfectly fine with ignoring him or (better) reinterpreting what he's saying so it better aligns with their own set of values.


> 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.

It took me a while to realize this, but it's the only way I want to live my life. Terrorizing myself through my ego was a retardedly pointless mental preset, and I'm very grateful I changed it.


In the end value of person is in what they do. If you can't constantly ship anything, you have a problem you need to solve. Painful, but you shouldn't sugarcoat it.


Agreed. Be forgiving, also towards yourself.


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.


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.


Reminds me of this New Yorker piece about the death of a well-known Sherlock Holmes researcher: https://www.newyorker.com/magazine/2004/12/13/mysterious-cir...

At the risk of spoiling the surprise, the conclusion rather strongly implied is that he killed himself after coming to feel that he’d wasted his life devoting it to a second-rate author.


this video is pure gold


Look , 90% of good work / product won’t exist if people all give up because they don’t want to grind and only work if they feel like it . You cannot get rid of grinding in any projects even if you are passionate about it . There are gonna be times or parts of it that you need to grind. No excuse if you choose to be a grown up


As a grown up I can choose to enjoy a project until I stop enjoying it.

Does every project actually need to be brought to its conclusion? No. Is it nice to take pride in completed projects? Yes. Do the projects I do bring me additional knowledge? Yes, usually.

I think that the ability to complete a project is a desirable skill. I think the desire to take a project to completion is worthy, otherwise why start it? Still, priorities change right along with interests. Much like saying "No" is considered a skill, knowing when to finish, and when to throw in the towel, are both equally valuable skills.

When I signed my daughter up for soccer this summer I had to willingly drop a personal and extremely fun side project because I've committed an extra 4+ hours/week to her development. Am I not a grown up for making this decision?


> Am I not a grown up for making this decision?

No, of course this is not the case. You made a decision based on priorities.

The headline of the article:

> Finish your projects > Don’t let fear, or that last 10%, hold you back.

... and reading the article, it seems targeted at people who want to finish their projects, but are struggling with the reality of actually doing so.

GP seems to be talking about the same sort of thing --- giving up because the going got grindy.

It's of course fine to just screw around in your free time if the goal is to screw around in the first place. It's also fine to realize that some goal (project, etc.) you set no longer aligns with your priorities.

I feel like there are two groups of people here talking about different things but thinking they're the same.


The difference is perspective. You're right that grind is unavoidable, but it requires a big-picture perspective that the work is still valuable and therefore worth completing. If the wider circumstances have changed, then grinding because success demands grinding belies the fact that success will no longer be achieved through grinding. The key, in the beginning, is to attempt to reduce the amount of grinding that will be necessary by reducing scope as much as possible for what is needed to ship; the less grinding you need, the more likely you are to ship, and the more likely you are to continue to ship in the future.


There is work that is unpleasant but needs to be done (chasing raceconditions, memory leaks, etc.) - and there is grind, that kills all your love for the project. If it is the latter, I really do recommend to make a break and do something else. I tried both and grinding did not work out, but coming back fresh did and I usually immmediately spotted the problem, I otherwise would have wasted lots of energy on it.


I guess that's kind of the point. You don't have to choose to be that kind of grown up.


Yes, but it's okay to refuse to grind. Sometimes the juice is not worth the squeeze, and it's equally grown up to give up.


I apply that mentality to my job. If I’m just goofing around at home I don’t “have to” do anything.


That's absolutely true. Alternate perspective, though --- might it be that "goofing around" was the goal here, and therefore the goal was accomplished?


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.


It's fascinating seeing the varied (and sometimes quite opposite) replies. I think a good chunk of this comes down to one's personality.

I've had an internal notion of "healthy masochism" for a while — much like what you're saying, where pain is part of the process. And if you go through it enough, and taste the final reward enough times, you almost start to feel the pain as a good thing, or a reward on its own.

On the other hand, there are other personalities (maybe less of them in software, given the amount of pain to be found there :), where the "whip yourself forward" approach plain sucks, and just creates scars rather than promoting growth.

Different strokes for different folks, though I definitely get where you're coming from.


I mean don’t most of us fall on either side of the divide at different times? Pushing myself through weight lifting to resolve knee pain feels worth it. Finishing a goofy side project I’ve lost interest in doesn’t.


Yeah everyone is super different, and it is kinda funny to see all the varied replies here.

Some of the stories I hold onto when I'm having a tough time finishing are those of writers who talk about what a struggle it is to write. Jerry Seinfeld on the Tim Ferriss show was one of my favorite interviews ever. He talks about about how his advice to young comedians is to just work. There's no way around it. That's been a great comfort to me. The War of Art is another good source of inspiration.


I'm thinking maybe it depends on goals?

I don't know what your goals are when you start projects; personally, I seldom start projects just for fun. If it's a program, then it's a tool I want to use. If it's project around the house, it's probably a repair or upgrade that has meaningful impact on my life. It's easy to get discouraged on these kinds of projects, but you have to see them through or in some sense you suffer for it.

In the middle ground there are things you kind of started because you wanted to, to see if you could do it, or because you thought it would be cool. Maybe a drawing you you were working on, or a research project (actually, I don't know if this fits or not). In a home wood shop, maybe you're making an new tool because you enjoy owning nicer tools than you can afford or just tools you made yourself. These projects, you don't really have to finish, but you probably don't want a graveyard full of them either. It's a pride thing. I start projects like this myself on occasion; they end up particularly hard to finish because I have too many of the first type.

Then there are people who are just screwing around, doing what's fun in the moment. I basically never do this, but a lot of people do. Those projects are fine as well, but people doing that sort of thing are going to have a very different outlook.


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.


What happened as a result of finishing those projects?


One thing: internal satisfaction. External success, too! The biggest one recently was releasing a course on MySQL at https://planetscale.com/mysql-for-developers. It was painful to push that over the finish line, but giving up on it would have been a huge disservice.


Aaron, thank you for this course! I started watching it about a week ago, and I love your teaching style.

I've been using relational databases for years, but my conceptual understanding was never that strong. I hadn't touched MySQL in particular for several years. Your course not only got me back up to speed, but I learned a lot of things I'd never known before.

I love how you organize your lessons, how you make sure to answer the right questions at the right times, and how you prioritize helping the learner build a strong mental model.

I hope you make more content like this in the future.


Gah, this is so encouraging. Thank you for taking the time to say so! I put _so_ much into that and I'm glad to hear it's been helpful for you. Organizing the content was actually a really big struggle for me, so this is particularly meaningful.


I don’t think it’s really fair to count projects on your day job, unless you have the option of unilaterally cancelling those by yourself?

And even then, you have a lot of extra external motivation (money, peer pressure, boss) to keep pushing when you’d otherwise give up.

Not to say that the satisfaction is any less, but the environment seems different.


A lot of my day job work is self directed because our managers expect a lot out of us but also leave us alone to do the work (amazing right?) but message received.

Let's take one not related to software at all! I turned a shed into an office over the course of many months: https://twitter.com/aarondfrancis/status/1333866090573811723. I wanted to give up and burn it down at some points, but I powered through and ended up with the perfect shedquarters!

I also did a podcast many years ago that was hard for me to produce, but I powered through until I felt like it had reached its natural conclusion: https://www.youtube.com/playlist?list=PLI72dgeNJtzr2Hd6Uscin....

I created a course teaching college students financial accounting that's made over 100k in the 5 or 6 years it's been live (http://acct229.com). That was a freakin grind that I thought about quitting a lot.

I also started doing tech YouTube videos recently and each one is a tiny exercise in finishing (and it feels great to ship!): https://www.youtube.com/@aarondfrancis/videos?view=0&sort=p&...

I wrote and released an open source package called Sidecar (https://github.com/hammerstonedev/sidecar) for managing Lambda functions from Laravel. That led to me speaking at Laracon Online (https://www.youtube.com/watch?v=0Rq-yHAwYjQ) and also to being asked to produce a course for Laracasts (https://youtu.be/0Rq-yHAwYjQ?t=11759). Speaking at the first Laracon led to speaking at the second Laracon Online (https://youtu.be/f4QShF42c6E?t=21744). Both of these led to me being profiled by GitHub's ReadME project at https://github.com/readme/stories/aaron-francis. (The shedquarters is featured here!)

That interview led to another piece called "Publishing your work increases your luck" at https://github.com/readme/guides/publishing-your-work. I gave a talk on that article at GitHub Universe. That article led to... this article. And here we are!

Each of these things have 1) felt awesome to release and 2) directly increased my luck, my bank account, or led to the next thing.

Hope those examples hit home a little harder!


Thank you so so much for listing these examples. I am the exact target audience for your financial accounting videos. Immediately bookmarked and shared with a few of my close friends. Appreciate you for finishing these projects -- they definitely will come in valuable for people like me :)


> Hope those examples hit home a little harder!

They’re certainly done outside of work and make the point a lot better ;)

Shed looks fun! Now if only I had the space for it. Think 20x10 covers my entire garden.


Honestly the best thing to do is to decrease the scope of the project, cut lots of feature until you can finish it in a reasonable amount of time.


Agreed. Better to reflect honestly and stop, take the valuable lessons. I try to have fun working on my projects, and not think about the end result all the time. If you are not motivated by money, that is a lot easier of course.


Haha. You are the Cerberus in my head that I must fight before beginning any of my projects.

> you will get much less from it than you hope (at least in terms of external validation and rewards)

The best thing is when you're not doing it for validation but for fun. Or, even better, for your own utility, like this is something I want to use for myself that ostensibly exists nowhere else! It's uncommon you think of something like that, though.

Recently, a program I use got an update that's made it go from perfect to horrible. While it sucks, it's given me a project like that; I'm now working on my own substitute that gets back to my "perfect" and has none of the features I don't want. Until it's finished, I'm still using the original program, whose horribleness motivates me daily. ;D


There are good pain points and there are bad pain points.

If you think you'll gain in other areas despite failing and it won't affect other aspects of your life (think health and mental), then by all means power through.

And keep in mind a track record of finished work is a degree of proof that no one can deny, so long as you're able to host it and let others see it.


> Go take a walk or bake some cookies instead.

Funny enough, I had few concept projects got un-stuck maybe because of it. Long story short: sometimes it's helpful to leave the project for a few days so you can come back to it from a relatively new perspective. Get a good exercise AND then a good rest helps too, especially when the project is big.


I found that a good solution is to have an handful of ongoing projects so we can pause the current one when the motivation is low, have a little break, then see which one can be resumed after that. There's less pressure, it's more healthy, and over the years it adds up.


I found this paragraph so relatable:

> Personally, I like to put a single song on repeat for hours and hours, days even. It helps me zone in. Why does this admittedly strange behavior help me? I'm not sure exactly, but I've known it to be helpful for more than half my life. I like to get up early before the family is awake, close Slack, put my phone in Do Not Disturb mode, and work. I even put a Post-it note on my monitor with the task I'm focusing on to help keep me on track. Sometimes I can accomplish more in that quiet hour and a half than I can in the rest of the day.

Except for the post-it note, I do those exact things. These seem to be the essential pre-requisites to being very productive (for me):

1. Set aside some time to work on something specific (with clear goals and intentions).

2. Block all interruptions (messages and calls of any kind and other distractions).

3. Focus and get in the zone. I find that music helps a lot here, and generally for me it's electric music or songs with very subtle lyrics (almost dream-like). If the lyrics are too noticeable, they become a distraction.

The above works both for my personal projects and work. I work remotely and sometimes there are so many interruptions during the work day that I simply abandon everything and go do something else (a walk, groceries, work out, etc.). Then I catch up in the evening or during the weekend, when interruptions are at a minimum or completely absent for hours on end. Almost always I'm more productive in a couple hours like this than for entire days.

Finally, while I liked the article a lot, I disagree with the premise that projects _must_ be finished. It's fine not to finish a project, it's not failure at all. On the other hand, yes, there is a certain feeling of accomplishment that comes with reaching a level of "completeness" of a project.


Interesting that music works for you. I’ve noticed that besides just white noise, music significantly degrades my work results. I might produce similar amounts of content line-wise, but the solutions are of much lower quality when I listen to music. As a result, I only listen when work feels too painful and I’m okay with decreasing my output.


For me it is listening music without any words. I have one special track that enables "productivity mode" for me. If there any lyrics I can't concentrate and listen to words instead,


Sometimes I put on a TV show I’ve already seen playing in the background to help me focus. Something easy like Scrubs or How I Met Your Mother, where you really don’t need effort to keep track. It can play in the background for the whole day and it somehow helps me get in the zone, but not always.


Hmm who told him that was a good idea? I get talking proudly about it but unless there's a good reason it feels like a bad feedback loop.

I am a little obsessed with songs at times and even I can't stand listen to the same song more than 10 times in a day unless I was trying to memorize it or something.


Huh? Nobody told me it was a good idea! I did it once and liked it and so I kept doing it.

In that paragraph I'm describing how I work. The very next sentence is:

> These things work for me, but you'll need to find what works for you.

It's not prescriptive, just descriptive.


Ah I see. I tend to ruminate a lot so that must be why the idea seems problematic to me. But you didn't say you ruminate or that you were interested in the lyrics of the songs and I'm not sure it would increase my rumination if I did it. I suppose I do it anyways just not to the same level and for different reasons. I get obsessed with a set of songs and listen to them a lot for a while.


> Finally, while I liked the article a lot, I disagree with the premise that projects _must_ be finished.

To be fair, the author admits that including maintenance, a project is never really finished.

Instead, he says that a project should be _published_. Preferrably, on GitHub :P


About a decade ago, I was working on a mobile RPG game. I invested six industrious months, building it up to the brink of completion—just 3% short of its final version.

The unpredictability of life, however, has its own plans. An unforeseen circumstance led the company I was collaborating with to dissolve, and simultaneously, a tech startup I had founded began to show the sprouts of success. Faced with this duality, I found myself contemplating the choice between my creation and an entrepreneurial opportunity. With a heavy heart, I paused the game project to build my startup, which turned out to be an arduous, albeit rewarding journey. Yet, that unfinished 3% kept lingering on the edges of my consciousness. So, I set aside three months to complete the remaining portion of the game (1% takes the same amount of time as 99% of development?) and finally released it on Steam. The joy I felt was amazing, not because the game was extraordinary, but because I had finished what I started.

From this experience, I took away two key lessons:

- We only have the bandwidth to complete a few significant projects in our lives (2 or 3 on average). It's crucial to know when to say 'no' and choose our commitments wisely.

- Leaving a project incomplete can lead to long-term regret, more so than the effort it would take to finish it.


Ever since I can recall, I've wanted to write a novel. After a few unsuccessful attempts, about a decade ago I started one and it turned out to be a very long process, especially the editing phase. At one point, I was on the verge of giving up because I was unsure of myself and naturally started having doubts, amidst my solitude. However, I couldn't bear the thought of the lingering regret of not finishing it and the cycle of starting new ones just to complete one. So I persisted, did everything, saw it through to the end, even though I've never really had the courage to show it to others (except a couple of friends and I published the first few pages) - I'm delighted that I did:

I know I've written a novel; I no longer have to start another just to prove to myself that I can finish one. My writing has tremendously improved and I believe if I decided to write another, it would be significantly better than the first one. So, in a way, I agree: if you're almost done, persisting to the end could be a good idea, even if it's just to free yourself from obsession.


I definitely agree on the regret front. I can't pinpoint the source of the regret, after all I still learned a lot along the way and spent my time working on something interesting, but somehow it's there. Just recently I picked up a project I had almost finished and then put aside for a year — mostly just to close that chapter up.


I'm curious, does the 3% number for how (relatively) close you were to finishing the game come from hindsight, or did you know that number while in the process of making the game (and if so, how?)


The 3% completion figure initially came from my estimate that only the outro was left to be done, which could feasibly be considered as around 3% of the overall game. However, I hadn't taken several factors into account:

- Releasing on platforms and setting up a Steam account.

- Marketing and creating promotional graphics.

- Bug fixes that were discovered by hardcore gamers, who we didn't have access to for testing a decade ago.

- After 10 years, some Unity plugins needed to be updated and adapted.

- Also important to consider is that I ultimately decided against a mobile version and had to rework the game for desktops.

These factors ended up extending the process much more than I initially thought, but the figure of 3% had stuck with me from the beginning, illustrating how finishing touches often require a lot more time and effort than we might initially anticipate.


Number 1 and 2 are _so_ time consuming. The number of apps I’ve code completed, but not released, is too damn high.

I hate creating screenshots (and then get an error that I didn’t mean the exact size/ratio required), banner/store/promo graphics, icons, a short/long description, title/subtitle/promo title, and filling out all the questions the App Store/Play Store ask. I become so extremely lazy at that point.


A bit late, but what's the title of the game?



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.


Commercial software vendors may not finish their products (what even is "finished" when it comes to software?) but they do ship them. How many unfinished hobby projects meet the same fate?


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.


Eh. The vast majority of the time that you ship something, the end result is that literally nothing happens.


I can relate to this. I actually finish a lot of stuff. I mean, it’s not all polished, it’s just simple, documented, and released. Then, crickets. I either suck at marketing my stuff or I’m scratching itches that only I care about.

Examples:

https://ponder.joeldare.com/

https://www.nolific.com/

https://github.com/codazoda/https-basic-auth-go

https://calories.joeldare.com/

https://neat.joeldare.com

Okay, a few of them have some GitHub stars, and I slipped in my most popular project, but still. It’s not like my inbox is overflowing or anything. There are about a gazillion others too. ;)


I think Ponder is cool! I made something similar for myself, but never got around to supporting more than one text. https://blakewatson.com/scratchpad/


Oh, you're the Neat CSS guy! One of these days I plan to use that for my blog- thank you for making it!


I knew I recognized your name. You created Neat!


I read a very boring but useful paper on curiosity by Lowenstein.

He frames curiosity as a drive (similar to eg hunger.)

If you’re starting but not finishing projects, maybe it’s due to curiosity about a sub problem that you hack a solution for.

But once your curiosity is satisfied and you have no other drive eg money, stars on Github, you finish without releasing it


In my native Finnish tongue we do use, interchangably, expressions "tiedonjano" and "tiedonnälkä" which directly translate to thirst/hunger for knowledge. Even "tiedonmuru" is a crumb of knowledge or data, as in bread crumb.


That's an interesting take, and certainly one I empathize with. Did Lowenstein argue that not finishing projects is a negative trait as it's often portrayed as?


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.


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.


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"


Glad I read it as intended. I enjoyed your writing!


"Finish your projects", finger wags cheerful guy full of certainties, paid by large American corporation that makes money from your finished projects and doesn't care what happens to you before, during or afterwards.


I do work for an American corporation, but we're not large! Less than 100 people I think. I do care about what happens to you, but I assume you're saying GitHub doesn't. I don't work for GitHub.

I'm working incredibly hard to provide a better life for my family. For my two-year-old twins. Finishing projects is part of that work. It's not easy but I think it's worth it.

If you're curious about my story of working, side-hustling, and spending time with my family here's an hour of me talking about it: https://saas.transistor.fm/episodes/bootstrapping-with-kids.

It's full of nuance that you might be wishing was in the article.


This is a Reddit-level comment. Cynical and teenage-anger-esuque


Good job you're there to lift the tone!


It makes sense to add this context. But I still think the advice and explanations in the blog post are more generally applicable than just to GitHub projects.


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.


As "inspirational" as this comes across, I can't help but feel a bit cynical in that this is _Github_ publishing this. You know, the company that famously built an AI product using the projects hosted on Github... Personal development and growth and feel-good-iness aside, there is a tremendous conflict of interest present when Github is encouraging its userbase to create working software projects when those software projects constitute a treasure trove of machine learning data that can be monetized (and even more effectively so if they work/are completed).


GitHub did publish it, but they didn't write it! I (the author) don't work at GitHub, and they don't tell me what to write. The brief they give me is basically "write something a developer would like" and off I go. Not sure if that changes your mind, but at least now you know how it worked behind the scenes!


I'd say it does influence my opinion to be more positive knowing that you're not necessarily in the palm of Githubs hands, though my underlying cynicism still remains - I think part of that is that I've grown significantly more cynical of written pieces over the years having watched online content succumb more and more fervently to the game of monetization and opinion influence.

Additionally, I think this article strikes a bit at my person as I struggle immensely with finishing anything I start, to the point where I've began projects (plural!) meant to act as tooling to create project boilerplates, and I still haven't finished even those. Regardless, I do feel the message shared is a positive one that does come from a place of benevolence.

Tangentially, I'm curious if you could speak to what it's like creating content as a third party author? Are you given prompts regarding the tone or content of your work? Have you ever had work you've produced be rejected by a publisher? I'm not at all familiar with this aspect of online content (despite being stuck to a screen reading it all day), so I'd appreciate some insight on the matter if you're willing and able to share any.


> Tangentially, I'm curious if you could speak to what it's like creating content as a third party author? Are you given prompts regarding the tone or content of your work?

Happy to share! The first piece I wrote for GitHub's ReadME Project was called "Publishing your work increases your luck" (https://github.com/readme/guides/publishing-your-work) and I was able to write it as a result of an interview I did with them previously.

Before I wrote that first piece, I reached out to the ReadME Project and told them that I had wanted to tell the story of my past year of overcoming fear and embracing putting myself out there. They agreed that that fit in their "developer stories" section and did an interview of me, which they published here: https://github.com/readme/stories/aaron-francis.

After that they reached out and said "sometimes we have our developer stories have a corresponding guide, do you want to write one" and so that's where the Publishing guide came from. I wrote it all for them and then they have a full on team of editors, proofreaders, illustrators, etc to help push it over the finish line. Before I wrote it I gave them an idea / outline of what I was gonna say, to get the green light. Their editing has been very light, more flow than content. Like... move this sentence up; you repeated yourself there. That kinda thing.

The only time I had a piece really torn apart was this one https://handsontable.com/blog/modularizing-to-improve-the-de... and it was because my voice just didn't fit their blog at all. What you see on the site there is about 35% of what I originally wrote before it was completely toned down. It happens though! It's their blog, so it's gotta fit their voice. (Coincidentally that was the last piece I wrote for them. Ha!)


Right on, that's pretty interesting. Thank you for sharing.


I agree, very much so, with your reasoning; so much so that I never trusted my code in any online code hosting platform…but never did I imagine it would be used for machine learning!


Is this not an alignment of interests?


I suppose that depends on ones opinion regarding the Copilot situation.


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.


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.


I'm all for mutual aid and sharing, and I am definitely not an endless growth capitalist, I want people to have time and resources to make art and tend their gardens.

But I sure couldn't produce the tools I want without making use of the work of profit driven people, simply because advanced tech is a lot of work, takes hundreds of people, is too big for anyone to understand and thus is almost never made if idea-exploring is the main motive, and generally seems pretty tied to profit.

Lots of places in Europe seem to have mostly figured the balance out. I don't think I'd prefer to live in a world without Intel and Microsoft, maybe I'd have free time, but I'm not sure it would be leisure time, I might be hand-washing laundry instead.

We definitely need changes, and there are some amazing side projects out there.... but also, I want to eradicate the last few guinea worms, have every roof covered in solar panels that can last 70 years, and have my Google Keep notes keep working or be replaced with an even more advanced and feature rich version.

To do that, I think we would either need to start doing really big polished side projects, or we'd need to manage and reform, but not eliminate the deadlines and meetings kind of stuff.

I'm not sure we know how to run a chip fab with any other social structure. Maybe a co-op with elected leaders, or unionization, or better inspectors to be sure there's no child labor sourced parts... but we would have a lot of learning to do to make Intel open source, half the people would just say "We should ditch out of order execution, it's a security risk" and the other half would say "This defect tolerance routing that improves yield 20% is really complicated, stuff is getting too hard to understand, we can toss a few wafers if it means the tech stays human-level, and in 5 years we can probably just get rid of the defects".....


> But I sure couldn't produce the tools I want without making use of the work of profit driven people, simply because advanced tech is a lot of work, takes hundreds of people, is too big for anyone to understand and thus is almost never made if idea-exploring is the main motive, and generally seems pretty tied to profit.

Kropotkin's model of anarchist society is that we still have guilds and federations of workers, mostly composed of people drawn to whatever they are interested in most. If the farmers produce food, and the workers produce tools for the farmers, we can exchange them without having to profit from that exchange. Take the food or tools you need.

Over time, as practices become established, group up with other farmers, tools producers, etc. and form guilds that are democratically run. Those guilds negotiate with other guilds to help drive what tools are in demand and work to increase them.

Chip fab would necessarily be slower under the system -- democratically run organizations do take longer to reach consensus -- but we would probably route around that a bit by doing with fewer chips. (Or maybe we'd see more people enter chip fab as their career if there wasn't the concern about bankrupting themselves by going to college.)


> Lots of places in Europe seem to have mostly figured the balance out [...]

> [...] I don't think I'd prefer to live in a world without Intel and Microsoft

Now guess why Intel and Microsoft aren't European companies :)


Mondragon is. You might not be familiar with them, but they are a federation of co-ops in Europe that are a billion dollar business and are the 10th largest industrial group in Spain.

They do R&D, Finance, Manufacturing, and a bunch of other stuff.

https://www.mondragon-corporation.com/en/

There's no axiomatic reason why an Intel or Microsoft couldn't be a co-op or federation of co-ops. It just didn't shake out that way this time.


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.


Thanks for sharing these. Though I mostly do software I found his take very helpful.

Also nice to be reminded how fungible things are when no actual wires get involved.


My "hack" is to release work early (while you're still embarrassed by it), and iterate ruthlessly: https://onlineornot.com/unreasonable-effectiveness-shipping-....


I try to make at least one commit a day. Some days I fail, but often I have weeks-long streaks.


Love this framing! Good article. Followed you on Twitter!


> 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.


Finishing is hard so it needs to be the strongest point of the project.

When you got started you were in the open mode, playing, prototyping, dreaming and iterating.

When you finish you have to move to the closed mode and have an internal editor that says "ship" and "cut that" or "move to an update" and that is a difficult ride. Sometimes people don't finish simply because it is too painful for a labor of love to be trimmed, but it is the skill you need to ship. It sucks but is.

What you have to do there is revisit the love/play that initially got you to the idea and project.

See your project in the world/market and feel the original feelings of when you started it. Don't focus on what you had to cut or didn't meet your expectations, focus on what did and head to post-production and ship.

Ultimately we are only what we ship to the world, no matter how much you have in development or your adventures. If it isn't where you want to be improve it, but also learn to love each ship as that is a major step. It is a joy when what you envisioned comes out as you wanted or better, when it isn't, make changes and updates.

Both "work with a high degree of quality" and "finish strong" are good areas to strive for, but "finish strong" is where it is at.


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


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.


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


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.


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."


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.


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.


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


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.


Really nice read!

I too play the same songs on repeat. I love death metal so I just listen the songs that make me want to wage intergalactic war on other planetary systems and play them on repeat lol.

Once I’m in the zone there’s no coming back unless it’s with the spoils of victory!


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/


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.


"Perfect is the enemy of good" is another similar one you might like ;)


I’d love to. I actually have 2 games I started and never finished, mostly because I developed the primary gameplay mechanics and design, but I’m too lazy to make them into a finished product. The chasm between developing a POC and finishing things is surprisingly wide. It’s the same for the literally hundreds of songs I’ve written and recorded over the past 20ish years - I’ll record a demo or a 90% finished mix, but again, the level of effort between that 90% finished mix and a fully polished and mastered release-ready song is far more than it took for the 90% version.


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.


Go get em. Thanks for the kind words


"Those few people—the ones that actually finish—know the deep satisfaction of seeing something through to the end. It’s a satisfaction much deeper than the euphoric high of starting."

For me, this is false. I see other people who jump for joy at winning, who seem to really really like overcoming obstacles, who do get some deep satisfaction from accomplishment. I don't. Winning and completion feel ok, but at their most powerful they feel like a relief from the stress of effort or the shame of not getting something done. I look at people who get a natural internal reward for doing hard things like they have a super power. It's like they get paid millions for their work while I'm over here getting pennies.

Over the years I've had to actively work to focus on intellectual pride rather than any feelings of satisfaction or accomplishment. If there's no rush then at least I can objectively say "I've done X to an acceptable level of quality" and have confidence that others will react positively. To some degree I get that feeling of reward from external praise, which I'm very thankful for, as I'd hate to be totally missing out on feelings of satisfaction, but I imagine there are people who don't even have that.

So ultimately I feel like the author has failed to conceive of a world where people are wired differently and is saying "You'd like it if you tried it" without considering the possibility that, no, not everyone will like it enough to try it a second time.


Yep. This is totally me.

It's as if my brain isn't wired to process "good news" or "triumph". The closest thing to that is rather final relief from some huge pain in the ass, and even that's fleeting. I think I could be told I just won a billion dollars, and I'd focus on whatever my next problem is in like 15 minutes.

And the things I do are usually not huge pains in the ass since I usually only do stuff when I enjoy the journey. The destination can be nice, but not just because I'm stoked about reaching it.


In the middle of this as we speak, so thanks for the post. I'm absolutely in that rough 10% phase. XD


Rooting for you. You can do it.


Interesting idea but sometimes your projects aren't just a mess of errors and cryptic code. Sometimes they are clean enough, but mainly are just there to learn something, and spending all of the time finishing everything off to try to make it shippable is just a waste of the time that you could be spending on something worth shipping using your new found knowledge.

Although if projects are getting abandoned just because of the mess they are in, that's definitely something to work on.


For those looking for more practical advice on the subject: https://sonnet.io/posts/sit/

> Finishing requires work

> Finishing requires courage

and

> "Just Work"

Hard to disagree with that, IMHO Sitzfleisch is akin to exposure therapy. But, in practice both items require having a deeper understanding of where the difficulty comes from. Instead of brute-forcing the problem (and sometimes setting up yourself for failure), it might better to develop tools that work you as an individual.

For instance, sometimes for me procrastination or avoidance can be a signal that I haven't been taking care of myself outside of work OR that deep down I just don't give shit about the project, but can't admit that to myself so just end up more frustrated. In this case leaving the house for 15 minutes or petting my dog works better than Sitzfleisch (cliche I know). Again, that's not always the case, but I think spotting those signals and making the appropriate choices is a muscle we develop through practice.

More on the subject in the article above and here: https://sonnet.io/posts/hummingbirds/


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.


Regarding

> Decide upfront what you're going to work on.

and

> Behind the fear of releasing is often the fear of exposing your work, and yourself, to criticism.

When I plan to release my project's source code, it has helped me to release parts of the project up front as single-purpose libraries. This helps me think in smaller chunks of work, and makes me feel like I'm finishing more often. It also shortens the feedback cycle.


Rule #1: Quickly identify a failure to resolve critical paths to completion. Some projects are simply doomed without the right people, resources, and market conditions.

See "Law of holes" corollary:

"Nor would a wise man, seeing that he was in a hole, go to work and blindly dig it deeper..." ( The Washington Post dated 25 October 1911 )


Could be this a sign of a shortage of open source programmers willing to work for free anymore, so a big company can mix and sell their code ignoring the license?

It seems that the early times of open source were much more idealistic and less corporative. This zeigeist will not return, I'm afraid.


Although I agree with some of the advice, I also remind myself to the exact opposite: Kill your projects. If during a project you learn that it will not work, will not be as good as you hoped it would, or if the circumstances have changed, put it out of its misery. Do not let it hang around nagging for you to finish it. Declare it dead, maybe archive it somewhere far away, clean it out of your sight, and move on.

Do not consider a killed project to be a failure. Rather, it was an experiment with a negative result. You learned at least one thing that didn't work, and probably you learned a lot more.

It is better to start exciting and ambitious projects, of which some may succeed, than to play it safe and only start working on something simple and boring that you already know will get released.


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.


One way to make sure (some) projects get finished is to not use semantic versioning, 1.0.0, 27.8.3, and so on, since integers can be incremented longer than the average lifespan, and instead use something like alpha-versioning which starts at 0.0.0-0 and ends at 1.0.0-0, that is, reaching 1.0 is actually the death of the project, its tombstone saying non perfectus sed perfectibilis non amplius (Latin for gravitas: not perfect, but perfectible no more).

At the other end, having goals which extend well beyond the average lifespan is what could be considered as the root of wisdom.


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/


I have no duty to be a slave to my past self. I proudly liberate myself from finishing anything.


What helped me finish some of my projects was also choosing a realistically achievable goal. I have made the mistake of being overly ambitious many times, like how cool would it be to rewrite this and that as well from scratch, my version will be so much better, etc..

But it is sometimes simply not feasible, and we would be much better off with a less ambitious solution to the problem we have.

Last time I successfully applied this was a personal finance tracker, where instead of going at it reinventing the wheel I built my smaller project on top of the Plain Text Accounting ecosystem (beancount specifically).


As I started my studies, I tried to develop a little Android game. It took way longer than expected, being also very frustrating from start to finish. I kept working on it for a couple of months, set up a Google Play account, created some images for the Play Store, and then released it. As expected, it didn't get much traction, but I felt very proud and happy about it. Would recommend! :)


Should be finish your project*

Sometimes there's just more interesting stuff to do, or the easy project turned out to be a near impossible slog. Letting go and moving on is a valuable decision instead of digging a deeper hole. That is sunk cost fallacy.

Ie, I tried making a instagram + discord fusion. Instagram image feeds, but to a server of people instead. Turns out it's a ton of work and is worthless unless others adopt it. So it got scrapped after month+ of work.


I feel like I finish most of my projects. Granted, most of them are small, command-line tools. When they're done they're done.

What are your thoughts I projects that haven't had any updates in a few years?

https://github.com/jftuga?tab=repositories&q=&type=source&la...


I still struggle with this, but I’ve become better at it.

What I learned is that “the last 10%” really is about half of the work. The solution is to reduce the scope. A lot.

Not only will it make it easier to finish the project. It also allows you to get real-world feedback a lot earlier. Which is both rewarding and informing. Two things that will help you push your project forward if you choose to do so.


This brought to mind another blog post I liked on the topic of finishing, by Derek Yu (of Spelunky fame): https://makegames.tumblr.com/post/1136623767/finishing-a-gam....


I don't agree with the part about starting a new project with no legacy code being easy; starting a new project with no old code at all can be paralyzing.

The best is a project that is never finished, with great legacy code that makes it easy to do new things all the time, such that you're relieved you have it there.

:)


Funny, I have the exact opposite reaction. Solving for edge cases, for optimization, for bugs, is all so much easier.

The "infinite possibilities" means infinite wrong decisions. Infinite ways that the decision you just made will prove to be a colossal fuckup in 2 months' time.


I also listen to the same song on repeat. How do you think Despacito got all those views.


The thought of listening to Despacito for a week straight is making me sweat


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.


I don't really subscribe to the idea of "finishing" or "completing" a project; I'm sure my personal github can attest to that. I think "real" software is never done. The only things in software that are completed are the fractions of software we abstractly define (tasks, features, sprints, deliverables, etc). Much like us, real software lives until it doesn't. It changes through time sometimes regressing and expanding. Software whose goalposts remain static becomes deadware.

Outside of commercial projects, I program for the joy of creation and commonly, and paradoxically, automating for the sake of "not automating." I jump from project to project, sure, but I've found the largest source of not wanting to go back to a project is the difficulty of doing so. Having to pick things back up to juggle and going through the motions of learning what my software did and what needs to be done was always a pain.

My real breakthrough was "optimizing being able to leave." Comments like I'd be picking up the software months/years later, READMEs detailing build steps and rationale and planned features, automating dev environment setups with docker, break features/work into pieces so it isn't overwhelming, etc. These are just some of the many ways to make it easier.

Sometimes you don't want to go back because all you can think of is the known (or unknown) work that lies ahead of you. The fewer the reasons to not go back, the easier it is, and if it's easy to pick back up, you'll find yourself picking things back up when the time is right. Sometimes inspiration hits while working on other stuff, and I say that's fine. Embrace that.

Commercial software is a bit more narrow in the selection of how one can start and stop on work (I call this "task shopping"), but being in tune with yourself and vocalizing that during standups/meetings/whatever can help. Can't seem to finish a task? Maybe the task was too big to begin with, scope/feature creep set in, or whatever. Create tasks for what you've gotten done and what needs to be done. Lay out some groundwork to explain how someone might pick up the new tasks. Do that and you'll find yourself "optimizing being able to leave."

"You must become comfortable with the grind-it-out nature of the last 10% of a project." I really don't align with this statement. Software can and should be a joy to do. Sure, there are aspects that can make it feel like a grind, but this is a question of framing. After all software development is technically data entry (don't think about this too much).


Is it bad I can’t even finish reading the article?


"the things that you love should be the things that you do, and the things that you do should be the things that you love."

-r. b.


No thank you. The whole point of my project is that I don't have to finish it!


Define “finished”.

Oh cool (read FUUUUUCK), I forgot I don’t know how to disable smart quotes on iOS.


That's the neat part, you get to define it for yourself.


This reads like a thinly veiled plea to improve Copilot's training data.


Personally for me the biggest hurdle is starting a project, not finishing it.


I need advice on how to finish your article :)


You'll finish it when the time is right :)


"perfection is the enemy of progress"


stop starting and start finishing.


what happened? Is GitHub concerned about the quality of the training data that is fed to GitHub copilot?


If they are they didn't tell me. I explained this more fully in a few other threads!


lol (monkey eyes, looks away)


> 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"


Ha. I don't work for GitHub tho! I'm just a guy writing about my feelings


> Ha. I don't work for GitHub tho! I'm just a guy writing about my feelings

And this is exactly the problem. GitHub uses you as a free writer to promote its making money goals, instead to pay somebody. You are just another case of "working for the exposure". You in fact were working for Github, you just not realized it, and weren't paid.

Open source in late 90's was not about making a personal brand -> to make merits -> so the companies will hire you -> so you don't need to do open source anymore. Some people maybe, but the majority were driven by personal hobbies and "I'll fix it because I can, in a context of mutual benefit, and feels good helping somebody like me somewhere".

Now the mutual benefit in both parts feel much more unbalanced.


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.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: