Hacker Newsnew | past | comments | ask | show | jobs | submit | yayachiken's commentslogin

> It's not that easy, and the 2025 blackout good evidence of that. Renewables need a grid that's engineered for them and that require significative investments.

The outage in spain had multiple complex causes.

While the grid had a rather routine instability/oscillation on-going during time of the incident, the actual point-of-no-return was completely non-technical: Prices crossed into the negatives, which caused generation to drop by hundreds of megawatts and load to increase likewise within a minute (!) because the price acted as a non-technical synchronized drop-off signal for the grid.

In grids where the price action is not forwarded directly to the generators and consumers there would be no incentive to suddenly drop off decentralized generation. So for example in Germany a black-out would not happen like this.

You can download the full ENTSO-E report here: https://www.entsoe.eu/publications/blackout/28-april-2025-ib... (See page 10 for a broad incident timeline)

Unfortunately, to have an informed opinion, you pretty much have to read all these pages, because the situation is just so complex. Otherwise, you just fall for agenda pushing from all sides.


Yup, its interesting that a community supposedly of "engineers" are happy to claim expert knowledge of domains in which they have no experience.


That being said, I was apparently also under the impression of outdated or just plain wrong information.

While the report I listed mentions the sudden loss of decentralized generation as starting point of the blackout, and also specifically mentions small-scale rooftop PV, it says that the cause for that sudden synchronized drop-off is actually unknown.


You can't get an "informed opinion" by reading crap like that report.

The Spanish systems have systematic design failures for stability and electricity market design. Working out the political failures that led to the design failures is much harder.

Consultancies like https://www.nera.com/capabilities/power--utilities--and-rene... specialize in advising about electricity networks and market design.

Only those working closely in that profession have any knowledge of the underlying causes.

Most everyone else (including this comment) is different levels of ignorance and cluelessness.

Edit E.g. Crap quote from the report "but no significant oscillations with amplitudes above 20 mHz". The rest of it is about that level from what I could tell.


> crap like that report

> Only those working closely in that profession have any knowledge of the underlying causes.

This report is literally from the ENTSO-E which is the main regulatory body for the grid in Europe.

> Crap quote from the report "but no significant oscillations with amplitudes above 20 mHz".

What is the "crap" about that? An amplitude can still be measured in Hz, if you are looking at oscillating frequency deviations, if that is what you mean.


Very timely, the final report has been released today.

I hadn't read the document you referenced, and I admit don't have the prior knowledge, nor the time, to fully understand all the implications of what it says. My opinion is then the result of reading and listening a variety of experts and news sources, and it will have some biases, for sure.

Still, I have skimmed the final report to see if there was something that I could understand from first hand (and to support my original point, not gonna lie), and I found this:

_The increasing penetration of variable renewable and distributed generation, further market integration, broader electrification, and evolving environmental and geopolitical risks place the European electricity system under increasingly challenging operational conditions, requiring higher levels of resilience._

Do you really think that my original point (as uniformed as it might be), namely, that the levels renewable energy currently present in the spanish grid require significative investments, was wrong?


Yes, I think it's wrong, or at least way over-exaggerated.

You can run a grid to supply approximately 80% renewables (long-term average) without significant technical changes.

Only if you want to get the last 20% to renewables, you get technical challenges, e.g. related to synchronization and load-matching. But that is also not unsolvable problems, e.g. instead of relying on the inertia of steam turbines you can "just" build specific-purpose fly-wheels to do the same thing. It's just less elegant.

Source: Volker Quaschning "Understanding Renewable Energy Systems", too lazy right now to look up the exact page.

This is also consistent with the section they quoted. Generally, the load matching in grids is done by the system itself. If you add more wind and solar, which depends on the weather and location, you have to more large-scale intervention, e.g. allow generation re-dispatch. But that doesn't immediately imply that this is a dangerous process.


I have not read the report yet, but in another thread someone gave a very plausible explanation of what happened.

The high levels of renewable energy happened to contribute to this incident, but not because of something inherent in renewable energy. All renewable energy sources are connected to the grid through inverters, and in Spain most of these inverters do not use an adequate control policy, i.e. they do not compensate the phase fluctuations of the grid, like the synchronous electromechanical generators do (i.e. they do not generate an appropriate amount of reactive power for compensation).

