HNHacker News
TopNewBestAskShowJobs

kukkeliskuu

746 karma · joined October 23, 2019

submissionscomments
kukkeliskuu··on VS Code inserting 'Co-Authored-by Copilot' into commits regardless of usage
Based on your nickname, you?

I was recently using an inexpensive paper shredder. I had an urge to put in too many papers at one time, which jams the shredder. Taking into account the time needed to unjam the shredder, the end result is that it takes more time for me to process the papers if I give in to my urge than if I resist the urge and only put in just the right amount of papers. Then I can claim that the "shredder is of bad quality", instead of seeing how I contribute to the problem.

As my aim was to shred papers efficiently, my "sin" (sin = to miss the mark, not to hit the aim) was greed, and the virtuous path is to successfully to resist the urge. The blessing I get from the virtuous path is the joy of the flow when I efficiently shred the papers.

Yesterday, I was in a shop when I was hungry, and I felt the urge to buy a large chocolate bar. Being hungry, it would have been a constant struggle not to eat all of it if I had bought it. Eating a whole large chocolate bar does not make me feel so good.

As my personal aim is to feel good, eating a whole large chocolate bar at one go is a sin in relation to that aim. I successfully resisted the urge to buy the large chocolate bar -- and did so by buying a small one. That way I did not "sin" too much towards my aim of feeling good, because small chocolate bar did not affect my well-being almost at all.

On the surface, it might appear more virtuous to not buy any chocolate bar. However, I know myself from prior experience that if I had "successfully" resisted the natural urge at the shop, it might have caused me to later to be unable to later resist the urge to buy a large chocolate bar from a kiosk.

So knowing myself to be the imperfect human being in these scenarios, buying a small chocolate bar at the shop was actually more aligned with my aim of feeling good than not buying it, because the end result was more aligned with my aim of feeling good.

Modern psychology would probably say that this urge is in my superego. Maybe as a child, I learned that I don't usually get what I need, so when something is available, I feel the urge to take as much as I can -- i.e. greed is something that I will encounter in many things that I do, keeping me from hitting the mark. As this is very common way humans miss the mark and deeper in the psychology, it is a Deadly Sin.

Some theological and psychological perspectives posit that the belief that this urge is a part of me -- i.e. I identify with the urge, I believe that "I am greedy" -- is actually part of the problem. So a better formulation would be instead of "WHO decides how much I need" to ask "WHAT IN ME decides how much I need". And then, what is a healthy and useful relationship towards those urges. And it may be different in different circumstances, hence resisting the urge to put in too many papers, but replacing the urge with a lesser one in case of chocolate bars.

The point might not be to learn to "control" the urge -- we can learn from system theory that excessive control might cause a backlash -- in terms of some systems even literally. More healthy relationship is often to just observe -- and then learn how such urges affect my well-being -- i.e. to learn more about myself. Often the observation itself is enough to have an effect.

We can take a corporate analogy (literally, corpus = body) and ask, what in organizations (again, organization has the same literal root as organism) cause them to be "greedy". In other words, what drives organizations to have an urge for excessive profits that they ignore the harms they cause to employees, society at large or even customers (i.e. enshittification). This urge appears very similar as the urge in humans.

That question will lead to other interesting questions about politics, economics etc. For example, you can ask, what is the aim of such corporations, and whether that aim produces results aligned with the aims of societies at large, etc.

kukkeliskuu··on VS Code inserting 'Co-Authored-by Copilot' into commits regardless of usage
The Seven Deadly Sins provide an interesting perspective to human psychology even in modern times. Greed / avarice is defined as wanting more than you need.
kukkeliskuu··on I run multiple $10K MRR companies on a $20/month tech stack
Well for example this is very unique idea and even in the current state it has been very useful at a customer. Almost completely vibe coded but idea is fully mine.

https://github.com/mikko-ahonen/arch-ascent/tree/main/doc/de...

kukkeliskuu··on Ask HN: What Are You Working On? (April 2026)
Recently I have been doing a modern Lotus Agenda clone as a native iOS app. I have been implementing a custom CRM using that platform.

Also, Arch Ascent, which is a tool for evolveing microservice-heavy architectures.

https://github.com/mikko-ahonen/arch-ascent/blob/main/doc/de...

kukkeliskuu··on I run multiple $10K MRR companies on a $20/month tech stack
Are you guys interested in some ideas?

It seems to me that I am getting much more good ideas than I can carry on.

kukkeliskuu··on I run multiple $10K MRR companies on a $20/month tech stack
No disgreement from me.

He does not say what kind of funding he has been trying to get, but if my presumption is right, then some kind of Y-Combinator style hypergrowth.

I think the response he got is sensible if he was approaching "Excel investors" who are risk averse, not targeting hypergrowth.

