HNHacker News
TopNewBestAskShowJobs

davidscolgan

723 karma · joined October 3, 2017

Enlightened website builder for the benefit of all beings.

Long time user of Vim->Neovim, Arch Linux, and Dvorak.

I most enjoy using Django/TailwindCSS/HTMX to create contentful websites with minimal Javascript. Started using Django back in version 1.6.

Getting back into freelancing after recovering from burnout at a monastery. Now a practicing Buddhist.

Full service content website building available for beings who are positively polarizing and desire to see the world a better place.

I identify as autistic and nonbinary genderfluid. My nails are painted silver. :)

Feel free to email me about any of the above or anything else at dharma@recursivegarden.com

Toots at https://tech.lgbt/@dharmapurebuddha

submissionscomments
davidscolgan··on Confronting failure as a core life skill
Seconding Daniel Ingram, my mentor says that Daniel Ingram's book "Mastering the Core Teachings of the Buddha" is a great introduction for a developer-minded person. I haven't actually read it so I can't comment on it, but I learned from someone who gained a lot about Buddhism from that book. Also happy to chat further over email.
davidscolgan··on Confronting failure as a core life skill
Yes, my goal in sharing my story is not to garner pity but to give hope that it is possible to recover from even great loss and come out on the other side stronger. Blessings to everyone suffering right now.
davidscolgan··on Confronting failure as a core life skill
Perhaps the most important event of my life was discovering I have autism at age 33. Many things that didn't make sense suddenly did. I pointed my hyperfocus inward to my own mind, at first because I had lost the ability to code and make a living, and wanted to heal my "coding injuries" as I had called them. I had become an atheist at age 20 and primarily had used psychology to try and figure out what was happening.

I studied Buddhism under a mentor and realized that many of the principles applied regardless of your beliefs about cosmology. The idea that all problems humans face can be summarized as "greed, ignorance, and aversion" was a useful frame. These helped me triangulate the ultimate source of my burnout to unmet family expectations that I had for many years tried to live up to but could not. Confronting my family about these expectations and taking responsibility for my own life was absolutely key in my healing.

These days I don't exactly have a set practice but I still live with my mentors. They started a syncretic monastery that welcomes all traditions, and observing the similarities and differences between worldviews has been quite eye opening. The most valuable practice I take from all this is a honed awareness of the root causes of suffering, and I've found that once the root cause is identified, it becomes possible to release it.

davidscolgan··on Confronting failure as a core life skill
I am not saying this to complain. I have no regrets or complaints. I am free from suffering as a result of going through this experience.

I live at the monastery full time now.

davidscolgan··on Confronting failure as a core life skill
I feel this. I have been burned over and over again as well. I desire to trust deeply and build real intimacy with friends and colleagues and lovers, and for many years I was very naive. I trusted anyone who told me they were trustworthy.