Technically it is easy to implement such control policies in all solid-state inverters, but it was not done in Spain because there were no incentives, i.e. there were no regulations specifying how the inverters connected to the grid should behave, otherwise than disconnecting when the frequency went outside a permissible range.


Yes, that is plausible indeed, but the problem is that there are many explanations which are plausible, but there doesn't seem to be a smoking gun.

Strange about that explanation for example is that the time correlation is backwards. First the solar generation started to drop out and only then central generator stations tripped. Also the on-going frequency oscillations had already stabilized. If it was related to frequency issues, the solar inverters would either have shut down 15 minutes earlier (while the frequency oscillations were at the peak) OR 1-2 minutes later (when power stations tripped and frequency would have dipped)


Small tangent, but I feel like it is a good time to drop the term "net neutrality", which covers way too much ground. In the past in political discussions, the term "violation of net neutrality" was used to protest multiple different issues:

* Traffic shaping (e.g. slowing down Bittorrent traffic)

* Traffic fast lanes (pay for priority access to some content providers)

* Selective zero-rating (exclude some providers from counting towards a traffic limit)

* Artificial peering restriction (what Telekom is doing, usually via forcing content providers into paid peering agreements)

I think people should start using more specific terms that are understandable for non-technical people, because otherwise the discussion becomes confused, which helps the providers.

Lots of semi-technical people think that "violating net neutrality" refers to traffic fast lanes, because the last time this discussion entered the public was when the US social media was in uproar about FCC rules 10 years ago.

What Telekom is doing looks similar to the outside (some content providers are fast, some are not), but they can just deflect by saying that they do not intentionally throttle traffic, which is pretty much true, as they hit their physical bottlenecks. If you are knowledgable enough as a lawmaker to press them on the peering issue, they could argue that forcing peering would force them to pay rent at Internet Exchanges, just so other providers have good access. Where they also kind of have a point.

And even lots of technical people have no clue about peering, transit etc. and treat their uplink as a blackbox, a cloud in their network chart where the Internet comes out.

For the Telekom case, we would need a different legislation, for example make paid peering agreements between providers illegal or at least regulated, which would then be an incentive to be generally well-connected (free mutual peering is usually considered a win-win scenario unless you are Deutsche Telekom and can use your market power to bully other market participants into another form of rent extraction). And that means that lawmakers and the public need to understand first the specific problem we are fighting.


> For the Telekom case, we would need a different legislation, for example make paid peering agreements between providers illegal or at least regulated, which would then be an incentive to be generally well-connected (free mutual peering is usually considered a win-win scenario unless you are Deutsche Telekom and can use your market power to bully other market participants into another form of rent extraction). And that means that lawmakers and the public need to understand first the specific problem we are fighting.

Realistically not going to happen, as the effort would need to be global. Like, Cogent STILL refuses to transit-free IPv6 peer with HE. https://bgp.tools/kb/partitions.

T1s are very happy where they are, and it's an exclusive club. Any attempts to tame this behavior from DTAG will also face backlash from basically all the other T1s.


Regulating peering within the EU would already be a win.

The providers are then free to either move out of the EU market, or let their non-EU traffic flow via the (then likely larger) unrestricted pipes at DECIX and AMSIX. If they think that routing everything via EU is cheaper instead of just peering better in the other parts of the world to deliver traffic locally, then be it, that is their own economic freedom to decide so.

But they will realistically not do that. Also, SDNs will likely never go back to serving content in Europe from e.g. the US. Good connectivity is just generally the economically better option.

That being said, T1 companies like Deutsche Telekom who also serve a large consumer base via broadband and mobile and not just other large business networks are probably more vulnerable to such legislation than an exclusive transit provider.


> Regulating peering within the EU would already be a win.

Regulating peering how? Freedom of commerce is one of the core pillars of the EU. Forcing a company to do business with another company is insanity.

If DTAG doesn't want to peer with CloudFlare, you can't force them.