kukkeliskuu··on I run multiple $10K MRR companies on a $20/month tech stack
It depends on how many non-10K MRR projects you have. Making it possible to try out many ideas cheaply may be a good idea.
kukkeliskuu··on I run multiple $10K MRR companies on a $20/month tech stack
The author says he wants funding to grow the businesses. Presumably he wants funding and the help from investors to enable quicker growth than what is possible organically.
kukkeliskuu··on How NASA built Artemis II’s fault-tolerant computer
The biggest innovation from Google regarding hardware was understanding that the dropping memory prices had made it feasible to serve most data directly from memory. Even as memory was more expensive, you could serve requests faster, meaning less server capacity, meaning reduced cost. In addition to serving requests faster.
kukkeliskuu··on Project Glasswing: Securing critical software for the AI era
I find it believable that this could potentially happen, although I am not sure the difference is so huge to existing models.

I used Opus 4.6 to find security vulnerabilities in couple of my own projects, it found 33 vulnerabilities in one largeish django project.

The prompt wasn't even that impressive, just telling it to find vulnerabilities from certain files, and referring to OWASP. Then looping that.

kukkeliskuu··on Ask HN: Any interesting niche hobbies?
So interesting to read from other's hobbies!

I believe we all have three major parts: emotional, intellectual, and physical.

I have been very intellectually oriented, meaning I used my intellectual part even when it was not so useful for the thing I was doing. For example, thinking about emotions or how to do something when it is better than just feel or do.

My aim has been to become more balanced human being, meaning choosing pursuits that activate those other parts as well.

What has stayed with me over the years has been couples' dancing, which fits nicely with physical/emotional side. You just need to find a teacher whose apporach is not intellectual, i.e. based on steps and sequences! I am still doing it 2-5 times per week.

I am also doing regularly: - yin yoga - tai chi - winterswimming

I have had several other niche hobbies throughout the years, like: - fencing - improv theatre - leather works -- I ended up on a very demanding leather shoe course and made my own dancing shoes - wood crafting -- wooden spoons - traditional survival skills -- various kinds of traditional fire making skills, making traditional traps, making emergency tents, making emergency drafts, learning about plants, learning to skin/handle game etc.

Something I wanted to try but did not yet: - flint knapping

kukkeliskuu··on How I'm Productive with Claude Code
I have two modes. Mostly what you describe (phase 1), but followed by "project management" (phase 2), where I iterate through the impementing the plan done in phase 1.
kukkeliskuu··on How I'm Productive with Claude Code
I am just running multiple agents to work on different projects. Once in a while I have a feature that splits nicely into multiple threads that can be developed concurrently, and I use several concurrent agents to do it. But that is rare.
kukkeliskuu··on 'Your Frustration Is the Product'
I built my own platform for what I call ethical ads that is serving ads for my own site. No profiling of users allowed, but I allow very specific targeting for content.
kukkeliskuu··on Ask HN: What Are You Working On? (March 2026)
usm.tools https://usm.tools/public/landing/ - platform that allows defining services (the organizational kind) as data, allowing different stakeholders differemt views on them. For instance somebody participating in a service delivery can see how they contribute to it

Arch Asxent https://github.com/mikko-ahonen/arch-ascent - tool for analyzing large microservice networks with hundres of microservices and creating architectural vision for them, and steps to reach the vision

kukkeliskuu··on Do Metaprojects
I read the title and thought: ha, somebody had the same idea. But no.

Instead of git training video, I did a platform that creates command line training videos from markdown, merging output from VHS, generated speech, seperation slides etc.

Instead of CRM, I started build a Lotus Agenda clone that can be used to build a CRM.

etc.

kukkeliskuu··on Company as Code
The book is not only about improvisation theatre but I don't want to describe the ideas, as they can spoil the experience of reading it for you. I have yet to find another source that can describe the power dynamics (also in life) as succintly as he can.
kukkeliskuu··on Company as Code
To understand the approach, you need to first understand the method it is based on.

I have written a simple introduction about it that you can download for free from simpleusm.com, no sign-up required.

Simple homegrown system for processes is not that difficult to do. You basically model the USM process model, templates as instances which you then copy as a basis for editing and make a UI around the editing.

You could even just use JSON files and git, but while the data model is not complex, it is still not simple enough for editing by hand in an editor.

Then the question is what is the benefit. I would say that just using USM to define your services is helpful.

By this approach you can build various stakeholders views to your services that are always up to date and do not require manual labor.

kukkeliskuu··on Company as Code
The first one is the classic. Don't know about the second one.

Power dynamics have been extensively investigated by the "Johnstone school" of improv, because humans are (mostly preconsciously i.e. usually are not but can become conscious about it) interested in power dynamics -- especially in situations where power balance is switching -- so this is the key if you want improvise acts that feel realistic and capture the audience attention.