For me personally, it turned out I have autism (which I didn't realize until age 33), and understanding this helped me understand perhaps why I was being deceived so often.

Generally, I appreciated this article by Malcolm Ocean about his idea of a "Non-Naive Trust Dance". https://malcolmocean.com/2021/09/non-naive-trust-dance-why-t... He suggests that the optimal strategy for trust building is a slow building over time that acknowledges the distrust inherent to both parties rather than naively accepting people at face value.

davidscolgan··on Confronting failure as a core life skill
It feels like I have failed in every way that is possible.

I have lost my wife, my child, my parents, my grandparents, my friends, my house burned down with all of my possessions. I lost my ability to code due to burnout and had to spend several years doing nothing.

During my burnout experience I was basically forced to confront the roaring void of existence. I spent time at a monastery and contemplated the futility of it all.

And yet at the end of all of this, I considered what else is there to do with life but to begin anew? And now that I have lost everything, I am no longer naive. I know what is possible to have, and what is possible to lose, and I can act with understanding from past experience. I feel far more capable of success now that I know what it is to fail in the hardest ways I can imagine.

davidscolgan··on Why I Hate Frameworks (2005)
Strongly agree. For me the mark of a useful framework is that is reduces the complexity of the task you are trying to do. If it increases the complexity of the task, it isn't the right tool for the job! Choosing the right level of abstraction is the most important part of software engineering.

If all you need is HTTP routing, then Flask is great, but every time I tried to use it for the kinds of things Django is great at (databasing, templating, forms), I had to effectively roll my own crappy version of Django. (Something something every sufficiently large C++ program has a poorly implemented version of LISP embedded into it.)

I saw this dramatically demonstrated by an enormous Flask installation that would have greatly benefited from a little imposed structure. I bounced hard from that gig after being shown the code because it was going to be a massive pain to understand the poorly designed abstractions. But it wasn't even the maintainer's fault - it was pretty good code but it had only been designed by one person, both the abstractions and the business logic. And the abstractions were leaky simply because abstractions are difficult to design.

The framework allows you to completely offload the architectural decisions underneath the framework to many person-years worth of design, bug squashing, and security fixes. How do I add headers to a request? Django has one opinionated way. Where do I put my database models? models.py and if you put them there you don't have to do any connection fiddling.

The ideal of a framework is that if you release attachment to how things you don't actually care about anyway are done, you get thousands of free high quality lines of code.

I learned a lot from Sandi Metz about the costs of "The Wrong Abstraction" https://www.youtube.com/watch?v=8bZh5LMaSmE

davidscolgan··on Psychological and psychiatric terms to avoid
I have autism and only discovered it two years ago at age 33. I have been intensely researching it.

The book Neurotribes presents a very in-depth picture of the history of autism and the research and theories for the past century.

This is not saying that autism is not real, that it is not a thing to understand, or something that should not be researched. It is only saying that the idea that autism is On The Rise in a terrifying way, that it is something to be feared, is misguided.

As this article says, and as the book Neurotribes explores in depth, autism used to have much more strict criteria for diagnosis. Connor, the leading researcher of autism for much of the 20th century, was convinced autism should only cover the most severe cases, and he did not like the spectrum idea. As time went on and it was realized that many more persons may have some aspect of autism even if it isn't extremely severe led to the DSM making the criteria much looser. The authors of the DSM particularly noted that this may make it seem like the prevalence was increasing when in fact it was simply more widely diagnosed.

The reason for caution of using the term "autism epidemic" is that it spooked many parents into thinking there was a horrible plague afoot, and that it needed to be cured.

My current understanding of it in myself and wider society is that it has always been around, that those on the spectrum hold an important place in society, and that rather than finding a cure (if this is an epidemic) is more important than understanding autism and advocating for services to help those who have autistic children.

This absolutely does not seek to discredit the indeed heroic efforts many parents have gone to to support their children, in fact by being more precise about what is happening the hope is that autistics like myself can have even better outcomes.

davidscolgan··on Manim: An animation engine for explanatory math videos
Yes, I've heard him say in a few places in his videos that he gives his blessing to this fork and encourages its use over his own repo for that exact reason.
davidscolgan··on LDtk: A modern and open-source 2D level editor
Oh hey it's deepnight - I remember your awesome Ludum Dare games. Thank you for sharing this tool with the gamedev community!
davidscolgan··on MS Paint IDE
Ah I am in no way trying to be dismissive - this is really cool by itself, and it feels like there may be applications of this that would be highly useful at the same time.
davidscolgan··on MS Paint IDE
It feels like there is a kernel of something realllly cool here but I can't quite tell what it is.
davidscolgan··on A bot that converts Reddit threads into ace attorney scenes
I've wondered if the AI superintelligence everyone is watching out for is actually slowly being built from the bottom up, and encompasses evening in the entire world. Deep Thought from Hitchhiker's Guide is seeming more and more plausible to me. Perhaps this bot that makes Reddit videos doesn't do anything "useful" per se, but it is doing what a human might otherwise do, and adds itself to Reddit as an entity that could be indistinguishable from a person making silly videos.

What percentage of Reddit comments are bots? I'd be curious to know. SaaS and Lambda functions and and APIs are all like very complicated neurons that link together to form this world wide web of interactions.

I've wondered if an approach to the AI alignment problem is really to see that the entirety of all the computers in the world are a giant brain that is continually self-improving. Phoenix Wright bot is one neuron, like any other. And so to align the world AI, you have to align the culture that makes the AI. And so, basically, anything that one does to improve the culture in a sense improves AI.

davidscolgan··on Three reasons fungi are not plants
My partner showed me the book The Hidden Life of Trees:

https://www.amazon.com/dp/1771642483/

It suggests that trees may have some kind of hive intelligence in their roots and through the fungal networks they can communicate and share resources. It isn't something that I've investigated in a ton of detail but the ideas seem scientifically informed.

davidscolgan··on Ask HN: What are you working on?
Assume you mean https://decisionproblem.com/paperclips/? One of my favorite game experiences ever about an ever-expanding AI. Best without any spoilers. I still think about it sometimes. Discussion: https://news.ycombinator.com/item?id=15474055
davidscolgan··on It’s the End of California as We Know It
I'm a freelance web developer from rural Indiana and want to move somewhere in the US I can at least possibly stay for a decade or more. Does anyone recommend a city/state that will survive the climate apocalypse, that is well managed, and/or that is doing everything the author of this article is saying California isn't doing?

I've had a hard time figuring out where to live since I don't have to be anywhere in particular for my job.

davidscolgan··on Ask HN: How do you share/organize knowledge at work and life?
Currently I use Dynalist.io, which is like Workflowy but adds the concept of documents and has a ctrl-P like fuzzy finder. My notes are a complete mess and I have not found a way to organize them into anything useful. Right now my brain dumps are basically write only. Solving this is an active interest of mine, since I want to publish my thoughts at some point.

My coach Malcolm Ocean has been speaking highly of https://roamresearch.com, which looks like a promising way to keep track of research-style notes.

davidscolgan··on Ask HN: How Do You Read?
I recently realized I have ADD minus the hyperactive. I never was able to finish books until I started listening to audiobooks with Audible.

I have a subscription and generally pick up a new book I've heard of that interests me right away either with a credit or just buying it.

This allows me to read while walking and riding the bus and doing the dishes and generally turns uninteresting chores into something interesting while also allowing me to read. Something about having someone read to me is way less difficult than reading it myself.

I generally don't worry about explicitly remembering anything unless there's something particularly amazing. I read nonfiction mostly and my theory is that the goal is to generally educate myself so that my worldview is shifted to be more accurate, and instead of asking "what would that book advise me to do?" I can ask, "What would I do?" and what I would do has been influenced by the book.

Good books I just read more than once. It's much faster for me to listen to a book twice than to read it carefully once. And regardless, someone said something like it's better to read the best book 100 times than 100 books 1 time.

My record is 4 times that I read Antifragile by Taleb. A scarce few are 3 times, several twice. As I once heard, keep reading books until the ideas start to repeat themselves.

Maybe I don't remember everything as much as I would if I took copious notes, but I certainly get a lot of books read this way (sometimes one in a few days if it's good enough) and it's in a way that happens without effort. I've been mulling on the idea generally that best practices that I won't actually follow are inferior to slightly less than best practices that I will do.