DTAG are also a consumer ISP. A consumer ISP should be considered a utility, and utilities can also be forced to provide certain services. In addition, Internet Exchanges have become so critical for the Internet architecture that they should also have some privileged status.

Legislation could focus on the following general rules, without favoring some providers over the others:

* If you participate on an IX node, there is no reasonable technical or financial reason not to peer with the other participants at that node. Of course this would also mean that participants have to be protected against price-gouging of IXs when they need to scale up their uplink for that reason.

* Alternatively, you could conditionally allow paid peering, but in that case require certain availability guarantees on your general transit connection.

* If you do not want to do business with a certain party, it should be all or nothing. Blacklist them organization-wide. No misleading to consumers that a content provider just appears slow, announce that you do not want to play with e.g. Netflix anymore and if your customers do not like it, they will switch.

* If you want to opt out of all of this regulation, you are free to run fiber yourself and just directly connect with everybody you are interested in. That is expensive? Too bad.


Letting the government regulate peering will be the death of the internet as we know it.

I don't believe that there's a single lawmaker, anywhere in the world, who understands anything about the fundamentals of IP transit. But no doubt they have ISP buddies who understand everything about it, and no doubt they'll be the ones actually writing the legislation.


Well, there is always a regulatory measure that would be a lot easier to implement: Lawmakers could just disallow Tier 1 carriers to provide consumer Internet access. (This forced separation of business domain already has precedent in other sectors, e.g. energy companies having to separate network upkeep from energy trading or banks having to split their investment branch from the credit branch)

And I have a feeling that as soon as that is seriously discussed, the current exploitation of market power will stop rather quickly, without any need for actual regulation.


> Lawmakers could just disallow Tier 1 carriers to provide consumer Internet access.

This one I actually agree with.


Governments successfully managed this before. It was called Local Loop Unbundling.

They recognised where the monopoly was: the incumbent telcos with millions of customers that had to go through them to get anywhere else.

So the government insisted that such incumbents make available space in their exchanges for third parties (not for free!), and to allow their customers to use the third parties for telephone and/or internet service, rather than themselves.

A similar argument and regulation could be made today. It could only apply to ISPs with a significant number of endpoint customers. It could require that the ISP make peering available to third parties, at the third party's cost, but the resulting transit should be settlement-free. It could require that if a peer asks the ISP to upgrade, because the ISP is deliberately underprovisioning, the ISP is compelled to allow the third party to pay reasonable costs to upgrade both sides (so the ISP can't sit on its hands, can't brazen it out, and can't set an impossible price)


WhatsApp has been required to provide an open API, Apple has been required to provide alternative app stores. Neither one has actually done it because the EU is too pussy to enforce the law, but the legislators clearly had no huge principle disagreement when writing these laws.

Mobile networks have been forced to allow roaming in other countries for a certain low fee, and that is actually enforced and has happened. It's clear the EU has no qualms about forcing companies to do business a certain way when it serves some greater interest.


The difference between WhatsApp open API, alternative App Stores and forcing peering is that it costs virtually nothing for WhatsApp to provide an open API, and for Apple to allow alternative App Stores.

Roam-like-at-home is also not a particularly good comparison here, because the the roaming fees were basically a price gouging scheme.

Don't like DTAG? You're free to switch to another ISP.


What's your estimation for how much more expensive it would be for DTAG to peer at Decix instead of only doing dedicated private peerings that they get paid for?

Because I don't believe it's about any additional cost -- it's only about additional revenue that could be extracted. That's a behavior you don't like to see from a state-owned ex-"Only Offer Allowed" monopolist that is still dominating the market while the government entities tasked with regulating the market are closing both eyes.


It costs DTAG virtually nothing to have good peering, certainly compared to their income. It costs Apple a very high percentage of their revenue to allow alternative app stores, since their main revenue source is the 30% tax on all in-app purchases through the Apple store.


> Forcing a company to do business with another company is insanity.

This already happens all the time, and especially in telecommunications. Interconnection is a core of telecommunications law everywhere.


People use the same word because all of those actions have the same result for an end user.


Replacing net neutrality with a bunch of smaller issues means you have to educate and lobby N times as much. And every time ISPs find a new loophole you'd have to start from scratch.

Looking at this case specifically, "fast lane" is not a technical term so maybe in your mind it only means packet scheduling not refusal to upgrade capacity but that's not a universal definition.


There's no such thing as paid peering, is there? There's only being a customer. DT wants you to buy transit to get access to their customers.


Peering just means that two AS physically connect to each other directly. Whether this peering is paid or not is independent from the technical implementation.

Just nearly everybody except Telekom is doing this on a liberal and informal not-even-handshake basis. On ISP scale, you either invest in infrastructure, or pay rent for network ports or cross-links, and you generally want your traffic usage to be smooth without spikes, and also go to the destination without going through your expensive ports more than once. So general connectivity is more important than any kind of traffic metering.


> peering just means that ...

This also describes transit and describes getting internet service at home. I wouldn't say my cellphone peers with my provider. My cellphone is very much subordinate to my provider, not a peer.

DT thinks it's important enough that it can extort everyone.

A good policy for ISPs is to peer as many places and networks as possible, and carry traffic between your peers and customers, and customers and customers, and transit and customers, but not between peers and peers, or peers and transit. This way one end is paying for all traffic you carry. If you are a bully, you can try to make both ends pay.


> This also describes transit and describes getting internet service at home.

Well no. Transit means that you use another AS (usually by a larger ISP) to get connectivity to a certain AS. And as for your internet service at home, unless you announce an AS, you are not peering with anyone.


Peering has everything to do with the physical interconnect and nothing to do with the ID numbers used to describe that interconnect, IMO.


Then we are just talking about two different things.

On ISP level, routing tables are built via BGP. BGP needs Autonomous Systems (AS) as organization unit to work. If you are not an AS you are never a peer as you are not on equal footing.

As a rule of thumb, if your edge router has a default route set, we are very likely talking about different scales.


ISPs are encouraged to — but rarely do — use private ASNs with single–homed BGP customers.


All the points you list contribute to the Internet being neutral or not, therefore of course these items come up in discussions.


What a strange article. To summarize, a guy is rejecting the current opinion about the autism spectrum, seemingly because they struggle to understand behaviour of their daughter once she entered puberty. Then they read about a specialized personality disorder that seems to fit better in their view, and now they spend their time diagnosing everyone and their dog within their surroundings, including themselves, with schizoid personality disorder.

I have people close to me with actual diagnosed schizoid personality disorder, this disorder is nothing like this person describes it, to the point of being offensive. No wonder why the actual professionals they are talking to so outright dismiss them.


I hear echos of my friends' stories in that kid. The author exhibits a pattern of somebody doubling down on a wrong idea in the face of increasing attempts to correct them. Eventually it devolves into conspiratorial thinking that writes off everybody else that disagrees with them. In a weird way the author is unconsciously lucid about their own problem.


Also, browsing through the rest of the blog, the author seems to be deep in the "incel" social darwinism rabbit hole, which explains why they have so much difficulty to shoe-horn everything into their world view to the point of contradicting themselves within the same sentence. The entire article (or entire blog even) could be used as a case study of severe cognitive dissonance due being trapped by one's own dogmatic ideology.


You are saying that the daughter's behavior exhibits characteristics of a female entering puberty? I don't want to put words in your mouth, but I read your statement to mean "the author is seeing common female behavior." (since all women enter puberty)

You mention someone with "actual diagnosed" disorder assigned by "actual professionals".

It seems like you think the daughter's behavior should be thought of as more characteristic of behavior of the female sex and less that of a woman expressing a diagnosed disorder. Can you clarify your thoughts?

I read the article and saw more narcissism and anger than autistic behavior, and I'm not too familiar with how much the "professionals" treat narcissism as a subset of autism.


I think you are reading too much into it indeed. I just paraphrased what the author called "My teenage daughter went mad."

I explicitly do not want to make a statement about the normality of the described behaviour, as it is impossible to do something like that on a third-person account, even if you were a "professional". And I would like to point out that you are doing the same.