To really understand it, I would recommend taking some improv classes that are based on Johnstone's teachings. But the book will give you the idea.

kukkeliskuu··on Company as Code
Keith Johnstone: Impro
kukkeliskuu··on Company as Code
Anything can be used for the good or for the bad. Defining how the organization is structured and how it operates usually is usually not about how people really do their actual work -- unless there are safety etc. regulations that must be met. Many enterprises are in constant chaos, which stresses people out. Adding some structure to it helps to alleviate that stress. For example, if there is a good template to document something, you don't have to start from the scratch. Of course, you could also go all in automate all your "management", in order to avoid talking with your employees. I don't think that will end well.
kukkeliskuu··on Company as Code
My company has been working for some years now on usm.tools (https://usm.tools/public/landing/), based on very similar approach.

USM tools is based on Unified Service Management (USM) method, which provides the necessary concepts to take the the vision one step further. The core idea is similar however: everything a company does is a service, and services can be defined as data. The surprising finding from USM is that in practice it is possible to meaningfully define any service only through five types of processes.

As services are data, you can have multiple views on that data. And as all data is in standardized format, it becomes possible to make generic cross-references between USM and for example ISO27K as rules that refer to your data, and those rules can be evaluated. As a result, you can see your ISO27K compliance on a dashboard in real-time.

kukkeliskuu··on Stonebraker on CAP theorem and Databases (2010)
> Is this how things are usually done in your business domain?

I don't know about "usually" and I cannot explain details. But many banks are migrating from batch-based mainframes to real-time systems. Maybe that answers your question about "efficiently".

kukkeliskuu··on Stonebraker on CAP theorem and Databases (2010)
I wasn't criticizing you, just making the point that when people talk about toy example bank transactions, they usually want to just introduce the basic understanding. And I think it ok, but I would prefer that they would also mention that REALLY the operations are complex.

I modified my comment above that by multiple types of accounts I meant that banks have various accounts for settlements with the other banks etc. even in the common payment case.

kukkeliskuu··on Stonebraker on CAP theorem and Databases (2010)
I have been working on payment systems and it seems that in almost all discussions about transactions, people talk about toy versions of bank transactions that have very little to do with what actually happens.

You don't even need to talk about credit cards to have multiple kinds of accounts (internal bank accounts for payment settlement etc.), multiple involved systems, batch processes, reconciliation etc. Having a single atomic database transaction is not realistic at all.

On the other hand, the toy transaction example might be useful for people to understand basic concepts of transactions.

kukkeliskuu··on Oban, the job processing framework from Elixir, has come to Python
Most Django projects just need a basic way to execute timed and background tasks. Celery requires seperate containers or nodes, which complicates things unnecessarily. Django 6.0 luckily has tasks framework -- which is backported to earlier django versions has well, which can use the database. https://docs.djangoproject.com/en/6.0/topics/tasks/
kukkeliskuu··on Microservices for the Benefits, Not the Hustle (2023)
The biggest beef I have with microservice architectures is lack of transactions across service boundaries. We say that such systems-of-systems are "eventually consistent", but they are actually never guaranteed to be in a consistent state -- i.e. they are always inconsistent. That pushes the responsibility for consistency to the system that needs to use the data -- making implementing those either extremely complex -- or more typically -- ignore the problem and introduce distributed timing bugs that are difficult to find in testing. The benefits of microservices are offset by losing the ability to build on database functionality to make your systems robust.
kukkeliskuu··on Microservices for the Benefits, Not the Hustle (2023)
It is not unheard of to encounter a situation in enterprises where microservice architecture has been "too succesful".

There may be even 500 microservices and their number is growing rapidly. The situation might no longer be under control, sometimes even the responsibility for maintaining them is unclear or "shared". It is easier to implement a new microservice than track down who could implement something there.

I have encountered this problem several times, so I started a side project to bring such situations under control. It is still alpha, but first part -- scoping the problem -- is already pretty useful, allowing you to select, visualize and tag etc. microservices.

If anybody is interested, the code is here:

https://github.com/mikko-ahonen/arch-ascent/

kukkeliskuu··on The recurring dream of replacing developers
I have built many projects in hours that we can say would have reasonably taken me a month, to research the technology I did not know beforehand. 30 minutes is often enough to build a first version of the project. For example an audio book listener app, winter swimming iPhone/iWatch app combination, and markdown editor for OS X in Swift.

I have also added complex features in 30 minutes to existing projects, but I don't remember any that themselves would have taken me months though.

kukkeliskuu··on High-Level Is the Goal
Has somebody written an analysis why Qt really sucks? It would be great to have a spec for a GOOD cross-platform (desktop) UI framework. It might be also possible to create a reference implementation of that spec on top of Qt.
← PreviousPage 2 of 13Next →