davidscolgan··on The New Nomads of VanLife Reflect an Enduring Divide
Sure, but my ultimate goal is to escape the rat race, and if I have to spend my whole life stressed to get there that sounds like just a different extreme that is unappealing.

I guess what I'm more saying is, the default seems to be stressed out about money, and in order to avoid that you need leverage of some kind. One option is to work a ton, another is to take a high remote rate in a low cost of living area. It allowed me to work 20 hours a week right out of college instead of waiting until I retired. I also freely acknowledge that this is harder to do with a family.

davidscolgan··on The New Nomads of VanLife Reflect an Enduring Divide
I've realized that my level of financial safety I feel is directly tied to the amount of margin for error I have.

I'm from rural Indiana and grew up in with a comfortable but relatively low standard of living. Going out to eat was spending $3 at Wendy's. All dollar amounts any business talks about still feel mindblowingly large.

Then I got a computer science degree and got into remote freelance web development. At first it was hard, but with shared rent at like $120/month, it didn't really matter. I could keep trying until I succeeded in freelance without much risk because I had margin for error. Rent was covered in a few hours of work, and every subsequent hour built my buffer.

My rate went from $50/hr to $90/hr to recently $125/hr while still living in this low cost of living area, and my margin for error increased even further. I think I got used to this and didn't realize how much margin I had compared to many people. I realized I could live a comfortable life working only 10-20 hours of billable work a week, and combine that with regular recurring clients and there was very little need to hustle for new work. Life was pretty chill. When my first girlfriend told me that "you make more in a day than I make in a week" I didn't really know what to say. Of course we were talking about something like $900.

I never understood how people could say that $100,000 a year wasn't enough money until I moved to Chicago. I kept the same relative amount of income at around $60k working 10-20 hours a week, but my cost of living probably quadrupled. I loved it there but there was so much less margin for error. My finances started to drain and my stress increased, and I had to take more work that I struggled to complete to pay my now $1080/month rent and buy $30-$40 dinners when going out with friends. And there were people around me making much less somehow surviving. I lived like I had margin but I didn't, so I recently moved back to Indiana.

My real goal is to spend more time working on my business anyway, and hopefully if those take off it will give even more margin. But until then, freelancing a few hours a week and living cheaply gives me infinite runway and no financial stress. Sure this town has 6000 people in it and the most exciting thing to do is walk around the local park, but I once again have margin for error.

All that to say, the van dwelling people seem to be experiencing something similar, as you describe. If finances feel like quicksand, there are interesting options for ways to gain leverage, especially as a developer.

Some of the most free and wealthy (in terms of purchasing power) people I know do this. Compare the person who can't pay all the bills with $20k a month (a figure I recently heard from a real person!) with my friend also living in this town who is extremely frugal who spends $1000 a month and built up $40k in savings from a job. She is now writing novels and basically doesn't work unless a good freelance gig comes up.

Another friend moved to Lithuania and teaches part time at a college for a visa and worked remote tech support for a US company and made $60k a year and saved nearly all of it. Now he does whatever he wants.

Nomading is another way to get that same leverage. There are others if you are creative. I'm always excited to read about people doing interesting things like living in vans, because I've found there to be so many more options if you are willing to look outside the normal ways of doing things. Many are even pretty comfortable. You may not want to move to Indiana or Lithuania, but it is an option.

davidscolgan··on Why All of Our Games Look Like Crap
This thread reminds me of patio11's thread "What I'd Do If I Ran Tarsnap" where Colin took a strong contrarian stance and everyone raged against it and in the end Colin won from all of the exposure.

In case you didn't read the end note: "I am writing these blog posts to get attention to our newest game, Queen's Wish: The Conqueror." I'd say he succeeded pretty well in that aim!

davidscolgan··on I Can’t Stop Winning
One thing that helped me recently - I realized that my work is not a reflection on my value as a human being.

I grew up in a semistrict religious context, and regardless of whether it was intended, I internalized that everything I did was a reflection of my righteousness and value as a human and even to a degree my worthiness to be accepted into heaven.

I've since stopped practicing that kind of religion, but I realized I have still been treating say my freelance work as a _moral_ question - if I do it right, I am good, if I mess up, or take too long, or there are bugs, my emotions still process that as if my eternal soul is at stake. Leading to, procrastination, stress, and withdrawing from communication because I'm afraid of punishment.

I had some really good conversations with clients lately, just being upfront about my fears of blowing timelines and admitting to withdrawing, and they were very understanding and to hear them acknowledge that this stuff is hard and that I was doing a good job was massively motivating.

Hopefully most people don't have this issue, but if you do, it was very relieving to even just realize this is what I was doing, and am working with a really good therapist and a business coach to process and work through it, and I'm already seeing a lot less stress as a result.

davidscolgan··on I Can’t Stop Winning
Agree - if you hate your freelancing setup, consider a change in setup. I've basically got it where I have two long term ongoing clients where I'm effectively a part part time remote employee. Weekly checkins, do 10 hours a week, minimal fuss. If you aren't being respected as a professional, consider if your rate is too low. I'm charging $125/hr and it's actually increased the quality of clients. Of course this assumes you are sufficiently good enough to be worth a high rate and can self-manage.
davidscolgan··on I Can’t Stop Winning
> A one-person business is an exercise in long-term anxiety management, so I would say if you are already an anxious person, go ahead and start a business. You're not going to feel any worse. You've already got the main skill set of staying up and worrying, so you might as well make some money.

This hits very close to home, guess I might as well embrace it! I'd probably be just as anxious at a normal job anyway and am determined to figure out anxiety management.