What I criticize indeed is the simplistic view of mental disorders put forward in this article, especially personality disorders. Differential diagnosis is very difficult in psychology as many disorders are disruptions of similar underlying cognitive processes, and comorbidities are common. Their view of schizoid personality disorder is not accurate. For example the part where the author dismissed the psychologist who reminded them that those disorders are only diagnosed in adults. This is what struck me as very odd, which is why I mentioned the age of the daughter. This shows a severe deficiency of knowledge what personality disorders actually are. While there is genetic disposition for developing a PD, they are generally considered to be acquired during childhood and adolescent personality development. In addition, the author seems to get confused by the similarity in name of schizoid PD and schizophrenia (confusingly even though they seem to be aware that the illnesses are different) by assuming a prospensity to having a psychotic world-view.

An outdated view considered it actually to be impossible to get rid of a manifested PD in adulthood, while modern views fortunately see more neuroplasticity in adults. Diagnosing a PD in early adolescence does not make sense, rather one would identify stressors in the environment nurturing dysfunctional patterns and try to resolve those before the behavioural patterns are embedded too deeply.

But it is difficult to tell what the author actually means, as they are somewhat contradictory in their thoughts and seem generally ill-informed about basics.


For everybody reading this and scratching their head why this is relevant: Python subclassing is strange.

Essentially super().__init__() will resolve to a statically unknowable class at run-time because super() refers to the next class in the MRO. Knowing what class you will call is essentially unknowable as soon as you accept that either your provider class hierarchy may change or you have consumers you do not control. And probably even worse, you aren't even guaranteed that the class calling your constructor will be one of your subclasses.

Which is why for example super().__init__() is pretty much mandatory to have as soon as you expect that your class will be inherited from. That applies even if your class inherits only from object, which has an __init__() that is guaranteed to be a nop. Because you may not even be calling object.__init__() but rather some sibling.

So the easiest way to solve this is: Declare everything you need as keyword argument, but then only give **kwargs in your function signature to allow your __init__() to handle any set of arguments your children or siblings may throw at you. Then remove all of "your" arguments via kwargs.pop('argname') before calling super().__init__() in case your parent or uncle does not use this kwargs trick and would complain about unknown arguments. Only then pass on the cleaned kwargs to your MRO foster parent.

So while using **kwargs seems kind of lazy, there is good arguments, why you cannot completely avoid it in all codebases without major rework to pre-existing class hierarchies.

For the obvious question "Why on earth?" These semantics allow us to resolve diamond dependencies without forcing the user to use interfaces or traits or throwing runtime errors as soon as something does not resolve cleanly (which would all not fit well into the Python typing philosophy.)


FWIW, I've come to regard this (cooperative multiple inheritance) as a failed experiment. It's just been too confusing, and hasn't seen adoption.

Instead, I've come to prefer a style I took from Julia: every class is either (a) abstract, or (b) concrete and final.

Abstract classes exist to declare interfaces.

__init__ methods only exist on concrete classes. After that it should be thought of as unsubclassable, and concerns about inheritance and diamond dependencies etc just don't exist.

(If you do need to extend some functionality: prefer composition over inheritance.)


This is why I hate Python, absolutely none of this is obvious from the design of the language


At an even more basic level, the lack of static typing seems like such a tradeoff getting an incredibly huge nuisance in readability and stupid runtime bugs that shouldn't be a thing in exchange for a feature that's rarely useful.

Granted, I'm primarily an embedded developer. Can any Python experts explain to me a highly impactful benefit of dynamic typing?


For small programs, dynamic typing can be faster to write (not read). As soon as your program grows: "uh oh". Once you add maintenance into the cost equation, dynamic typing is a huge negative.

