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

Hasn't stopped certain parties from doing the same thing as Italy though, the CSIRO being credible really hurt their efforts though, Murdoch press tried & failed to discredit them with ferocity.

Worst part is, even if price comes down I think they further poisoned the idea of nuclear in Australia because their plan was brazenly to keep the coal & gas plants running in the meantime rather than spend money on wind/solar. They didn't even make an effort for their timelines and costs to be remotely believable.


F# also has substantially better type inference so you don't need to write the types out everywhere, type aliases are first class too so you can easily write out some helper types for readability.

You can pipe a monadic type through various functions writing little to no type declarations, doing it nicely is F#'s bread and butter.

In C# version n+1 when the language is supposedly getting discriminated unions for real this time I still don't see them being used for monadic patterns like F# because they're going to remain a menace to compose.


I'll defend her on this one somewhat, Github has no exemption as written and she's doing her job.

It's just another layer in the stupidity of this all that GitHub would be blocked but steam, discord and Roblox are exempt because they're for gaming despite being infamous environments.

---[1]

(1) For the purposes of this Act, age‑restricted social media platform means:

(a) an electronic service that satisfies the following conditions:

(i) the sole purpose, or a significant purpose, of the service is to enable online social interaction between 2 or more end‑users;

(ii) the service allows end‑users to link to, or interact with, some or all of the other end‑users;

(iii) the service allows end‑users to post material on the service;

(iv) such other conditions (if any) as are set out in the legislative rules; or

(b) an electronic service specified in the legislative rules;

----[2]

For the purposes of paragraph 63C(6)(b) of the Act, electronic services in each of the following classes are specified:

(a) services that have the sole or primary purpose of enabling end‑users to communicate by means of messaging, email, voice calling or video calling;

(b) services that have the sole or primary purpose of enabling end‑users to play online games with other end‑users;

(c) services that have the sole or primary purpose of enabling end‑users to share information (such as reviews, technical support or advice) about products or services;

(d) services that have the sole or primary purpose of enabling end‑users to engage in professional networking or professional development;

(e) services that have the sole or primary purpose of supporting the education of end‑users;

(f) services that have the sole or primary purpose of supporting the health of end‑users;

(g) services that have a significant purpose of facilitating communication between educational institutions and students or students’ families;

(h) services that have a significant purpose of facilitating communication between providers of health care and people using those providers’ services.

[1] https://www.legislation.gov.au/C2021A00076/latest/text

[2] https://www.legislation.gov.au/F2025L00889/latest/text


> Returns a `String` instead of a type which disallows the formulation of the problematic `assertEquals` to begin with.

I'm not sure what the best attribution would be but "Make illegal states unrepresentable" would be a fantastic addition to this list pairing well with "parse, don't validate".

A stricter type would force you to parse the URL and would either fix the error (because cleaning trailing/leading slashes might make sense here) or throw a clear error from the parser.

It can be slightly more verbose when you just want to write a string in your test for convenience but can (and does) save a lot of debugging pain for less trivial cases.


>> Returns a `String` instead of a type which disallows the formulation of the problematic `assertEquals` to begin with.

> I'm not sure what the best attribution would be but "Make illegal states unrepresentable" would be a fantastic addition to this list pairing well with "parse, don't validate".

The phrases I have seen describing using types to make illegal states incapable of being represented are "programming with types"[0] and "type level programming"[1].

HTH

0 - https://www.manning.com/books/programming-with-types

1 - https://rebeccaskinner.net/posts/2021-08-25-introduction-to-...


Works fine in AU settings too.

It's not as good as google at knowing where you are (gee I wonder why) but if I search Bahn Mi <my town> the results as good as google. Results for something niche like "Keycaps" are showing lots of local results too (or as local as you can get living outside a capital city in Australia).


And more better? I'm not sure either.

In all these examples I feel something must be very wrong with the data model if you're conditionally assigning 3 levels down.

At least the previous syntax the annoyingness to write it might prompt you to fix it, and it's clear when you're reading it that something ain't right. Now there's a cute syntax to cover it up and pretend everything is okay.

If you start seeing question marks all over the codebase most of us are going to stop transpiling them in our head and start subconsciously filtering them out and miss a lot of stupid mistakes too.


This is something I see in newbie or extremely lazy code. You have some nested object without a sane constructor and you have to conditionally construct a list three levels down.

This is a fantastic way to make such nasty behavior easier.

And agreed on the question mark fatigue. This happened to a project in my last job. Because nullable types were disabled, everything had question marks because you can't just wish away null values. So we all became blind and several nullref exceptions persisted for far too long.

I'm not convinced this is any better.


NPM isn’t perfect but no, it’s fundamentally self inflicted.

Community is very happy to pick up helper libraries and by the time you get all the way up the tree in a react framework you have hundreds or even thousands of packages.

If you’re sensible you can be fine just like any other ecosystem, but limited because one wrong package and you’ve just ballooned your dependency tree by hundreds which lowers the value of the ecosystem.

Node doesn’t have a standard library and until recently not even a test runner which certainly doesn’t help.

If your sensible with node or Deno* you’ll somewhat insulated from all this nonsense.

*Deno has linting,formatting,testing & a standard library which is a massive help (and a permission system so packages can’t do whatever they want)


Given the quality of some of that combo I’ve seen vomited out, it’s technical dismerit.

I wonder if you’re better off with something critical mass enough that an LLM can correctly write it at all but not trained on mountains and mountains of slop.


This has been an interesting realization for me, seeing the LLM well poisoned by its poor understanding of hooks and effects has opened my eyes up to how much the average developer also doesn't understand these things.


Silverblue is great but regular Fedora is worth a look too if you don't want to deal with the teething issues of managing all your dev-tools with Silverblue's immutable setup, granted that was 2 years ago when i tried so thing's might be better now.

Infuriatingly; I have a macbook because a couple years ago I wanted a laptop that just worked while keeping my familiar tools but it really feels like Linux is trending up in polish and macOS on the down with an intersect possibly happening in a couple years.


That Apple would allow this development to happen without any reversal is astounding. If allowed to continue it could seriously damage their MacBook market share.

Then again, they may not care that much as long as they have the iPhone customer base.


Apple was once all about creating, lately it's all about consuming.

I expect the MacBook to be replaced by the iPad any second now.


In bluefin (silverblue based) they have brew preinstalled, which helps alot. Plus now its more mac-like.


Leavener example might be genuine tweak because they thought it would be better but it could easily be cheapening of ingredients which is a problem with premade mixes too.

The box might be the same volume but i'd expect most mixes wouldn't taste the same these days either. Any mix with chocolate in particular has had the cocoa quantity + quality reduced to the point I can often barely taste it because it's such a comparatively expensive ingredient.

Who else has family recipes with "can of X"? that can of soup from 50 years ago is not the same as today for the worse. I know one of my parents recipes will be gone forever if the creamed corn they use is discontinued or changes to be like every other brand.


The “healthy request” or “low sodium” cans will have potassium chloride and sugar added, compared to the conventional.


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

Search: