Why Build Toys
blog.aaronkharris.com
blog.aaronkharris.com
For instance, I launched a bunch of games that are, frankly, more fun to watch, than to play (e.g. an All-hands meeting simulator: https://rafsters.itch.io/all-hands) or little tools this one https://sonnet.io/posts/reactive-hole/ (it's stupid, completely replaceable, but somewhat adorable).
I come from a family with 4 generations of carpenters. It's a profession more similar to software engineering that most engineering jobs I can think of. The main difference is that in our domain so often the results of our work just don't feel real.
If you're in this situation and this frustrates you, either build something small that people would use OR go ahead build something useless, but intentionally.
Ha! Fantastic.
> I come from a family with 4 generations of carpenters. It's a profession more similar to software engineering that most engineering jobs I can think of. The main difference is that in our domain so often the results of our work just don't feel real.
That is the core issue I have with software development, it can feel ephemeral and extremely temporary.
My remediation for this is partially game development too, since the artifact you create is immersive and directly enjoyed by others, it can make you feel surprisingly connected to the world.
Contrast that to a fine piece of furniture which barring fire or flood can just sit abandoned in a warehouse for 300 years and then be even more valuable than it was initially.
That blog post is old, urbit does exist now.
Also: Is "C. Guy Yarvin" Curtis Yarvin?
Yeah, Urbit was Yarvin's project until 2019 when he left the company.
One way to do this is to design a system where all events of the system can be replayed from start to finish in an immutable/repeatable way. Taking the advantages of state guarantees from functional language design and applying something similar to an entire OS.
You can design something that abstracts this general design away from specific implementations of pieces that interact with the underlying system today (*nix).
This podcast doesn't a decent job of introducing some of the concepts: https://podcasts.apple.com/us/podcast/understanding-urbit/id...
It's a little hard to summarize in a really short comment because there's a lot of new/first principles thinking that doesn't analogize super cleanly to the existing software stack people are familiar with (which is why it's interesting).
Yeah that's Curtis Yarvin, I think his neo-reactionary politics are wrong [0], but the design and ideas behind urbit are good (and he's no longer directly involved in the project).
[0]: https://slatestarcodex.com/2013/10/20/the-anti-reactionary-f...
I have had several existential crisis wondering *"what the fuck am I doing this for, we produce nothing."*
---
This happened to me at FB, SF, Lucas, Brocade...
I was like "yeah, im doing well professionally, making money - but at the end of the day, it was just "we produce nothing of intrinsic value"
I find it ironic that NFTs are now the version of creating something of digital content, but it has non-fungible (intrinsic value) and they are attempting to make a money laundering network out of NFTs (if you may not be aware, the art market is the largest money laundering scheme ever devised up until where we are at present.
I am currently going through a mid-life, as I can't stand tech at all - but its all I know, so I am attempting to just get into gardening and maybe work at a nursery...
Idk about that. You could say the same about a farmer or a banker or a teacher etc. Even the guys who build the Empire State building - there were probably hundreds of them, each only building a small part - and someday that will get lost in time also.
“Intrinsic value” is whatever you define it to be. I guess if you’re working for some ad-sales-management company making software for other big companies, then you probably don’t think you’re making much intrinsic value. But my philosophy is, just try to make the world a slightly better place to live in when you leave. And even a small library or project may help others working on bigger projects, which influence bigger projects, which cause real change.
The guy who produces one tomato is worth more than the entire team who produces, say a mobile DLC/Gambling/betting game.
CMV
Absolutely not. None of these professionals are ever working on superfluous projects of unknown worth to the society. In fact, their worth to the society is immediate and totally tangible: you couldn’t eat without the farmer’s work, you wouldn’t have a house without the banker, and you would be dumb without the teacher.
However for most software projects, you would have a hard time to define their positive contribution to the society. Not saying useful and positive software doesn’t exists : there are plenty of those. But they are a visible minority in a sea of unknown, buggy, driven by bankable MVPs rather than useful and well crafted user centered software.
If it were up to you, alone or with a team you're in charge of, do you think you could come up with a piece of software which would be less ephemeral and more lasting, perhaps being able to work unadministered or requiring minimum administration for a while, and be usable AND useful for years without any major changes?
What would it look like, and what would its pieces be made of?
---
With that said - I love this question!
---
The premise, as interpreted:
**"A self-teaching application which can adjust behavior and performance with minimal input"**
---
Proposal A: [NMAP/PRISM/ETC for AI/ML systems] ((I'd be sure Palantir has this covered...))
This one will be long winded and off-the-cuff based on some work we did with tracking software in the past (people places, things, things-that-kill-people-places-and-things, etc)
I would like an AI awareness layer whereby an AI/ML system can locate adjacent 'other' systems and either silently learn - or actively map/learn etc...
We have had netmon tools for decades. I'd prefer a single firewall device;
I plug it in at home - and its my VPN/PROXY that ALL my familial devices run through. ALL.
So its just a simple VPN etc - all my mobile devices in the family of devices only route through my home device - which in-turn also keeps a small constellation of other nodes several hops out - such that BGP is sorta accomplished - cant get to primary node, go here instead.
I've designed SDNs on mass-fiber btwn HK, JP, Indonesia, Malaysia, etc...
Its doable (this is when Palo Alto Networks was just coming online with their product line...)
Doing this in a manner which utilized AI/ML/etc to more intelligently setup these systems...
Yes I could lead a team that does that....
Lets think this thing out into the zeitgeist and if its lame, then let it die - if it is not lame - then I will work with anyone who may want to explore it?
Anything beyond putting together existing components?
Thank you for responding, I am intrigued by your ideas.
Network, storage, memory and compute (GPU is included in compute). Aside from any other mortar you may need which can be available as a service, that is the premise of all that we do with machines.
Honestly, its a straightforward concept - and products exist in the enterprise for just this: MDM (Mobile Device Management) -- you can deploy and manage (and monitor and spy on) any provisioned device through your ITMS...
There should be a product for homes that provides all that you said - with archive, backup, MDM, blogs, calendar, todo, etc...
I pitched this years ago "Facebook in a box for the home"
I pitched it to YC, to others from Goog and FB...
I was told "nobody will want that"
Take a look at the sort of old software people write emulators for.
There's an active scene that resurrects 70/80s video games - Space Invaders/Galaga/Defender et al have way way longer useful life than most of the software written in the subsequent ~40 years.
IBM maintain a VAX/VMS emulator, and there are various ports if it (including OpenVMS and an x86 version). This is mostly (I think?) used for "legacy apps" particularly finacuial/governemnt/adacemic/military software written in Cobol, Fortran, or Ada.
Looking at those sorts of software would be interesting in terms of knowing what sort of 40+ year old software people still care about...
I think it depends on what you work on. For example, I once created a small program to split some file for my mother. She uses it every day at work and saves ~30 minutes of manual work. It's a source of pride for me. She can use that time to work on more substantial things, maybe come out of work earlier sometimes, and in general avoid some mind-numbing work. Many people use computers these days, and by being programmers we have a lot of power in our hands. You can reason that saving a bit of time will amount to nothing in the end, but it usually generates lots of positive feelings.
You can choose the type of company and the value it provides... plenty of companies that produce meaningful software products.
I met a traveller from an antique land,
Who said—“Two vast and trunkless legs of stone
Stand in the desert. . . . Near them, on the sand,
Half sunk a shattered visage lies, whose frown,
And wrinkled lip, and sneer of cold command,
Tell that its sculptor well those passions read
Which yet survive, stamped on these lifeless things,
The hand that mocked them, and the heart that fed;
And on the pedestal, these words appear:
My name is Ozymandias, King of Kings;
Look on my Works, ye Mighty, and despair!
Nothing beside remains. Round the decay
Of that colossal Wreck, boundless and bare
The lone and level sands stretch far away.”
Ozymandias by Percy Bysshe Shelleyhttps://commons.wikimedia.org/wiki/File:Luxor_Temple_-_panor...
On the other hand, some ephemera does stand the test of time pretty well, whether by being ensconced in an environmentally controlled room like a tomb (ie incorporated as part of a long lasting work) or via heavy replication and meme-worthiness, like the Odyssey, the Bible, or the works of Shakespeare.
In one of these Harry Melling plays a handicapped performer of poems in the "wild west", and the segment starts with him reciting this poem. Liam Neeson plays his manager. The segment is one of the most Darwinian, cold things I've ever seen. The whole movie is great, but this vignette especially.
EDIT: the beginning of the segment: https://www.youtube.com/watch?v=GdQKUvv3bew
I think the biggest difference between software maintenance and maintenance of most physical objects is that physical maintenance is calming, tactile and pleasant.
Routine software maintenance, on the other hand, is hacky, frustrating and stressful.
I would much rather sharpen my knife on a whetstone than fix a dependency on a CI server or wrap my head around Apple's latest code signing bullshit.
A lot of folks don't think this way. I do, but I know many who don't so it's important to remember that, especially when trying to make systemic judgements on fields of industry.
I may be a little bit biased in this area as I had to spend a lot of time dealing with a build system that my company had rolled themselves, with one maintainer that spent his entire week just putting out fires, all while under high pressure from deadlines and also external pressure from home eviction, wedding, side businesses).
I just cannot relax or have fun when dealing with WiX or qmake failures or dependencies disappearing.
"Make the world a better place?"
to the agenda
It's a really fun workflow: I doodle on my tablet, airdrop the psd, convert to PSB (makes skinning/rigging easier) and import into Unity to animate.
What makes it fun/rewarding is the short feedback loop, in less than 1-2 minutes you get something to play with.
Though calculus plays a role in information theory (and of course in some application domains such as computational fluid dynamics and machine learning).
Software engineering is more like a trade or craft, except that it's new and still evolving.
In software, we started with a programmable loom, stagnated for a few centuries, then all at once had tools and systems too complex to understand all of their implications.
It would be like taking apothecaries from the 1700s and putting them in the middle of a massive industrial chemical plant and hoping they make useful things that don't break easily or have design flaws.
Hi Aaron! And, yes, you're 100% correct--I've had more of those recently so needed an outlet. I'm (mildly) sorry you had to go through this again.
Like, I just added printer support.. https://twitter.com/LeapJosh/status/1413803026062745600
But for the sake of the trees I'm making it grueling https://twitter.com/LeapJosh/status/1414411610844803072 https://twitter.com/LeapJosh/status/1414678420177440769
Does anyone even own a printer these days? Who knows? Don't care! The feature's true purpose is to try and draw out a smile, and from there maybe a look. The fact it actually works is a nice side effect.
it's a blessing that some (physical or not at all) toys still exist without being monetized.. although the trends with everything-being-appz might kill that some day
maybe OT, but some 10+y ago, i passed through few continents and cultures within 3-4 months, and while looking for toys for the kids to bring home from that journey, in plenty of places, i realized something.. the culture/society is somehow representable by what toys it makes for it's kids. Somewhat like the cultural dimensions thing, but in different aspects.. Like shallow vs deep, curiousness vs just-grinding, beautiful vs ugly, well crafted vs cheaply, etc. And funny, Rich/expensive as $$$ doesnot always correspond to richness of toy-experience/perception. Of course it's rather subjective, YMMV
Can you give some examples?
I've spent the last 7 years doing a lot of travelling around Asia, India, and Europe. I've observed quite the opposite, so I'm curious to know what you've seen that I've missed.
Currently I live in Vietnam and I polled a couple of Vietnamese people who are sitting with me about what their children play with (it turned into a really interesting breakfast conversation, so thanks!).
Their answers:
Boys play with cars, water guns, toy soldiers, and such. Girls play with dolls, toy kitchens, toy houses. Both play with modeling clay, coloring pens etc. (or Lego if the parents are progressive). Boys role play as soldiers, girls as princesses. Both role play as things like shopkeepers. This also includes data from people's childhoods 30 year's ago so I don't think it's a sign of Westernization. The main difference over the past 30 years is more plastic (of course) and that many people are much richer now. The main difference I've seen is that electric bikes for older children/teens are very popular here (I think bikes are a tool rather than a toy though).
This seems very similar to what children in Europe play with, and ties in with my observations in other countries. But of course, even a lifetime of travel would only give me insight into a fraction of cultures so more info is welcome.
The big exception is in remote areas in the countryside where people are very poor and can't afford many toys.
Blog post: https://web.eecs.utk.edu/~azh/blog/makinguselessstuff.html
HN discussion: https://news.ycombinator.com/item?id=27256867
Reddit discussion: https://www.reddit.com/r/programming/comments/njcpxt/why_i_p...
The notion of doing something for which I don't care about github stars or readability or even good programming practices (1000L files!) it's SO FREEING!
Thanks for that article, it has helped me found the joy I had when I was just poking around on the computer, which I've missed now that I'm a "professional"...
When my motivation to do something is money, even if I find whatever I do interesting, I'm only doing it for money. Looking at it differently, if I wouldn't do what I'm doing if I wasn't being paid for it there the motivation is not the activity itself but the result.
Doesn't "careless" and "serious" are opposite to each other? I find that when I'm working on a project that I'm "serious" about the focus/motivation/purpose is not the project but the result. The "serious about it" is usually something outside of the project.
You know, intrinsic vs extrinsic motivation.
On the other side, I'm right now working really hard to be careless an free about a new project that I'm actually serious about, even as I'm working for it to make money, but the only way that I can accomplish that for myself is by approaching the project as an experiment/adventure and after exploring the worst case scenario realizing that even if I lose $x finite amount, I'm fine with that.
It's quite hard for me tho, maybe you have stronger character than I!
You say "haven't quite figured out" - does that imply there are things you wanted to convert but didn't see the path for, or that the question hasn't truly come up?
While Aaron's essay approaches the analogy from the perspective of those building, the linked essay approaches it from the market's perspective. For builders, don't take yourself so seriously -- but on the flip side, don't be so quick to write new things off as silly.
Maybe the problem is that what is called/accepted as "serious" is the opposite of it? A toy for shapeing a mind (of kids) may be looooots more serious/important that some $$$$$ made per-day.. kind-a the 4th planet the little prince visited..
It's only with the heart that one can see clearly. What's essential, is invisible to the eye.I came across an article[1] recently that suggests that everything we do doesn’t have to turn into a business. I get why people want that, but my anxiety dropped a bit when I decided to just build the thing I wanted to.
[1] https://repeller.com/trap-of-turning-hobbies-into-hustles/
I'm happy developers have the ability to build and work on things they love. And create something fun.
But, at the same time, endless warnings about the seriousness of toys becoming monster businesses would be more believable if aborting companies and anti-trust wasn't still a shitshow a century after the big trusts.
This isn't the author's fault, but mixing "Let's have a conversation on Big Tech." with warnings about havoc seems disingenuous at best.
We understand that organizations are these complex things that take over everything and shit everywhere. And at the same time build things that make you smile and facilitate community.
We don't as citizens have all the tools to manage that without drama.
I guess the one thing I've realized is the problem with this is the one more feature trap. Sometimes those people who like your toy will never pay for it, which may be fine depending on your goals, but the issue is there just as relentlessly demanding as paying customers. It's demoralizing to have a side-hobby project which you don't want to monetize but still has all the demands from "adopters/customers" that a paid solution would. It just destroys your passion for that project because it ultimately it just becomes work.
Really charging for a product is great and I think hacker culture seems to dismiss it because its not in the ethos but if there's anything in retrospect I think I've learned so far with my many failed side-projects is charging for them is the best way to have a great personal experience and best experience for who your building that product for. Mostly because it aligns incentives appropriately.
As much as I've enjoyed some of my passion projects I can't think of one I ended up "finishing" which I wouldn't get some monetary gain from. Because let's be honest whose passionate about setting up a Jenkins server, or implementing git checks, writing unit tests or creating onboarding documentation for cranky free or OS users? At a certain point a successful side-project/product requires you to do things you wont enjoy doing, and honestly some of those things may be the most important things you do for the "success" of that side-project/product.
I'd rather be spending that time with loved ones, enjoying the sun, which is ultimately far more rewarding than a few git stars or upvotes for ego. With that being said I think if you utilize this approach which is basically just freemium for B2B like projects it could be a powerful step towards finding your ideal customer and getting paid users, but it has to be just that a step towards acquiring paid users.
Just my 2c
90% of the side projects I embark in are likely to have no commercial value, but are pretty cool, at least I’d like to think.
You know non-software nerdy hacker stuff.
It’s nice to hear others are the same or at least enjoy the journey. Maybe this will be the motivation I need to starting releasing them “as-is” which is more of a “journey included, destination not determined” state...
I always thought Airbnb was an awful idea. I didn't pay attention to it for a long time, except to be surprised it was still around when I would see it mentioned. I'm sure the big hotel companies feel worse about that mentality than I do, though it's probably a good thing I'm not a venture capitalist.