To be fair: 15 years ago, people were writing a lot of Java code that effectively used dynamic typing by passing around Object references, then casting to some type (unknowable to the reader) when using. (C#: Same.) It was infuriating, and also very difficult to read and maintain. Fortunately, most of that code is gone now in huge enterprise code bases.


I'm not sold on this. Often I type the output I want to get, and reverse the code to get there. and that's faster because it's now all auto completing.


Interesting point. What language?


That's been my experience of powershell and typescript. To a lesser extreme python because its type hints are a bit crap.

Though I can see why you might not agree after trying an extreme like Rust. Sometimes I want to run a broken program to stop the debugger and see what I'm dealing with and rust won't do that.


To add to your list: During string concatenation, there is no automatic conversion to string. It results in an exception. It is infuriating.

This code:

    "abc" + 123
... will raise this exception:

    TypeError: can only concatenate str (not "int") to str
I have wasted so many hours fixing this same bug, over and over again.


I strongly disagree. Not converting the int to a string automatically is absolutely the right decision. In all code I write, this TypeError would catch an actual error, because concatenation of strings is just not the right tool for creating "abc123" from "abc" and 123, so I would not use it for that. Hence, if this exception occurs, it indicates that I probably mixed up variables somewhere. Use one of the (admittedly too) many string formatting tools that Python offers, for example an f-string like f"abc{123}". (Also, if you have enough type annotations in your code, the type checker will warn you about these, so you can fix them before they hit testing or even production.)


Interesting. 100% of the times I encountered this TypeError, I actually wanted to create the concatenated string. It never caught an actual error.

Now, I guess I'm not against and explicit cast and I can imagine how the error could catch an actual bug. It's painful when the error stops the execution when the string concatenation was intended, but it is not really an issue anymore with the possibility to type check before the execution.

> concatenation of strings is just not the right tool for creating "abc123" from "abc" and 123

Why? This sounds like an opinion to me. String interpolation of formatting features are nice but I find them quite clunky in such simple cases.

Of course when you have to be careful to call str(val), it's arguably as clunky...


Of course it’s an opinion. But in my experience, I almost exclusively have some sort of “template” with some parts to fill out, and string interpolation represents this better (in my opinion). This is especially true if the different parts to fill in are of different types.

As I wouldn’t use string concatenation for this purpose, it’s impossible for me to run into a situation where I wanted the concatenated string. (And even if I did, I would be glad for the reminder to change this into an f-string.)

And the bugs that it catches are of the form: I took some user input, expecting it to be a number, but forgot to convert it into one. Then I passed it to a function expecting a number, and it thankfully crashed instead of turning everything else into strings as well.

Maybe this is also a question that informs your view on this: Do you expect "abc" or 123 to be the “variable” part of that expression?

- If "abc" is a literal in the code with 123 coming from a variable, wanting 123 to turn into a string as well is somewhat unterstandable. - However, if 123 is the literal part of the code and "abc" the value of some variable, I would expect to mostly run into this in cases where I am actually doing some math and that the variable is a string just is some accidentally unparsed input.

In what I do, the second case would be more common.


> So the easiest way to solve this is: Declare everything you need as keyword argument, but then only give *kwargs in your function signature to allow your __init__() to handle any set of arguments your children or siblings may throw at you. Then remove all of "your" arguments via kwargs.pop('argname') before calling super().__init__() in case your parent or uncle does not use this kwargs trick and would complain about unknown arguments. Only then pass on the cleaned kwargs to your MRO foster parent.

The easiest way is to not put your arguments into kwargs in the first place. If you put them as regular function arguments (probably give them a default value so they look like they're related to kwargs), then the python runtime separates them from the rest when it generates kwargs and you don't have to do the ".pop()" part at all.


Thank you for explaining this; there are a lot of comments here suggesting trivial code style improvements for use cases where *kwargs wasn’t actually needed. The more interesting question is how to improve the use case you describe — which is how I’ve usually seen *kwargs used.


Having used Python a lot, I was never glad for multiple inheritance. I’d prefer traits.


Are traits and mixins the same? If not, can you please provide a trivial example. It would be useful to better understand what you mean. When I was very young, learning C++, I thought multiple inheritance was so cool. Now, I know it is like sleeping in the open jaws of a saltwater croc.


Traits as in the original Smalltalk research, Rust traits or Haskell type classes are like interfaces, but only when in scope. So until you import a trait, its implementation on various types isn’t visible.

This makes it possible to safely make a new trait and implement it on a built in type (like giving int a method) without the chance of another unrelated use of the type accidentally using what this trait provides.


I loved the game, but I can see where people struggle. You cannot laser-focus on the objective. Just get in character, you are on a mysterious ship, it's completely abandoned and somehow returned to harbor still. You are just trying to get a clue what the heck is even going on here, why would you care about filling in a puzzle book?

Just enjoy the first part cinematically. Explore the ship and unlock the scenes. Absorb the atmosphere from the scenes, and enjoy the music. Try to figure out the disjointed narrative, and don't focus on your puzzle book. (One of the flaws is that the forced waiting sequence should IMO lock you out of accessing the puzzle book completely. I often forgot, and got annoyed because I could not enter the cause of death before the page got unlocked after the scene...) You will not be able to solve a lot in the first pass anyways. The game throws you some freebies, yes, but that's just to let you get used to handling the book.

For context, once I had unlocked all scenes, I had not even one quarter of the book solved, and despite what I recommend in the first paragraphs, it was not for lack of trying. This is when you notice that you have everything you need, and a sort of panic sets in. You realize that it will not get easier than this. This intrigued me a lot, and this was when the real puzzle game starts. Now you revisit all the scenes analyzing every nook and cranny of the dioramas like some nautical Sherlock Holmes. But it's never stupid "hunt the pixel" like one would assume from that description, no. I have never seen the attention for detail in any game before, and the dev really thought of everything.

If you ever find yourself thinking "Oh wow, I can deduce something here from the position of that piece of scenery, but there is no way this was intended", then the answer is always "Oh yes, it totally was". Then you enter the suspicion into the book, and suddenly the game validates you by copying your notes into print with that cheerful music jingle. After a while the screen turning black and the first notes starting will give you a dopamine rush already.

The game captures perfectly what for example escape rooms or detective stories are about. The only real downside of the game is that the replay value is 0 by its very concept. I envy you for still being able to play it blind.


That convinced me to try it out again, with a slightly different mindset, thanks.


ah, i didn't think to try playing the game like that. i'll give it a go.


For me this sounds just like the lecturer inserted some casual sexism.

I can say from my own experience at least at my university, that "Altherrenhumor" ("old gentleman humor") like this is still very common in German engineering lectures even today, or at least well into the 2010s.

I would even call such a re-ordering of the genders in the greeting very tame. If you are a woman, you better come to your lectures on time. If you enter the hall half a minute late, the entire hall would whistle at you and cat-call you. Sometimes with support of the lecturer, who would consider it appropriate hazing for "disturbing" the lecture by being late.

At least there started to be at least some sort of push-back by the administration during the years in which I studied, and the really bad stuff only seemed to happen in classes dominated by the mechanical engineers.


Yes, this is the most obvious omission of the article. It really made me think about the kind of social dynamics that must be going on in an international and culturally-diverse research station like this one. Obviously, you will try to keep social friction low, and there might be some kind of "no co-showering" policy going on to avoid conflicts.

I come from a country that is generally considered very open-minded about nudity, and having a communal shower with your colleagues after your shift (gender-separated, mind you) is considered absolutely normal in jobs that get you dirty.

And even if you are a prude, I really wonder why no-one has considered sharing a shower or sponge-bath with a colleague or two in swim-shorts. It's more unhygienic than showering naked, yes, but I would still consider this miles better than taking no shower at all for days at a time.

Or maybe the showers described are indeed communal, and they just noticed that squeezing two people below one spout is just not a efficient way to shower and does not actually save that much water...


South Pole station seems to be nudity friendly. They have saunas and 300 degree club: https://en.m.wikipedia.org/wiki/300_Club


The detection of solutions seems a bit buggy.

In the fourth task "Add the angles BAC and EDF on the given line GH", I drew the circles DF and EF in, then connected E and F with a line segment, and it told me that I solved the problem without touching the points GH at all...

Edit: In fact, simply drawing the line from E to F is already enough.

Edit 2: Similar when doing the "Perpendicular to line in a point not on a line": Drawing any perpendicular is enough, even if it is not going through that point.


Thanks for the feedback. I will check the win conditions.


If you understand German, there is a great explanation how the energy market in Europe works here: https://www.ardmediathek.de/video/plusminus/teurer-strom-wie...

It explains why currently, even though gas is so prohibitively expensive, we still run gas powered plants at the moment, and also why even with relatively low transmission capacity between countries there is still big impact on energy prices.

The tl;dr is: Energy prices are determined by taking the most expensive auction price that is required to cover the load at any given moment. Everyone who offered a cheaper rate may sell the energy, but receives the highest price that was accepted. This means that prices are highly non-linear and susceptible to supply shocks. Even though the changes from import to export with respect to France are small, a rather small reduction in cheap nuclear power immediately makes it a lot more profitable to produce energy, also making coal and gas viable again.

Also note that this model explains the cheap price of nuclear and solar: You "only" need to ROI your initial capital eventually to turn a profit. When push comes to shove you would rather sell at any price above 0 (or at least a very low bottom) rather than turning off your plant and getting no income at all. You cannot do that when you still have significant operational expenses for fuel (coal, gas, stored water).

On electricitymap you can see this behaviour in action as well. Even with something like 50% solar production, prices remain high, when suddenly, the prices collapse below zero after a certain threshold was reached. Also note that in these cases, the prices in France and Germany decouple. Customers on the German energy exchange might get paid to use energy while in France spot price still is upward of 10-20 ct/kWh.

Also:

> Under European market law, you are obliged to buy renewable energy if it is available.

Do you have a source for that? I think that guarantee only applies to Germany. And then it only says that the suppliers always get paid for the energy they could produce, wind and solar can and will still get turned off physically.

And from what I have written above it pretty much follows that renewables will always be bought if possible, because they have no fuel costs and letting them run is during positive prices always more profitable than shutting them off. Note though that many renewables are not even sold on the energy exchange and rather influence the market indirectly as most energy utilities have fixed delivery contracts with the producers and only buy/sell the excess on the spot market.


The big energy suppliers burning coal all sit in Northrhine-Westfalia, the most populous state in Germany.

Migrating away from (black) coal (used mostly in the steel industry) has caused big issues in the Ruhr area ("Strukturwandel", structural shift, meaning migration of significant parts of the workforce from coal to other sectors) in the past, which also means that the population is very wary of phasing out lignite as well. Pretty much everyone knows somebody who lost their job in a mine. Some cities like Gelsenkirchen are still structurally weak, like a lite version of Detroit. This means that politicians mow give expensive political gifts to the coal industry to provide retraining opportunities or early pensions, just so they can claim that they do not "forget" the workers this time.

While in fact, there is maybe 30k people or so in all of Germany employed by coal and its dependent industries. And nobody cares that the wind and solar industry lost 100k or so workers over the last decade due to avoidable regulatory issues and the resulting low project volume.

Anyways, you should not underestimate the amount of respect the coal workers always had in the Ruhr area. Digging coal in a below-ground mine is still the essential definition of "honest work" and sacrifice here. It's probably somewhat comparable to how military service is treated in the US, including the occasional "thank you for your service" and all. There are shrines dedicated to St. Barbara, the patron saint of mining, sprinkled everywhere, because people regularily prayed for their husbands, fathers, brothers, sons and friends to come home safely each day. Children learn the Steigerlied in school and sing it before football games. It's even worse than a lobby, the population mostly supports special treatment for the coal workers, as the mining and steel industry is still part of the cultural DNA.


Interesting. Parts of Britain were very similar. Things like every mine union chapter had its own brass band and the mine unions took great pride in thier traditions and thier local communities. Basically it’s neglected miners and steelworkers and other closed down heavy industries in the north of England that voted for Brexit just to pull the rug out from under everyone else because they were thrown on the scrap heap by Thatcher in the 1980’s and those areas never recovered. The liberal voting cities told the mining folk they were idiots for voting for brexit and so they switched allegiances from Labour (closely linked to the unions) to the Conservatives who were telling these people they were going to fix things for them, ‘levelling up’ the North of England. This hasn’t happened there is not even a coherent plan for how it could happen and the new candidates for prime minister are all going on about how they’re going to be more like Thatcher than the others, forgetting that the people who just switched to them hated her for destroying thier way of life. So be careful! Don’t disrespect the miners they will cause chaos if you annoy them!!


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: