skysight-inc/HackerNews huggingface dataset:
This article seems like a cherry picking exercise. In particular the cherry not picked is the exponential drop in the cost of solar, wind and HVDC lines. Taking the dates of 2000 to now for fossil fuel energy percentage is a picked cherry in that the cost of unsubsidized solar has happened just within the past five years. Sure, don't expect much in the next two or three years but in the next two or three decades everything energy wise will have changed because the technologies are now in place and will only get better.

Perhaps the reliable writing on the wall is in the stock market where the enterprise value of oil and gas companies has been falling since about 2011. That's because investors require a thirty year time frame for financial viability and that window is already closing.

You can still buy buggy whips but that industry is not what it used to be.
I suspect this means that the Zig stdlib does not use a default allocator but Zig provides a default allocator that you have to intentionnally use in your functions if you want to allocate. Is this correct ?
I may be wrong but the meat and dairy industry get a lot more state subsidies than their plant-based competitors.
Of course it is not the best use of time to optimize from day one if there is no need to have this piece of software to be fast/efficient, but if performance is an important requirement it's too late to add it at the end. You cannot optimize Apache 1.x to handle 1M concurrent connections and 1M request per second (without rewriting it more or less fully). Nginx can handle such load on a single modern server because attention to performance (efficiency) was paid from the start of development.

If performance is awful to begin with you can improve it visibly by fixing a few hot-spots (like unnecessary O(N^2) for N which can be large). But when I do profiling for software which is not too bad to begin with there usually no single place which can be changed to give statistically significant improvement - there are many comparably slow places. One can try to improve them piece by piece but sooner or later abstractions will get in the way and if performance is still not enough you'll need to start from scratch keeping performance in mind.
A package of tofu costs $1.99, which is enough for a meal for 2. How much does meat cost you these days? This trope is so tired.
You can turn it off from your view, typically, but not from it being transmitted and shown to others that you’re typing.
> For example, a heatpump can produce 5MW of heating from 1MW of electricity by concentrating the heat from the environment.

Don't those struggle in cold climates (e.g. winters consistently below freezing)?

> An electric car is 90% efficient while a combustion vehicle is about 30% efficient

On the other hand, even the best batteries have far less energy density than a gallon of gasoline, and some of that "waste" heat can be put to good use (e.g. heating in cold climates).
> He rather have a smooth data migration process than having an unexpected error and abort the whole operation that the migration is only a small part of.

that's some take, because if that "unexpected error" is not reported because FK integrity was turned off, that means the data containing integrity errors goes right in. Now your database is corrupt. Dealing with a DB where random rows here and there are not conforming to implied-only constraints is zero fun. in my own experience, things like the main page of the production site is a 500 error, with a stack trace deep into some logic nobody has looked at in two years, run the identical code on staging, works fine. Fun stuff! Seems like an odd choice to let errors like that stream right into your production DB without checking.
They could be subconciously following the herd
“… led to protein levels below recommend levels.”

Imagine a smoking study funded by big tobacco that defines its own safe tar and nicotine levels and then determines if we’re within those thresholds.
I remember using PL/1 and some GUI toolkit to create ATM screens, but it could easily have been COBOL.
GitHub has such a graph too, but limited to internal employees only. In fact that’s how they detect failures with their deployments, elevated 500 statuses. Some individual teams will have their own dashboard, but some do not (like k8s upgrades) and they only monitor 500s.

Rest assured someone is looking into this problem right now
Maintaining Files on Plan 9 with Mk
I saw that page, but actually missed the note as it got filtered by my brain’s adblocker ;)

And thanks, it won’t be till next week as I’m at a festival this weekend, but I already joined (this might be my first XMPP MUC since around 2008) :)
The point here is NOT to have the site-generator (SSG) create complete index/overview pages that would then include all the titles+summaries, but instead to understand a <!--#include ...>, parse the document it points to, and be able to use the metadata for generating its indexes, tag clouds, or whatever BUT not include the document itself.

So the SSG will understand and use the per-page metadata to generate index-type pages but actual inclusion of content is delayed until it is requested from the web-server.

Because I have covered a huge number of categories over the years and many pages will be included in multiple indexes/overviews/tag-clouds, I do not want multiple index pages with copies of the same text.
Also, where in the world do beans cost more than meat?
At $CURRENT_JOB I have no access to virtualization on Windows and I am forced to use some flavour of MSYS2 to access basic survival tools.
For the mobile users: https://old.reddit.com/r/opticalillusions/comments/rc78kw/ar...
I would guess that it does not use WSL or an actual Linux because it was written for use on Windows, and at a time when many of the Windows installations then in use were of a version that did not offer WSL.
You don’t need to be an energy historian here, you just need basic objective thought and not being a member of the climate doomsday cult.
So the trans community stands with Keffals, a documented child groomer and provider of puberty blockers + hormones to minors behind their parents' backs?

