skysight-inc/HackerNews huggingface dataset:
>This just seems like a poorly (or not at all?) designed monolith, if there's no standard way of doing things, of concerns or responsibilities of various application layers? I mean I've been there too in organizations, but it just seems like we're skirting around the obvious: the system should've had a better architect (or team) in charge?

First you need to have people who understand architecture. College does not meaningfully teach architecture. How many businesses are started with senior devs who know what they are doing? How many business are going to spend time on architecture while prototyping? When a prototype works, do you think they are going to spend resources fixing architecture or scaling/being first to market?

When a new employee joins, how many companies are going to inform the new employee on standard architecture practices for the company? After how many employees do you think it's impossible for 1 person to enforce architecture policy? Do you think people will even agree what best architecture is?

What about hiring new people? Is it important to hire another dev as fast as possible when you get money, or to have 1 dev fix the architecture? After all technical debt is cheaper to pay off (50% of engineering resources) with 2 devs than with 1 (100% of engineering resources), context switching is it's own expense...

Once you get into pragmatics you understand that good architecture is a common in the tragedy of the commons sense. It takes significant resource cost and investment for a very thankless job. So you must have authority make a commitment to architecture, who is almost always going to be making cost benefit analysis which is almost always going to favor 1 day from now to 1 year from now.
No, I'm quite seriously talking about how it should have been done sooner, and if it had been, could have been shorter.

I'm sorry you're so upset about this. It's not easy on any of us and it's been handled appallingly. But there really is no need to call someone that disagrees with you a "lockdown ####" and fantasise about violence upon them.
Is that debt interest-free? If not, then at 5% interest that's 18% interest that's 1/6 of the GDP going into paying that interest. Nice for those on the receiving end.
> You can drink without getting drunk.

No shit. The problem is that when you get into the habit of drinking 2-3 drinks every night you’re bordering substance abuse. Also, “a few glasses” is enough to be arrested for drunk driving, so you might not be the caricature of a drunk but you’re drunk nonetheless.

Severance is a great way to understand your relationship with alcohol. The only reason it even seems weird is because the shit is so deeply embedded in our society. If you give up caffein, nobody gives a shit. Give up alcohol and suddenly people express incredulity at the very notion!
And Erlang runtime) is used in massive telephone switches, famously AXD301 which is claimed to have uptime percentage of 99.9999999% over 20 years.
Reading the numbers is pretty damning. A little mini-ICANN level capture going on in the UK.

They also seem to be squirming according to The Register (https://www.theregister.com/2021/02/17/nominet_vote_lawsuit/)

The votes seem to be there based on who is supporting it. Hope it gets more attention and better reform for the .UK registry.
I like the idea of SacrificialArchitecture. The big downside is to really communicate to management/other departments that it is meant to be a kind of prototype. If it looks good enough and gets paying customers it is hard to find the time to stop, take a step back and re-write
Location pay reduction is fair to the rich. Simply put, our "chains" are designed in such a way for us to stay in them as long and possibly - contributing to society, whatever that word could mean.
Basically, with the current state of property prices and overall prices, the UK average is struggling equally as a person from Eastern Europe - as someone said: "majority is one month salary far from bankrupt".

What I am trying to say is real income is what is left after your expenses.

Our system is profit-centric, and most of the profits go similar to snowballs, always to the bigger ones.
In our world those big ones have additional supper power, they can change rules so that they can become even bigger...
The main takeaway for me is clean modularity in a system with strong decoupling, the modules can be in a single application boundary (a monolith) or across multiple (services or microservices).

The design challenge becomes making sure that your modules can execute within the monolith or across services. The work to be done can be on a thread level or process level. The interfaces or contracts should be the same from the developers point of view. The execution of the work is delegated to a separate framework that can flip between thread and process models transparently without extra code.

This is how I approached my last microservices project. It could be built as one massive monolith or deployed as several microservices. You could could compose or decompose depending on how much resources where needed for the work.

I fail to understand why techniques around these approaches aren't talked about in detail. They have some degree of difficulty in implementation but are very achievable and the upsides are definitely worth it.
It gives the possibilities to re-purpose the space.
Extremely unlikely any of the ones I frequented will reopen in my country.

They survived the first lockdown but this one will surely have killed them off. Probably result in the historical buildings being sold off to be turned into luxury apartments.
Ah, you mean _free_ software. Why not be more specific and say that in the first place?
> because you're upset you cant buy a gpu.

This is exactly the kind of antagonism that is detrimental to everybody. Read op comment again:

> Mining trashes the environment and, for the majority of crypto assets/volumes, does not provide genuinely valuable economic activity besides speculation

I am not "upset I can't buy a GPU", mining uses a lot of power[1] and its environmental impact is not being taken into consideration. So yeah, if mining is damaging the planet and if we can assess the damage quantitatively and link it to mining without a doubt, it should have to be taxed accordingly.

[1] https://www.bbc.com/news/technology-56012952
It's about cost of living too. I was offered a job literally across the street from where I live, but their wages were probably based on cost of living from a few years ago; I bluntly said I cannot afford to live there from what they were offering, and the one minute commute does not pay for said mortgage.

At the moment I make a decent amount of money for where I live, but at the same time, cost of living has gone up while my wage has stagnated. I'm very tempted to bite the bullet and look for a job in e.g. the Amsterdam region again, hopefully I can negotiate WFH conditions and the pay will be significant enough to warrant spending the extra time in the commute (once the 'rona is over, of course).
After the furore surrounding that everything was overturned and they apologised [1].

