I stumbled upon a book called Refuse to Choose and it’s about a personality type (that is definitely not ADHD) that happens to want to do a lot of things (sometimes in parallel or in sequence). It was very comforting to know others struggle with this and this book helps you to be ok with it. I wouldn’t say it “cured” me but I think about it differently now and use it more to my advantage. Worth a read at a minimum.
There was one very profound idea in this book that goes like this:
“If you are no longer interested in a project you started, maybe you already got what you came for”.
In essence, maybe it’s not the finishing of the project you came for but maybe the learning or understanding of how it could be done if it were to be done.
This realization is interesting for someone who exhibits this behavior. When I was a kid, I loved to build legos but after following the instructions and building a kit, I wouldn’t touch it again. As I think back now, it likely was because “I got what I came for” (the challenge of putting it together was more interesting to me than the end product).
As someone who frequently starts projects and doesn't finish them, I've wondered if the part I enjoy about the project is the dreaming about what could be. That little rush you get when a new idea is upon you and it's all you can think about for x days. Doing the initial research and formulating a plan.
This is a dopamine rush for me. The feeling of being laser focused for those few days is invigorating. The start of something new, the potential for life changing work.
It usually stops there. Maybe that's what I came for.
Most projects fizz out when the excitement wears off before the amount of work you've already done on it has enough momentum to push you to do one more task.
When I push though that motivational hurdle, I find the amount of work already done incentives to continue on with it. The next task is obvious and relatively easy, because there is something to work with.
Now, losing confidence that everything you've written is garbage and refactoring the same systems over and over again until you give up- that's the hurdle I choke on :D
My recommendation would be to pick a very small project and have specific goals for a Minimum Viable Product (MVP). Try to define a project you can complete in a week or two. Keep the list of specific features you want very short. Then, remember that the code doesn't have to be perfect, it only has to be good enough to implement those specific features you wanted. It doesn't have to handle epic amounts of traffic, etc. It's ok to cut some corners round as long as it does the job for what you're trying to achieve.
Otherwise, just as a general mindset, I try to remind myself that a lot can be done incrementally. Sometimes it's important just to build a working version of your software so you can try it out and learn some lessons by playing with the working software. If you stop and refactor endlessly in an attempt to try to build the perfect system, you'll never get to the point where you're actually trying a working version of your program... Which is the point where you realize what's really important or not to achieve what you want.
I have also found that I am able to stay engaged in other applications where I have a shorter feedback loop, to maintain momentum.
It was very challenging to build something that scaled to phones and tablets while having a magazine-type aesthetic (compartmentalized information on each discrete page).
In the end, I abandoned it, and decided to create mini-zines and post them to Instagram as slideshows. Zero interactivity, but they're orders of magnitude faster to make, layout is constrained to IG's 1:1 aspect ratio and and I already have the artboards as I used Sketch to build my static mockups.
I also tend to go to the path of least resistance and do things in batches and the simplest way possible but concentrate on the most important aspect of it, the content. In the end this is the winner solution for me, if I were to take the long road I would most likely stumble upon details that are not important. If they are important there's a possibility to fix one aspect or another.
And you're also right about IG, people actually saw it and it would come up if people searched the tags. As a passion project, that's 70% of what I wanted. That remaining 30% probably wouldn't have been worth the effort.
a few conclusion :
- i did actually deliver something functional (for a change)
- i still had twenty thousand dreamy ideas (as noted in a lengthy TODO file)
- doing something for someone else changes our your brain rolls. you dream less because you want to make them happy
- it was painful at times, dealing with constraints
- but solving these was a good feeling. a bit less exciting but longer lasting. a feeling of knowing more and deeper (much unlike dreamy brainstorming)
- it makes you operate for true progress, you aim at surgical advances instead of abstract designs. that is a great thing. sobering
my 2 cents
 the theory behind it was that I'd do something simple, without pressure, that I may sell, or at least put on my resume (vuejs being trendy)..
That's also an idea I keep having about general adult life, career and happiness. Youth is all about intense self satisfaction, but running this race too long is a dead end, and it should be hinted that working for other citizen is actually a good thing for you (because it avoids this dead end)
I feel the distinction is valuable for me, but I've also been helping my teenager work through his challenges wherein he hits the first speed bump and invariably gives up on something. Getting "through" the challenge has been a learning process for him.
He realizes he doesn't want to kick things up over and over again, only to hit the first roadblock and then lose interest.
Here's a beeping ball toy I made for my blind cat yesterday:
I'll have to do some research, maybe it can do some rough approximation, thanks for the idea!
You definitely dont want to beat yourself over losing interest in side project. This is something many people including myself do, especially when side projects are a hobby. But if you want the side project to be more than 'a hobby' you still need to address staying power.
“ I know! I'll write a roguelike in X! Five minutes later, I'm thinking: fuck roguelikes! I'll write a graphical solitar card game with Y! Five minutes later, I don't care for it anymore, and would rather write an isomorphic strategy game in Z.”
“If you are no longer interested in a project you started, maybe you already got what you came for.”
There is no way that you got what you came for in those five minutes.
There’s several orders or magnitude that fit into this disconnect and it just says “ADHD-I” to me.
...and I feel my eyes roll back into my head when I read this:
“...a personality type (that is definitely not ADHD)”
...because the invention of new personality types and the stigmatic treatment of ADHD is just... very shallow.
But if the OP (or others reading) also experiences issues with working memory, losing items like wallets or keys, following directions (not because you dislike them but because you just can't keep them straight), sleep issues (generally, staying up significantly later than average), physical restlessness such as restless legs, forgetting appointments, lots of emotional impulsivity via outbursts, a very strong pull towards stimulating things like reckless driving, dangerous levels of drinking or drug use, etc., among others, they might benefit from discussing with a doctor.
Just because you have an idea doesn’t mean it’s worth pursuing that idea, especially if it turns out you’re not interested in that idea after all.
I think the parent is probably trying to say that you definitely haven't done enough exploring on most subjects in a short time to find and glean all the interesting bits, and I agree with that as well. There are work projects that I would have abandoned long ago if they were personal projects that I have got A TON out of by sticking with them and working on them for years. But in those years there has been a lot of slog as well, and it's probably not the optimal way to mine all the knowledge nuggets...
I found a method for this which works for me. I have a book labelled "Ideas & Inventions" and when I have an idea, I write down everything that suddenly hit me, and I keep writing until I feel I have exhausted the idea. If the idea then goes, I leave it in the book. If the idea remains, I write about it again, until, if it remains and I have to implement it, I do so.
Sometimes it will be a game idea (I've spent time as a game dev, the last idea cost me a couple of years & my family before I realised it wasn't worth it), sometimes it's an invention (electronics, mechanical, or both), and sometimes it's just an idea in general.
I find that the feeling that I have to make something is my way of preserving an idea, and to simply write down the idea often fulfils this need. And of the many ideas I write down, only the ones which really matter make it past the notebook phase.
Hope this helps others out there, and if you do try this method and find it helps, please let me know!
For the question, another simple way is to dedicate "X amount of days". Increase the "5 minutes" to "5 days". 5 minutes can be misleading. 5 days is enough time to (for sure) know if you want to proceed or drop. You can try your period to be fewer or more (days), but definitely NOT a 5-minute-cycle.
Much like a kid might say they want to be a footballer or musician - what they really want is the fame and recognition of being a footballer, not the 6 hours of intense training every day for years without any fame and glory. We see this much more in tech than we did 10 years ago, because now everyone wants to be a rockstar CEO hacker startup founder making a $1 billion exit at 19.
And in fact in some cases you can suck it up, major in CS, get a prestigious tech job, and then after a few years burn out because you realize you never really liked CS/programming in the first place, you just liked the social stickers that were on it. I’ve seen it happen many times in my career. Often these people will pivot to being PMs or some “tech lite” function and be much happier for it.
The fact that people suck at knowing what they really want doesn’t make the observation any less valid.
What that means is that you have to get really good at knowing what you actually like and enjoy - not what you enjoy on the surface of it not for its own sake, but for some values attached to it.
Sometime I can feel that I'm in this or that because of some ego or future bragging and they dropped dead quickly.
But then again this probably roots from my childhood as I tended to appease to my teacher or parents to do a lot of things I don't enjoy. So it's really difficult to tell nowadays if I really enjoy doing this or not.
This line alone got me to go buy the book.
As someone who's constantly churning through ideas, and who feels afflicted by ADHD just enough to worry about it but not quite enough to actually think I have it, I've found myself abandoning a bunch of projects when at a 'mostly done' state. Generally, I tackle the interesting parts of a project, and once I've gotten the proof of concept working (whether it's a visual PoC or technical PoC) and the only parts left to do are the boring user registration / billing parts, that's when I lose interest.
I've watched my prototypes languish, and over the years I've seen other people execute them after I have and go on to great success, and have decided to make peace with the knowledge that I'm probably not the guy that would have devised a strong marketing plan, beat doors down or cold-called for sales, etc., but a part of me laments that I didn't bother finishing them at the time so as to at least act as social proof to point to and say "I did that first," even acknowledging the pointlessness of it.
Thanks so much for the recommendation.
Ever considered pairing up with someone from a nontechnical background?
So, that's the long way around, but yes, I have partnered up with people who might compliment my lacking skills, but it's tough finding people motivated enough that I feel like I'm letting them down if I don't keep up. I'm generally great at getting projects going through the hard bits, but in my experience, most other people fall off or lose interest in the project before it even gets to the point that I might.
To date, the only thing that reliably ensures I'll complete a project is paying me to complete a project. Weirdly, if I'm getting paid for something, my mind doesn't suffer any of these ailments. I will still cherrypick the most interesting work to do, but if there are features with deadlines, so long as there's money in it, I have no problems getting myself back on track.
But every time I realize "Why am I handing someone else all this value", and venture out on my own, I can't seem to motivate myself in the same way. It blows my mind and I can't seem to figure it out.
Maybe I need to invent an imaginary supervisor to report to at the end of the day.
Heh, someone had that idea too and turned it into a startup: Boss as a Service https://news.ycombinator.com/item?id=18512197
But I think you're spot on. From each of these projects I've gained something, and once I've hit that point the drive has gone away.
While I often feel like a failure with all of my "failed projects", in my day job people are often blown away by how I seem to know a lot about everything. The truth is it's because I end up trying most things in some fashion with one of these many projects.
This has made my meandering journey worthwhile as well. I don't have many completed projects under my belt, but I have gathered quite a bit of design and coding techniques, different languages, technologies, etc.
The one completed project (completed in a programming sense, but not a business sense), was one that was done just quick and dirty with no patterns, no architecting of any kind. I resolved to not learn anything in the process (besides understanding the dataset I was parsing for human consumption). In this way, I was able to actually "finish" something. That said, I did learn about deploying on digital ocean, about the importance of having a repeatable deployment process, etc, so it was actually a good learning experience in the end.
Currently it’s in the shop because I decided to rip everything into microservices and deploy it using Kubernetes.
Along the way I learned 2 things. First, I like solving the same problem over and over again with different technology. You learn both the new technology and uncover aspects of your problem you hadn’t seen before. Second, it’s important to release. I’ve got a website with 75% of the links broken, and the only visitors are me and the googlebot, but it’s released. There’s an artifact I can show my wife or my brother without firing up an IDE. It makes a big difference with respect to a sense of accomplishment (despite the broken links.)
I always try new problems with new technologies, but I can see the benefits of sticking to one problem over and over.
However, the best thing about all of these unfinished projects is it gets easier and easier to learn different things. Even when my interests don't have overlap they seem to add value to each other.
What I would give to have half finished MVP's! I have a long list of ideas that I can't decide which one is the most worthwhile to pursue, so none of them get started.
If we can minimize the amount of time & effort it takes to go from idea to launchable MVP, then all of these side projects and future ones suddenly become significantly more viable.
I wrote about this goal in-depth here: https://blog.saasify.sh/finding-your-passion-as-a-developer/
I also realized this at some point but as a compromise I now take the time to write some text to document some conclusions.
This helps with two things:
It feels more finished, which is important for my mental hygiene.
And when I do come back to something at a later point I can re-assess quickly what the circumstances and the value was, which can be very practical, especially if it was just some small exploratory thing.
I think you're right in that it's the journey that matters to some, not the destination. As I've gotten older, I feel less pressured to finish these side-projects.
When it comes to actual day-job work. The final 20% of a project is always the hardest for me. As I just want to move onto the next great thing. The last 20% is always the worst part for me (testing, bug fixing, documentation). It's what they pay me for though :)
I'd be more than happy to get to the 80%. It seems like I used to be able to do that when I was younger. It could be that I aimed lower.
edit: I got bored of the pshrink after 5 sessions
My girlfriend got her diagnosis just a couple years ago (she's 38 now). The impact Adderall has had on her organizational capacity is immense.
For me, this has been the defining struggle of my adult life. I've only just become truly aware of it though but when I think back to stuff like when I was a kid playing MMORPGs I would utterly struggle to make a character to level 10 before re-rolling for something more appealing.
Now it is almost a pathological issue I have where I just can't seem to choose something that interests me because honestly, everything is just as equally interesting. Painting, guitar, cooking, lifting, game development, ios development, etc. Its like paralysis by analysis to the nth degree. It's easy to say "just try some things and stick with what you enjoy" but eventually the going gets (slightly) tough and i just wimp out and quit. Except for lifting...for whatever reason I've been obsessed with that for almost a decade now.
My hypothesis is that exercise, especially weight training, is one of the few activities where the growth curve is front-loaded with improvement. The phenomenon of "noob gains" provides positive feedback much quicker than other activities, and that feedback is much easier to get--just look at how much you lifted this week compared to two weeks ago, or how fast you ran that last mile.
By the time your gains start to slow down--whether that's six months or a year from now--you've already developed a habit.
That could be a great thing. But for me, then, I didn't want to go into suspended animation for half a decade and wake up with deep motorcycle knowledge. So I completely dropped it.
That's definitely the case with many of my unfinished projects. My "operating system" is a good example. I have an OS written completely from scratch for RPi3 that can run concurrent processes (and pretty much nothing else). I started to look into using the MMU but quickly realised that it's very hard and I'm not really that interested in it right now. All I really wanted to know was how to write an operating system. Now I know, but I'll almost certainly never actually write a proper one.
> Has anyone else experienced this, and, more importantly, found their way out? How?
Similarly, I'm more interested in research, learning. I'm in the wrong profession.
IMO, OP's problem isn't that he/she can't decide which side project to do, it's that they have already decided that the side project involves coding, and they're already a good coder. Doing your job as a side project seems...boring. Pick something you don't know how to do, but wish you did. Learn CAD, use a bandsaw, 3D print a D20, or just take your bike all the way apart. This idea that every software engineer needs to treat software as their hobby is frustrating to me. Bankers, lawyers, and doctors don't do that, why should software engineers?
Some of us then went on to do some version of this hobby/passion professionally. In that case, having software side projects doesn't seem so weird.
Analogies that come to mind are folks like climbing instructors and mechanics, who also may have had these activities as fun hobbies before making a living at them.
Nowadays there is a higher percentage of folks who got into software (or hardware or whatever) the same way the bankers, lawyers, and doctors did; it was presented as a good career choice if they learned it.
I agree that expecting those folks to have side projects is unreasonable.
Zoom Party would be great! ;)
Agree, I've been through this myself plenty of times. I think there's a way to turn this into a tactic though: a completed project has loads of gaps and finishing touches that a learning prototype lacks, and it comes with it's own interesting challenges that are hard to predict.
So if you're interested in learning what a finished product would entail, you can only achieve that understanding by finishing a product. I've found that there are some products where I'm interested in understanding all of the details, and some which I'm not, and that's sometimes helped filter which projects I should stick with.
The worst outcome is when I have to shelve a project because the tooling just isn't mature or usable enough to make the project fun.
> “If you are no longer interested in a project you started, maybe you already got what you came for”.
I don't know. It's one thing to leave a project unfinished, or to loose interest when it's time to fix the UI, but it's another thing to not be able to make progress at all.
Bottom line: don't try and pin down your interest, open up to it and let it run its course. The course may not always make sense but it knows what it's doing.
Sometimes it just seems as you are not finishing things, for me, it's more like I'm letting some things rest for quite a long time but pick them up again later. I'm just craving variety to get fresh input for all the other things and I see this as a skill. Today I am glad that I haven't unlearned to play around.
It has its benefits, tons of it, I was only unhappy with it as long as I've let others stigmatize me as lazy or undisciplined for how I am.
"Nothing in the world can take the place of persistence. Talent will not; nothing is more common than unsuccessful men[women] with talent. Genius will not; unrewarded genius is almost a proverb. Education will not; the world is full of educated derelicts. Persistence and determination alone will bring success."
I realized I am a lot into science and engineering late in life. Now I want to do all of the Khan Academy in Chemistry and Physics; learn nano-/bio-tech; learn cybersecurity... and probably should just stick to learning backend dev in order to get a job.
People call this being a polymath, but I am seriously concerned for myself. The best I can do is take it one subject at a time.
On the building side, I simply have no ideas I am interested going for.
Very much this - I have very few finished side projects, but in hindsight I can track the course from even my first personal project in school to where I am today.
For hobbies/projects where the goal is just to unwind and enjoy myself, sure, I still do this. But that's often still not satisfying to me. I started making the intention to just complete the damn thing, even when it wasn't fun anymore. Motivation is hardly worth anything tbh. I used to only work with motivation, and while it felt good at the time, nothing ever got completed and I probably felt how you do a lot of the time.
Second, learning is hard. If you think you're comfortable with a new language, framework, whatever.. but you lose steam when working on whatever your building with it, you might not know it as good as you think you do. It's a lot easier to keep steam when there aren't roadblocks, but when you continually come across roadblocks, it just doesn't feel like your moving towards your goal with much speed. But this is generally where the learning takes place.
And I've also seen, finishing one project to completion makes it a lot easier to finish the next project to completion. It's a skill you have to learn (to do a personal project even when it's not fun, and there's nobody telling you you have to do it)
tl;dr: for enjoyment and relaxation, don't finish projects if you don't want. For learning / creating, make it the goal to finish and know that it'll probably be not fun sometimes
Those that are more successful can get past that and make something more profound. There's a lot more than dopamine when you make something you can be truly proud of, that can potentially be a living for you as well.