https://archive.ph/HY4hK

Promoter (again, to children) of sketchy Internet pharmacies that sell hormones with anime lolita box art and labels that say “keep away from parents”?

https://archive.ph/zZMRp
Hm, misleadingt title and abstract. Basically animal food source is more dense in protein, so cheaper. If you constrain the price of the meals, optimal solution will of course favour animal source.

In the intro they even say for western country it food source would not matter because we're above minimum protein intake.

Very misleading, not sure how this title passed the bulshit test.
Well, yes, but my brain immediately went "it's a piece of paper" and I tried to figure out what the illusion was.
Capturing a deleted message that you would never have seen is effectively changing history.

No, if it's sent then it's sent.
I suspect this might not be a problem for Zig long-term. One can imagine a blend of comptime, concepts, and generics which which can help mitigate (and often solve) these kinds of problems. When combined with compiler enforcement (or even a community-adopted linter) this could help the library author detect problems while still being able to use comptime's unique benefits.
Easy now -- this is how we get zombies.
Electricity is not the same thing as energy. Most energy use in the UK is going to be heating and transportation which are both overwhelmingly fossil fuel based.
An attacker may try to exploit bugs in the code base, or subtle language features (e.g., weird behaviours, overflows), in order to hide one or more connected endpoints. Further, in order to build assurance about the counter integrity, we would need to employ formal verification and code authentication techniques, so as to ensure that 1/ the software will behave only as intended, and 2/ nobody has tampered with the code base. In absence of such assurance guarantees – which are difficult to provide when the client can be instantiated essentially on any compatible device, the security of the protocol (ie., WebRTC + UUID out-of-band communication) reduces to software security of the code base.
Clearly the guy is being harassed by people in power. Far more egregious infractions (e.g. 10 years in business without getting a licence) did NOT result in fines.

He's not 'lucky', in fact curiously just the opposite. He's been singled out for punishment, for a paperwork violation. At no time did he not meet the requirements for being a PE, save a renewal fee. Nobody was at any time endangered, which is the line they are claiming he crossed. It's just a lie.
In general, I share his perspective but these things often follow an S curve. If you think of renewable energy as a new technology, and assume that its adoption will follow curves of other technologies, you can't extrapolate later rates of adoption from earlier rates because the adoption accelerates.

The adoption curve is probably going to look like that of initial electricity ultility uptake, or of moving from coal to patroleum, but maybe accelerated a bit more because of additional pressures.

My guess is this will end up being slower than many would like, but slightly faster than he suggests, and more diversified. That is, you're not going to see moving to all EVs, but a proportion of EVs, a proportion hydrogen, city restructuring to support mass transit, some hybrid engines, and some ICEs that never go away completely. Probably also some things we're not even discussing now because they haven't been invented yet.
20 years old is "old", now?
For example the OpenSSH agent uses this path:

/run/user/$UID/openssh_agent

