HNHacker News
TopNewBestAskShowJobs

esailija

655 karma · joined June 18, 2012

submissionscomments
esailija··on What if writing tests was a joyful experience?
> I guess a lot of it is because the APIs I’m calling are so badly designed.

Sort of, sounds like the problem is that you have a distributed monolith. If things are this tightly coupled they should just live in same process. If you even had just a regular monolith (which I don't recommend but it is much better than distributed monolith) you wouldn't have this particular problem. Of course another alternative is to redesign the system so that services are based on independent domain capabilities so that they have high cohesion and loose coupling.

esailija··on Microservices are hard
When you change function signature it doesn't compile until you fix all the call sites. Maybe after you see all the broken call sites you think that's too much work maybe there is some other way to do what I want.

When you change anything about an endpoint, it compiles just fine no matter what clients there are or what they are doing. You proceed with the change without worry. Yes, you can have some self-discipline to also generate the open api documents, generate the clients and then check all clients but self-discipline like that is not reliable.

So while tooling can help it's still not the same thing.

esailija··on Microservices are hard
Every single endpoint in a monolith can be deployed and scaled independently. In a single such deployment the rest of the endpoints are just dead code not costing anything except larger image.

Also in many cases work should not be performed synchronously in response to http requests but in a background queue to keep your service robust and responsive. When taking a new order you should just place it in some queue and respond ASAP so there is zero chance you miss a customer order because of some error. In that case there is no difference in scaling a monolith or microservice as you can indepedently deploy 25 consumers for module X events or 10 consumers for module Y events and so on.

esailija··on Microservices are hard
> It may be the sloppiest, crappiest definition every, with dynamic types

Funny you said that since a microservice API is always dynamically typed and its usage cannot be checked by compiler. And the more microservices you use the more dynamically typed the whole project gets overall.

While you can opt into a free for all everything importing everything, all languages do also support creating modules which define APIs for consumer and maintain compile time type checking.

esailija··on We asked ChatGPT to write a Sherlock Holmes mystery
The brain is nothing like a computer, for the brain doing things that computers do easily are even in the most trivial cases very hard and otherwise impossible. And vice versa. Yet these things that have effectively zero overlap in capability are the same?
esailija··on We asked ChatGPT to write a Sherlock Holmes mystery
Firstly, if you stop all human input into AI and have AI only output based on other AI output you will never generate anything new in a trillion years, it just regresses into variations of the original human input before it was stopped. It will never evolve as humans do as it is just a statistical trick at the end of the day.

Secodly, humans take only a few examples while AI needs trillions. AI built on a few examples would not have enough data.

esailija··on Modules, not microservices
Please check your assumptions. Why do you think 2 modules cannot be in different runtimes? How do you think JNI works?

You can absolutely call js running in V8 vm from scala running in jvm. No networking needed, hell not even IPC is needed.

And when you deploy this you don't have to deploy all modules' http servers (for external requests into the system) and queue consumers in the same container, only a single module's. So no busy loops affect other modules, unless as a result of direct api call from module to module. If anything it encourages looser coupling as you are incenticised to use indirect communication through the queue over direct api calls.

esailija··on Modules, not microservices
Module is not just code in a separate file. Litmus test: if you cannot have two modules be written in separate languages - you don't have modules. M

If all modules have to be deployed using the same build even though different build of the modules would have been API compatible - you don't have modules.

esailija··on Modules, not microservices
Just because the monolith image contains all code doesnt mean each deployment needs to run all that code. Or even same version of the code. A deployment can run only a small portion of the code determined by deployment args. It can even run an older version than other deployments
esailija··on Modules, not microservices
Then why cannot you have separate repos and review processes for modules? This has nothing to do with microservices vs modules.
esailija··on Modules, not microservices
Huh? They can, and will, just add the things they want to the rest api of the microservice A and then call them from B. That doesn't change with microservices.

Look up a thing called "distributed monolith".

esailija··on Ask HN: Will AI put programmers our of work?
"waste" a lot of time reinventing wheels (the lower level the better, ultimate example would be writing your own OS) and other stuff that has no practical outcome for your immediate problems.
esailija··on North Korea – teenagers executed for distributing South Korean movies
I.E. US State Department
esailija··on Ask HN: What social media site could replace Twitter?
https://en.wikipedia.org/wiki/Elite
esailija··on Napa.js: A multi-threaded JavaScript runtime
Yeah, this could have been a small npm package for node. Node already supports workers that communicate with serialization or shared array buffers+locks.
esailija··on U.S. Army Chooses Google Workspace
It was all based on lies and fabrication without any conspiracy. You are assuming it requires a conspiracy to pull it off, but why would it? These agencies, media and companies are all interested in the same thing which is US hegemony and profits not the truth, that automatically makes them do this without need for any conspiracy.

And why wouldn't they? What exactly has been the punishment for so called reliable media for spreading lies over and over again? If anything they are considered more reliable than ever. Which means people consuming it are not interested in truth either.

esailija··on What science says: Could humans survive a nuclear war between NATO and Russia?
> Who is holding that stance?

The one who was willing to risk nuclear war for Russian actions, it's above in this comment thread. I am making pretty reasonable guess that the same person was not wanting nuclear war over similar actions of US.

esailija··on What science says: Could humans survive a nuclear war between NATO and Russia?
It's proof by contradiction. Either you are against bombing innocents or you are not. By holding a stance that only Russia bombing innocents is wrong you are not only for bombing innocents you are also a russophobe at the same time.
esailija··on Latvia wants permanent U.S. troops, foreign minister tells Blinken
NATO members don't have any obligation to defend or even really aid an attacked member. The article 5 is ridiculously vague. I think sacrificing the member state to avoid nuclear war is what would happen. It won't be any different than with Ukraine.
esailija··on Is the world economy entering a wage-price spiral?
Global poverty has improved mostly due to China, which is total opposite of neoliberal policy (privatisation, deregulation, austerity [allowing rich to pay less taxes while taking the necessary tax money via cuts to social programs] etc).

And if there is any improvement in neoliberal poor countries it is because of the definition of "extreme poverty" used is based on nominal dollar value disconnected from material reality.

esailija··on U.S. to open program to replace Huawei equipment in U.S. networks
The OP explicitly claimed that US cares about human rights.

So no it is not "whataboutism", which a bs term anyway because it is almost always used in situations where someone implicitly claims that the US cares about human rights and that's why US atrocities must be brought up as counterargument.

esailija··on Where are the robotic bricklayers?
Well unfortunately it doesn't get better than that, except when working as remote you can lie on a sofa or bed. After a full day you still have full energy to do optimal amount of physical exercise, just enough (which is relatively little) to stay in optimal condition without destroying your body.
esailija··on Where are the robotic bricklayers?
You are probably comparing accidents of self-driving cars in optimal conditions (since they cannot even drive in any other conditions lol) to all accidents in all conditions in human drivers.
esailija··on Where are the robotic bricklayers?
Yep and in optimal amounts, which is surprisingly little.
esailija··on Xi Jinping’s Capitalist Smackdown Sparks a $1T Reckoning
A communist state is merely a state that wishes to achieve communism, a stateless (classless) society.

There is no such thing as communist state that has achieved communism because at that point in the world states no longer exist because classes no longer exist. Such a world actually existed for hundreds of thousands of years as technology didn't allow one set of people to produce so much surplus so that another set of people could live without directly producing, a requirement for a state.

There are no known steps to "achieve communism", so there is no laundry list of requirements that make a communist state. In practice however some kind of liberal market is required because the world is currently dominated by capitalist ideology which will destroy any obviously communist state and a destroyed state cannot achieve communism.

esailija··on MIT Predicted Society Will Collapse in 2040. Research Shows We're on Schedule
Improving efficiency doesn't address the problem at all. If you only improve efficiency then consumption grows to negate any gains.
esailija··on GitHub Copilot regurgitates valid secrets
It's only because people like you pretend this glorified markov chain is something more that is causing everyone to pile on. So stop.
esailija··on GitHub Copilot as open source code laundering?
The AI doesn't produce its own code or learn, it is just a search engine on existing code. Any result it gives exists in some form in the original dataset. That's why the original dataset needs to be massive in the first place, whereas actual learning uses very little data.
esailija··on Engineers can disrupt climate change
No it's much simpler. To maximize profits you need real growth, as that maximizes profits. If you don't maximize profits then someone else will and you will lose. This effectively means that capitalism requires infinite growth.
esailija··on The compiler will optimize that away
I disagree. Almost all software I use these days is absurdly slower than it should be and probably a massive drain on collective productivity. I have ssd, fast internet, 64gb ddr4 etc, almost everything I do should be impercetibly instant but instead takes seconds and even minutes.

Yeah of course most of that slowness is not even because of ignorance of the low level stuff but complete disregard of performance aspect of software. If it's even slightly more convenient for a programmer to do something that is very stupid performance wise, they will do it.

Sure developer time costs, but this cannot actually be the reason. Because tooling is also ridiculously slow in exactly same way and wastes countless of hours of that costly developer time.

← PreviousPage 3 of 13Next →