davidscolgan··on Ask HN: What are you working on?
As someone who recently discovered unaddressed ADHD has been holding me back so much for so long, as well as experiencing that numbness of depression too, you are not alone and I have felt at least some of what you are experiencing. I wish you all the best in working through it.
davidscolgan··on Ask HN: How do you retain motivation/knowledge over different projects/fields?
As far as staying up to date on technology, I am heavily in favor of using boring technology (see http://boringtechnology.club) for my own projects. The biggest consideration for me is, will this tech still be around in 5 years, and will it have required me to do a full scale rewrite or massive breaking changes upgrade?

I've gotten a lot of mileage out of Django for that reason, as even with the Python 2-3 thing, Django has been very stable compared to a lot of web stacks I've seen. It's 15 years old, and I fully expect it to still be around in another 15 years.

React was being adopted by companies when it was still at version 0.12, and while it did end up staying around, it was not guaranteed. I would have been hesitant to use it at least until v1.0, and probably would rather have waited until v2.0.

Now React is the frontrunner and unlikely to go anywhere. They've also maintained backwards compatibility mostly from what I've seen, as Facebook has 180,000 or whatever odd components they don't want to rewrite.

I wouldn't use Elixir/Phoenix currently, unless it was extremely helpful to the project, just because it's a less mature technology. It sounds like a wonderful ecosystem, but if I'm making a business decision, risk is what I'm wanting to minimize.

This is the biggest reason I was sad that VueJS seems to be flirting with a large breaking change. I had thought Evan originally said they _wouldn't_ be pulling an Angular 1 to 2 rewrite the whole framework, and though this doesn't seem as bad, it still is a different way of doing things.

You know what hasn't changed in 10 years? JQUERY! Ha!

So as far as how I'd keep up to date, my answer is that I'd try to choose a preferred tech stack that is stable and try to get really good at it. Django has been the only full stack framework I've needed to learn in my 8 years of contracting, and that's worked well for me.

davidscolgan··on Ask HN: How do you retain motivation/knowledge over different projects/fields?
For me, being a solopreneur is the ultimate challenge. Can you arrange your life in such a way to be able to juggle all of the balls you specified? I've been struggling with the same questions lately as someone doing part time freelance to fund ambitions of building a product.

I recently read the book The E-Myth, which identified for me a serious problem I overlooked for a long time: A programmer is a technician who is an expert in a craft, along with writers, designers, etc. One day the technician is overcome by an "entrepreneurial seizure" and declares "I do all the work around here anyway, I could totally run a business better than my boss." And so the technician goes into business and runs themselves into the ground because they didn't realize there are actually three roles necessary for a business to work:

1. The Entrepreneur, who sets the vision 2. The Manager, who organizes 3. The Technician, who does the implementation

The E-Myth argues that the technician is actually the least important of the three, and even should eventually be replaced with employees if you actually want to run a business. As someone who wants to be a solopreneur and stay that way, my hope is that it's possible to still be the technician, as long as you can actually balance the other two roles.

As someone with ADHD-like tendencies, I've recently realized that my life has been in relative chaos for years working for myself. There were no standard operating procedures since I wanted "freedom" to work how I wanted, but that's meant effectiveness is directly tied to my mood at the time. I neglected the Manager's role.

I've also come to see that having a clear "why" for doing what I'm doing is vitally important at least for me. This is the role of the Entrepreneur. Otherwise I'll just sit thrashing about with various web frameworks and coding standards, forgetting that building a product people want is why I'm here.

Working to balance my technician time with manager time and entrepreneur time has been really helpful for motivation. Procrastination for me seems to come from being unclear about what I need to do next, and "build product" is not a good todo list item.

As far as forgetting, Sebastian Marshall wrote a piece called "Background Ops": https://medium.com/the-strategic-review/background-ops-1-str.... He makes the observation that otherwise intelligent people will just stop doing things that are good for them for no real reason. The E-Myth agrees with him here that as much as possible should be put on autopilot so you can use your limited willpower for creative purposes instead of deciding what to eat for breakfast today.

I've been mulling on the idea that freedom is not the ability to do whatever you want to all the time, but rather the ability to decide what rules you will impose on yourself. I can use my creative energy to say "I have determined that I do my best work in the morning, so I will wake up at 6am" and then I'll make my lizard brain wake up at 6am whether it wants to or not in the moment. The lizard brain often will just go with whatever is in front of it if it can just get started!

Hopefully this is useful, I'd love to know more about the specifics of what you've tried and what's worked and hasn't. Great question! I'd also be happy to chat more over email.

davidscolgan··on One In Five Employees Is Highly Engaged and at Risk of Burnout (2018)
I just do a PPO plan on the health insurance marketplace in the US. I pay about $500 as a single person nonsmoker 30 year old male. It's been fine so far.
davidscolgan··on One In Five Employees Is Highly Engaged and at Risk of Burnout (2018)
I'm a freelancer and realized yesterday that I haven't had a real vacation in 8 years, but also that every one of my clients would probably say yes definitely if I told them I needed a week off. And they did, and I'm taking off next week and I have never been so excited in my life.
davidscolgan··on Writing a game engine in pure C: The Graphic Initialization
This is super cool, well done OP! It looks like you've got some pretty in depth and interesting articles around the rest of your site too. Big props to you and everyone else who puts themselves out there and works to create something that helps others.
Page 1 of 5Next →