Several things place sockets there, some other stuff places the socket in a subdirectory.
Heat pumps use energy to _move_ heat, not create it. Your refrigerator, for example, moves heat from inside the fridge to outside the fridge. Your AC operates on the same principle. Pump the refrigerant in the other direction (note: mechanically this isn't possible in garden variety ACs) and you reverse the effect. Given the same amount of energy and typical conditions - this won't work to absurdly cold temperatures - it's several times more efficient to use it to run a heat pump than to convert it to heat directly.
A Syscall Journey in the Windows Kernel
Threema?
How does this avoid the nesting bug? There are actually two bugs currently for my use-case:

1. The existing one where the code intended to detect nested includes fails to detect it

2. No way to know if nesting is happening, what level, or how many (that's the code I've added to mod_include)
Create your own language with a lot of transpiling: in LispE
I've mostly worked alone as a developer. No-one is going to fix it but me.

Actually I think I enjoy problem solving more than the actual programming. Though frankly programming and problem solving are so closely related they are almost the same thing.

I can solve most problems I come up against day to day. I guess I can't solve them all because I do ask questions on Stack Overflow sometimes.

I'm not sure why, I guess it's a few things:

1: As I said, I enjoy problem solving - it feels like a game

2: I have more than 35 years hard computer problem solving, so there's alot of experience which helps.

3: I understand, and make a deliberate effort to understand, as much as I possibly can about every aspect of computer systems from hardware to operating system to database, to cloud to front end to back end.

4: I use the tried and tested problem solving method of divide and conquer - when you have a problem, break the software in half and keep doing so until you find where the problem is.

5: If you are still stuck, try to create a minimal test case the demonstrates the problem - this often solves it, and if it doesn't then you can post the minimal test case on StackOverflow.

6: Only ever work on one thing at a time.

7: Work hard to learn how to use problem solving tools.... the debugger in the browser, make sure you know a little strace for doing things like tracking what file the operating system is trying to open, ngrep so you can watch data passing over the network.

8: Be relentless. Sometimes I think this is a personality "issue", but I literally will work for 10 hours at a time trying to solve a problem until I crack it. I really don't like finishing work without having all the days problems solved. I just grind and grind and grind on problems until I work it out.

9: Have a really thorough knowledge of the technologies you are working with - don't be satisfied with learning as you go - actually take the time to read the language specification for the languages you program with, stuff like that.

10: Use a really good IDE and make sure you know how to use its ability to jump through the code, to jump to function definitions. You need to be good at following the logic of the program.

11: And finally, if no matter what you do the error remains the same, then you are probably not even working on the correct code.

In the case for example of why a program won't compile, well just start cutting code out until something compiles, then add it back in little by little until you work out where the line is that fails. Even better is to use appropriate debugging tools, but divide and conquer always works.

There's also no shame in scattering these everywhere you suspect the problem might be:

print('got here!')
The only thing that makes COBOL difficult is that it is very _very_ opinionated. A good IDE actually takes quite a bit of the pain away.

At the end of the day, it’s just a thin layer over assembly.

I’m 2012-13 I wrote a Java -> COBOL bridge to directly invoke ‘MainFrame transactions’ from a JVM. Unlike the IBM solution, we never did anything with XML or text parsing and did everything using bit and integer manipulation. Java types and fields were annotated with their COBOL Record equivalents. Initially we used reflection which was fast but being Cowboys we made it even faster by using CGLib and writing custom classes at run time that could be JIT compiled.

This process was absolutely fascinating and it really took my career to the next level because a deeply understood what was happening in memory in both languages afterwards. It saved the company millions in license fees and we went from latency measured in seconds to below 8ms to invoke code.
> Yeah but what about SSL? You’ll need a handful of more lines of nginx, plus a script that runs once a month or so to get a new LetsEncrypt cert. Supposing that script you write or copy/paste works, now you’re good.

The setup might be a bit more involved, but nothing that can’t fit in a single Bash script.

> Until your site gets mentioned on HN or other social media. If you are in fact using a 3 euro/month VPS you’re almost certainly sharing 1-2 CPU cores with some other colocated VPSes. If your site gets a sudden surge in demand (and particularly if you have any images or video on your site) you’re either going to get hugged to death, or worse, people will complain that your site loads slowly and accuse you of writing too much JS.

An HN “hug of death” is a laughably small amount of traffic for a static file web server. Nginx can serve hundreds of static HTML/JS/CSS files per second even on a cheap VPS.

> My recommendation is to use Github/GitLab pages with a free Cloudflare in front for caching and SSL. That’s the setup I use for my site (https://chrisuehlinger.com, but grumps beware: it is absolutely soaked in JS). It’s free/month, doesn’t require moving parts like a manually rolled LetsEncrypt bot, and holds up when my site gets traffic.

I’m sure that setup works well for you, but it’s overkill for serving static files. Unless you’re a truly special case, literally everything you need can be handled in a single VPS, which is dead simple to manage and very easy to move around if needed.
If you've half a clue and understand why E2E is important for communicating about crimes, you wouldn't use Telegram at all.

Thank deity they're not.
That might have been how it started (https://www.ibm.com/ibm/history/ibm100/us/en/icons/reldb/).

But it's definitely not what it means for the great majority of contemporary contexts.

Relations in modern RDBMS are usually aliases to foreign keys unless otherwise specified.
> The backstory is kind of funny - not so long ago my friend had a rant about his former boss. He told me a story of how his former boss accidently sent him a nasty message and then immediately deleted it. My friend wanted to confront him but had no proof because the message was gone too quickly.

Great example, justified too. The message was read and had impact. Retracting it removes accountability and proof. Not something you want in a professional setting.

One can achieve the same with Snapchat.

In the end you can hexedit something like this as there is a statement involved "if message received is remove_message_id and is_owner_of_message are true or remove_message_id and is_admin are true its deleted. With something like Java (Android) decompiling yields pretty much something akin to the source. And everything has a native Android 'app' these days.

OTOH perhaps a good thing laymen cannot achieve this. We don't know the exact impact of the pros and cons of the feature.
Exponential drop in the cost of solar/wind is good, but will not necessarily continue for long, and to become a large % of the grid will also need to come with gigantic storage projects. If all it took was plopping enough solar panels down and wiring them up, this would be pretty straightforward. Nobody knows how to quickly scale up the storage though. Lots of pumped back hydro? Trillion dollar projects, and we have water crises all over, so we can't just dam up any river that it is convenient to do it either.
Interesting approach. Any blogs you could point me to?

I am also looking to self-host Bitwarden.
My other beef with no foreign keys is that it makes a database a lot harder to understand.

There are any number of tools that will generate me a pretty and useful database schema diagram if I point them at a relational database. This is incredibly handy when you're new to a database and need to figure out which tables to query and update, and which (gasp) sprocs you need to call. I've been on projects where people have been poking around in the dark, and then a good database diagram has saved us days or weeks of effort trying to figure out how to make something work. As I say, there are plenty of tools capable of generating one of these in seconds or minutes[0].

However, if you don't have foreign keys, the utility of such a tool is severely diminished because you just get a big pile of nodes representing tables clustered at the top or bottom of your diagram (depending on exactly which layout algorithm is being used and how it's been configured).

[0] Many years ago I and three colleagues built one of these: Redgate's SQL Dependency Tracker (https://www.red-gate.com/products/sql-development/sql-depend...). It was pretty neat because you could build a diagram spanning databases, or even linked servers, and unlike most other tools at the time it could handle thousands and thousands of database objects, but the product name doesn't really help get across that it's fundamentally a diagramming tool. I built the dependency engine, the graph, and radar views. We used yFiles from yWorks for the graph layout calculations, with a bit of extra hackery, but I seem to remember yFiles lost compatibility with a newer version of .NET at some point so (or something along those lines) so RG ended up swapping it out for something else.
Mathematically a relation is a set of tuples; which is exactly what a table is.
I have often found myself being able to dig forward way after many of my peers (not all) are out of ideas. I have seen a shift in my own ability to debug problems after I realized that with increasing "hardness" of the bug, you need to just increase the level of systematicness and rigor of your method.

The very first thing should probably be to carefully check which commit introduced the error, and then carefully study the code changes in that one for clcues.

After that, and possibly based on that, what probably most people will do is start their debugging process by running a debugger through some suspicious parts of the code, based on varying degrees of well-informed suggestions.

For problems that escape those first tries though, what you often need to do is to start a systematic process of ruling out possible sources for the bug. In many ways this resembles scientific studies where you try to control as many variables as possible, and also include control samples with known states, trying to zoom in on only the particular variable you are studying without noise from other things.

That can mean feeding the system or code under study with carefully set up data for which you know what the effect should be, and then carefully trying to change each part of it and observing the outcomes. Things like that.

In my experience, this type of effort will eventually most often lead to the solution. The main challenge I think though, is to realize how deeply you might need to go with the systematization and automation of things, to really rule out possible sources and start zooming in on the general area around where the bug is. You might need to take some real drastic measures, and this is where I see most people who fail, don't go far enough. Here you might need to really get away from the screen to get your thoughts flowing more freely ... but not in an undirected way, but rather trying to answer the question "How can I do this in an even more systematic way ... to rule out even more possible sources, or identify unexpected behavior".

Not super easy to put into words, but this is in my experience the way to go.

Finally, one caveat is that there are certain things you should probably check before even going the systematic path. Things that can totally screw things up so that whatever you do, you never get any systematic pattern of behavior or behavior change. These things often are related to caches in various form. Make sure to turn off any and all kinds of caches in the system. They will almost guaranteed drive you insane otherwise.
An explanation behind why Rhythm Nation crashes hard drives
A few years ago a manual could really help to fine tune car performance, but a modern automatic transmission is just superior to anyone switching gears. Especially if you have a strong motor with a high torque that can polish any slip clutch in a second.

I would really like a modern car without shitty media systems. A desktop PC with mouse and keyboard would be awesome, directly attached to any sensor periphery and the coffee machine of course.
When you don't have a secure E2EE coms channel with someone, these services enable creation of a one time link that you can send over SMS/email. If the intended recipient is unable to open the link, you know your coms have been intercepted.
Great hire! I hope she will do well.
By being accessible on these unsafe, unencrypted services, you increase their value and increase their attractiveness to your friends and family and associates.

If you believe that private communications are important, you should delete your account on unencrypted services (iMessage, Discord, Telegram, Instagram, Facebook, etc) so that you are not reachable at all via these methods.

Otherwise you personally serve as the honey in the surveillance trap.
LLVM 15.0.0 Release
Nit: COP is "coefficient of performance [not power]"
Antihypoxiant by Andy Weir: http://www.galactanet.com/oneoff/antihypoxiant.html
In the last year: renewables provided up to 60% of electricity generation, with an average of 30%.
https://gridwatch.co.uk/renewables/percent
Ironically, the first image makes me think of a dreamy blur when it's in fact a dirty lens, but the author's image makes me think of a dirty lens when it's a calculated attempt at a blur.
The ruling party cultivated an army of right wing social media trolls to attack its political opponents. Now they’ve gone out of control.