> if the police want to be arses

This is what's completely wrong about the situation.

Police officer had an argument with their spouse that morning and is in a shitty mood? Police officer was bullied at school and is using their power to punish the kind of person that looks like their bullies? Any number of entirely random things can change the "rules". Not good.

[1] https://www.bbc.com/news/uk-england-derbyshire-55625062
Except for the pyramid of doom (which you can avoid with good architecture) this reads more like "why to use go over haskell" (at least for me as someone familiar with go).

I started writing go at the same time i started to work on production with it. In 2 weeks time i had a working service and learned the language, instead of the setup.

Interestingly enough the main problem was the pyramid of doom though (due to various http middlewares)!

Nowadays i don't have issues with the pyramid of doom.

Still it seems that in the long run the benefits are similiar, except for the time it took to build it, so if it was fun i think it was worth it.
Heh, the old "leak it to the press and if there's no immediate outpouring of rage, announce it properly next week" trick.

Been very popular over the last year or so. Yeah I've heard a few of the trickles of info. I'm hoping for the official reveal on Monday. Guess we'll see.

(and thanks for the link)
Sounds like the difference between the language vs the ecosystem.

Compare and contrast how happy are users of Java the language vs JVM the ecosystem (Clojure, Scala, Kotlin, etc).
Thought the same, copy-pasting valuable blocks as a reference into a comment worked fine. If it exceeds a one block rewrite, make small dirty commits to keep track of things.

On one hand it's nice that there are tools to support devs who get lost in their undo-redo history, on the other I feel like it's a matter of good habits to not even have this problem.

of course changing habits is hard, so maybe tooling is justified in this case. I'm just happy I don't have nother "history" type mental model to deal with.
Wood based skyscraper, The Dutch Mountains, planned in the Netherlands
I think my biggest gripe with orgs that adopt microservices is they don't build out any of the testing, CI/CD, monitoring and debugging workflows to support it. It goes from shitty, slow monolithic application that super-pro can debug in a few minutes to.. Slow, shitty disparate services that are managed by different teams who don't share anything, suddenly you've got a Cuckoo's Egg situation where 1 guy needs to get access to all the things to find out what the fuck is happening. Or you just accept it's shitty and slow, and pay a consultancy to rebuild it in New Thing 2.0 in 8 years when accounting forget about the last 3 rebuilds.
Tooling is so critical to the uptake of a language it surprises me that more effort isn't expanded in that area for more niche languages that want to see their popularity increase.

I guess it's a 'chicken-and-egg' problem. Popular languages get tooling investment because they are popular.
My thoughts:

If a crop is easy to grow, that means it’s able to handle: 1. Variable sunlight conditions; 2. Variable water conditions; 3. Handle bugs, viruses; and 4. Variable climate conditions.

Low yield crops are problematic because they cannot handle variability. Using an indoor facility is equally expensive if you program the conditions to be variable or to be relatively strict. Additionally, a low yield crop is typically more expensive than a high yield crop.

