Live data from Hacker News

Handmade: A Community for Self-Rolled Performant Software (2016)

handmade.network

91–96 of 96 posts

Re: Handmade: A Community for Self-Rolled Performant Software (2016)

#91
post #13

Why is that we praise hand-crafted objects in the real world while at the same time deriding such hand-crafted code as a quaint curiosity that can only make sense as a hobby of the hopelessly romantic? Do we compare your local carpenter with IKEA, or that delicious, nutritive and healthly meal you cooked with McDonald's, in terms of pure (developer) performance? Do we obsess over how a handmade jewelrer can't scale o…

There is a trifecta of the art of code, the art of discipline (engineering), and the art of servicing others (business).

A core challenge is that "success" in the modern day starts with business --> engineering --> art.

Like, you will read countless articles of "sit with your customer" or "customer obsession" or "code first and you will fail", but that is from the perspective that business > engineering > art.

Handmade exists such that art > engineering > business.

I praise it just like I praise a handmade piece of furniture made by a master. However, I have the luxury to appreciate it.

The real struggle is finding a place in life between the spectrum of art and business. The key that I have found is the see the spectrum, appreciate it, and adjust the career to find balance, learn what you can, and move on.

My hope is to retire focusing 75% art and 25% engineering, and not worry about the business side. For instance, I have built a programming language for board games: http://www.adama-lang.org/

The key thing that I am focused on is how I think about success, and my #1 metric is whether or not I enjoy working on it.

Re: Handmade: A Community for Self-Rolled Performant Software (2016)

#92
post #19

Earlier quoted context omitted.

There also used to be a meetup in Seattle https://www.handmade-seattle.com/ (which has since moved online due to the pandemic situation) but in the past they had some pretty good presentations and interesting speakers. You can find some videos of them online (Youtube: "HandmadeCon" and "Handmade Seattle") although regrettably there are no recordings of last year's meetup.

I'm in the process of getting a few of them officially up. I had lost contact with the cameraman after COVID, but we're in touch again!

I'm looking forward to this! I love everything about handmade and can never get enough content haha. I've definitely watched a few of the handmadecon videos multiple times.

Re: Handmade: A Community for Self-Rolled Performant Software (2016)

#93
post #13

Why is that we praise hand-crafted objects in the real world while at the same time deriding such hand-crafted code as a quaint curiosity that can only make sense as a hobby of the hopelessly romantic? Do we compare your local carpenter with IKEA, or that delicious, nutritive and healthly meal you cooked with McDonald's, in terms of pure (developer) performance? Do we obsess over how a handmade jewelrer can't scale o…

There is a trifecta of the art of code, the art of discipline (engineering), and the art of servicing others (business). A core challenge is that "success" in the modern day starts with business --> engineering --> art. Like, you will read countless articles of "sit with your customer" or "customer obsession" or "code first and you will fail", but that is from the perspective that business > engineering > art. Handma…

> The real struggle is finding a place in life between the spectrum of art and business.

Well said. In my adolescence I was all the way on the "art" side, and as I grew older, at some points I was forced to be all the way on the "business" side, just to survive.

Along the way, there was a break in routine, and I was unemployed for a good part of a year. During that time, I naturally pursued "the art of code", as you put it - creating all kinds of software for fun, with no business goals whatsoever.

It was handcrafted code, patiently and lovingly written, that aimed for simplicity and my own aesthetic. My "production routine" became a more organic creative process. I wrote what I felt like, when I felt like it.

Then, by chance, one of the first open-source libraries I wrote became somewhat popular. It led to a trickle, then a stream of clients. Somehow I had lucked out in finding a niche, where people appreciated my craft.

A decade later, I'm still riding that wave - blessed to have a life with a sensible balance of art and business. Now that I have better financial security, I want to shift the balance back to where I came from, to bring the focus back to "art" - and at the same time, continue to flourish on the business side.

Re: Handmade: A Community for Self-Rolled Performant Software (2016)

#94
post #75

Earlier quoted context omitted.

SQLite is written in C.

And SQLite has a page on why [1] that explicitly lists the benefits of C for the project. Not on that list: bug reduction. Moreover, it has an almost superhuman level of effort put into testing and verification. SQLite is just one piece of a broader argument that C's inherent risks aren't completely unmanageable. All it takes is an incredible amount of diligence, tooling, expertise, and money. [1] https://www.sqlite.…

Your comment said "no one writing in C has bug reduction as a priority." Bug reduction is a priority for the SQLite authors, and it's written in C. This feels to me like an indication that it is a priority: https://www.sqlite.org/testing.html

Re: Handmade: A Community for Self-Rolled Performant Software (2016)

#95

I've been writing C code for more than 30 years, C++ for 27. I've written code at every level of "the stack", from kernels of several nix-related operating systems to application GUIs. I've worked on "plumbing", on libraries, and on applications. And here's the thing: I understand, at a very very deep level, precisely why my application is slow to start up. I understand it at every level from the semiconductor gates…

So what you're saying is that it's okay for Windows Modern photo app to take 3 seconds to boot up and show an image on the monitor? And it's okay for the image to be blurry and misplaced in the first couple of frame, then corrected in the next couple of frames. And it's okay that it crashes once in a while too, and it's okay for it to be frames behind when resizing, because all of those things is simply the result of features and layers of abstraction that have some little purpose whatever that purpose might be. And you're okay with your software suffering for it?

To me, it's completely unacceptable and not the userexperience I want to give. Where do you draw the line is the question, but I personally want to provide the best experience possible.

The quality of software these days are extremly bad, buggy, big, and slow. And I'm not okay with it, despite how many reasons there might be. And the reasons for it is usually massive amounts of code, frameworks, and layers up layers upon layers of abstractions.

So you want your software to check updates? Well find a way that doesn't make the start-up time or user-experience suffer for it- otherwise don't implement it. That would be my answer to that. I know standards like that can be hard achive in a business, but those are the goals I want to become better at achiving. And to me, that's what handmade is about; giving me the confidence to build my own systems, making them more responsive, and provide a BETTER user experience. Maybe with less features, yes. But at least the features that are there will be extremly good!

Re: Handmade: A Community for Self-Rolled Performant Software (2016)

#96

I've been writing C code for more than 30 years, C++ for 27. I've written code at every level of "the stack", from kernels of several nix-related operating systems to application GUIs. I've worked on "plumbing", on libraries, and on applications. And here's the thing: I understand, at a very very deep level, precisely why my application is slow to start up. I understand it at every level from the semiconductor gates…

So what you're saying is that it's okay for Windows Modern photo app to take 3 seconds to boot up and show an image on the monitor? And it's okay for the image to be blurry and misplaced in the first couple of frame, then corrected in the next couple of frames. And it's okay that it crashes once in a while too, and it's okay for it to be frames behind when resizing, because all of those things is simply the result of…

I'm not saying that any of these things are OK.

I'm saying that I know that my application does not start up as quickly as the hardware I personally run it on would suggest, and that I know why that is, but that doesn't help me know what to do about it.

Post reply on HN