As such, you would rather program the indoor facility’s conditions to be relatively strict and grow a typically low yield crop, get significantly better yield and compete on price.
The government wants social media to tell it its lying
The upcoming hearing on social media amount to this: Mr Zuckerberg, I need you to tell me if Im lying.
What I usually do is make a copy of the function that I'm working with and give it another name. Then i can compare both the contents and the result of the two functions.
What is bad about it? It always goes back to the previous state, and if you want to skip previous undo states (so you don't undo an undo) you can use `M-x undo-only`.
I think you probably ought to seek some counselling if you're fantasising about violence towards others on a daily basis. What you're expressing is deeply unhealthy.

I'm not saying this as some sort of point of argument or to belittle you - it really sounds like you could use someone to talk through this with.
There should be a name for it. If a name is established so people can talk about it easier, it would make a big difference. This is a kind of design pattern, although not an object-oriented pattern.
Ignore all popular advices and "influencers" like plague- avoid companies with loose moral compass - especially those say "don't be evil" and "free product"
> Rust error handling is great for reliable systems.

Last time I checked, Rust couldn't even catch malloc failures.
It's also ignoring that there are places that are suitable for solar but not suitable for farming. Take the Sahara desert for example, lots of sun, a solar farm would thrive!

Now try planting something there....
>>I am leveraged (via my mortgage) about 600% of my GDP (yearly salary). This seems realistic for me, why is it not realistic for the government? Especially when the government's spend directly correlates with their future income.

if you manage to pay of your debt, and then end you own an asset that is presumably worth more than the total of all your payments - so for you that migt make sense.

If you owned 600% of your personal GDP and all you were doing was buying food and booze - i.e. current consumption - that would be a HUGE problem.

Problem is most of the debt that govt is taking on is of the food and booze variety - i.e. spending money on things that will be consumed today, and counting on future generations to pay for your poor choices.
> I got stinking headaches for a week, but not an overwhelming urge to drink caffeine

This is exactly my experience after not drinking coffee for 1-2 days. Headaches that make the thought of drinking coffee slightly disgusting.
a) AGPL (and other Free Software licenses) are also Open Source licenses, Open Source is not "BSD or MIT"

b) the comment you originally reply to didn't even claim anything about licenses "requiring" links to the source, just that doing so is one quite clear way of attributing.
A lot of us wish we could; but in the UK it is illegal to leave the house for anything but food-shopping, a medical appointment or (limited) exercise. I don't think "escaping a police state" falls under any of those.
Nope. Everything lives in one big DB, but services are not allowed to touch each others tables directly - communication must be done through service API endpoints.
Not all 'open source' licenses are 'non-copyleft' or 'permissive' licenses.
Why do you think that something other than linking is superior?
I'm not sure why you are being down voted. In context of calling business logic we have moved away from linking.

I guess the context is only implelied in your parent post.

The rise of the network API in the last 20 years has proven it's own benefits. Whether you are calling a monolith of a microservice, it's easier to upgrade the logic without recompiling and re-linking all dependencies.
Could you elaborate on the framework you mentioned for flipping between process and thread models? That sounds interesting. Was it released or just used internally for some projects?
Interesting. I wonder what consequences this will have in the british market(IIRC it being one of their major hubs in Europe). I don't think they'll pull out at this point though, but will make it marginally impossible for new drivers to be accepted (unless demand increases dramatically but I don't see that happening either due to "current events")
"Automation and Ai is replacing white collar work this time." I think that If your daily work can be truly replaced by a graphic card running pattern matching software you should find a better way to invest your life.
Yeah, my question is, what's the best direction to go in:

1. Continue trying to create error-handling systems for devs
2. Try to solve this with more generic static (or dynamic) analysis tools.

I mean, maybe what we need to do is make simulator-esque testing more popular, or something.
The Dutch wouldn't still be there if they were in a Karst region.
I mean, Go's error handling is one of the worst implementations of the "error code" idea, so it is a bit unfair to disregard the idea just because one particular implementation is bad. You should try Rust or Swift, at least the error handling part, to fully appreciate what a good error code implementation could be.
The title of the article is something I'd expect to see in a comedy movie. Yet, this is real.
You may also like the renameutils programs that let you freely manipulate file names in your text editor.

https://www.nongnu.org/renameutils/
The difference between 'open source software' and 'free software' has nothing to do with copyleft. The vast majority of open source software licenses are also free software licenses, and vice versa.
> This is a political problem which has nothing to do to with technology or costs themselves.

No, nowhere in the world is nuclear power economically competitive. Construction costs are about 3x-4x the cost per kW compared to solar or wind. [0 page 11][1]

> nuclear is doing fine and growing in many countries, including China.

No, net nuclear plants in Asia are not increasing. [0 page 4]

[0] https://www.diw.de/documents/publikationen/73/diw_01.c.69857...

[1] https://www.eia.gov/todayinenergy/detail.php?id=45136
I once debugged a case where the id had left sided zero padding so the whole id length was a fixed number of digits, for example `238974` might be represented as `00238974`.

In a process that joined two tables the match counts were off. Somehow, on one side of the join the id was being converted to an integer and then back to a string, which stripped the zero padding. Meaning that `00238974` was failing to match `238974`.

Sigh.
Article and parent is not about two different organizations units.

Most of microservice implementation is within a single team. That is the real question being discussed.
> Error handling has been wrong since the beginning

100% this. The very concept of "error" is philosophically unsound. There are no errors; only conditions that you dislike. It is unfortunate that programming languages allow to express your emotional detachment to one of both cases of a branch. Nothing good can come from that.

I yearn for a language with no error handling nor exceptions. Just plain language constructs to deal with the state of the world around the program, without unnecessary emotional attachment to certain flow paths.
Yeah, it only becomes an issue if you want the compiler to infer that ImpossibleError cannot be raised in

while True: pass
raise ImpossibleError

But normally we are perfectly content to put ImpossibleError in the signature for code like this.
The government made the decisions that results in rich getting richer and poor getting poorer. The rich oligarchs are getting great returns on their investments and owning government. While millions of people are facing declining quality of society.

California had millions of people without power during summer fires. Texas just had millions of people without power during winter cold. These are third world type events, society can’t deliver basic life infrastructure.

The rich owned government is responsible for declining quality of social structures for millions of people. They don’t care, they can just distract with BLM and social strife, instead of improving quality of society and preserving job opportunities for
Codepaths that can produce errors are just a monad. Separate this code from the rest and you have a solution for the problem.

It’s Haskell’s do all over again and pure vs impure.
I haven't given up but I have cut down a lot. There are some pretty tasty alcohol free beers now. Not all of them, by any means, but there are some good ones.

If beer is your poison.
Chinese colleague shared some of this stuff with me one time. It’s nasty. I’ll stick with my IPAs.
For people who did not read the OP and claim otherwise:

> ChessBase could easily comply with any open source license by linking the full source code,

"any open source", which is unspecific and gives people the wrong picture, as in MIT, BSD.

"linking the full source code" - how much clearer does the reference to link source code need to be?
Till they come for your job :)

Ive seen a lot of jobs that have been automated that are not pattern matching even in IT security. Even where the job is not fully automated like firewall admin it is greatly reduced and the labour is not replaced. E.g 10 years ago at an Aussie bank we had 40 people performing firewall changes and 30 security designers writing and reviewing the rules nedded. Algosec came along, we did software defined networking , things moved to AWS and there are zero dedicated firewall admins anymore and all the designers were absorbed into the architecture and consulting teams and eventually returned to its original size of 20 i.e those 30 security design jobs disappeared
https://www.igmguru.com/data-science-bi/msbi-certification-t...
What scares me about Haskell is that it seems even people who used it extensively for a while call themselves "intermediate", and still find themselves in Haskell-shaped holes.

If something breaks and I need to fix it now, I don't want to be fighting with a language that says, "no-o, no shortcuts, use a proper monad", or takes years to master to that level.

Maybe I'm just missing the point.
So, what next for Uber? Changed business model in the UK? Pull out entirely?
Fusion sounds great in theory, but even if they manage to make it viable, it'll cost billions to create even one plant, and how much power does it produce theoretically?

I mean if I put on my idealist sci fi glasses, I can see a future where we have infinite energy for free, in which case we will see a lot more energy-wasteful endeavours like vertical farms, air conditioning and cryptocurrencies. But we're not there yet, and we won't be there yet for a long time.

Energy production, also with renewables, increases year over year, but keeping right on it is energy consumption.

Examples from my own country. We're building big wind farms in the North Sea. But at the same time, Google and co are building data centers that use up a lot of their capacity already. And another thing happening at the same time is a push to reduce our dependency on natural gas for heating and cooking (because emissions and international politics / dependency on Russia). And the other push is towards electric vehicles. So thirst for electricity only goes up, probably faster than new energy sources can be built (renewable or otherwise).

This trend will continue, wouldn't be surprised if electricity consumption will double in the next decade.
Yes, if they’re helping a deadly virus spread during a pandemic then go ahead. Except unlike you I’m going to accept that, because I don’t want to be stuck at home for another year while morons continue to spread the disease everywhere.
Rust also has the traceback/exception error handling mode in the panic cases. And since there's no standard way to check those at compile time you're left to fuzz the code to find all the possibilities (or use some hacks). It would be great if the compiler could be put into a mode where panics are handled like errors that need to be explicitly handled. Maybe something like:

1) At the function level or crate level being able to specify if the code can or can't panic, sort of like safe/unsafe function signatures.

2) Being able to have blocks of code return MaybePaniced<T> and have to turn that into an error or other result. If it's not handled and the function/crate is marked as nopanic the compiler rejects the code.

It would make the code more robust, and allow for an ecosystem where just like nostd you can specify that your crate is nopanic which helps in some environments.
Hydroponics is how many commercial growers operate their greenhouses
what uber is dooing in some countries is having partner company hire a driver, so the driver does not directly work for uber but for a partner, so uber does not have a problem.
The court made very specific arguments:

1. Uber set the fare which meant that they dictated how much drivers could earn
2. Uber set the contract terms and drivers had no say in them
3. Request for rides is constrained by Uber who can penalise drivers if they reject too many rides
4. Uber monitors a driver's service through the star rating and has the capacity to terminate the relationship if after repeated warnings this does not improve

Even if this does hurt Uber short-term, it sounds like the gig economy will be just fine, as long as companies change their behaviour with respect to the above points.