skysight-inc/HackerNews huggingface dataset:
It's certainly possible. But I think it's equally likely that applied naively, we'd see more breaches as public SBOMs make it clearer what attacks will work where.

There's also a real question of net value for effort. Security is one consideration people balance, but it's far from the only one. Starting with SBOMs as the focus assumes too much about what people care about and how much work they'll do.

I'd much rather people start with some user-focused approach and then making use of particular technologies (like SBOMs) as needed to advance people's actual goals.
I think you're correct. I used to get advertisements all the time for "logistics.amazon.com".

Which if you were to believe it, Amazon wants to "help" you start a delivery business, with as little as $10k to invest.

Think about that for a second.

Instead of paying delivery drivers and providing capital (trucks, gasoline, insurance, etc). Amazon wants YOU to pay them for the privilege. They've turned what should be a job into a contracting business with one, predatory customer. Amazon.
That might be difficult though, with IBM retaining the brand that people aren't fired for purchasing.

IT would know to go with the Redhat talent, but would management go with it?
Aren't you just moving the goalposts now?
Insider Trading is legally defined as registered company insiders trading or selling insider information for profit.

It makes no sense to say that a congressman is "insider trading" because they are given a report on the outbreak of disease in China.

There is no such thing as "insider trading" for geopolitical or macroeconomic events.
The issue with SOLID is not that it's wrong or outdated, it's that some people think it's something you learn in five minutes by reading its Wikipedia page, which it isn't. It takes a lot of effort to develop skills to adopt SOLID effectively.

> When I look at SOLID, I see a mix of things that were once good advice, patterns that apply in a context, and advice that is easy to misapply. I wouldn’t offer any of it as context-free advice to new programmers.

Off course! I wouldn't offer any OOP architectural/programming principle as context-free advice to new programmers. It's easy to misinterpret it if you don't contextualize it, show how it's used in real projects, discuss advantages and disadvantages, and so forth.

> The Single Responsibility Principle says that code should only do one thing. Another framing is that it should have “one reason to change”. I called this the “Pointlessly Vague Principle”. What is one thing anyway?

This gives me the impression that the author indeed misinterpreted this principle, just to name one, oversimplifying it. If you like the author have trouble understanding the Single Responsibility principle, take a look at "On the Criteria To Be Used in Decomposing Systems into Modules" by David Parnas [1].

It seems to me that the author also oversimplified the other principles as well, maybe on purpose, for using controversy to attract attention to his post.

[1] https://www.win.tue.nl/~wstomv/edu/2ip30/references/criteria...
I‘ve been using MS Access some twenty years ago to do all sorts of magic for small businesses. That was from the 90s to the early 2000s. - Later I‘d use Python to do magic for companies who didn‘t know anything better than MS Excel to handle large sets of data, and when they were lost in chaos, I‘d start to streamline, process, tidy their data and help them make sense.

Just two examples that showed me: Use whatever helps you to get the job done, automate and streamline processes, select tools that might give you a competitive advantage.

Edit: I love Emacs, for everything text and code and some more, but there are way better tools for the task the author describes.
Thanks for sharing this website, it's insane how far behind the curve Safari is on... well, every technology.
Thanks for responding! That wasn't my experience with using enter, but i just tried it and it works, so I'm pretty sure that was just me :) the command being relegated to buffers is useful to know.

> - `tab` inserts the current selection in the input. Do you mean something else?

In emacs (specifically ivy/helm), tab in context-sensitive. Using tab on a command input autocompletes that input, where elsewhere it behaves differently. There doesn't actually seem to be a nice way to select from the command lists given (like the session selector) without typing it in, and that means I have to type it in in full, which is awkward and cumbersome.

One final note is I just tried using it again -- first problem is duckduckgo.com does not load, I just get a blank page after it says "finished loading". The other is that the default key of 'd', I had assumed would close the buffer, but I guess that must be 'x' because it closed the entire window, which I would have expected from 'q'.
Show HN: 3D Web App Responds to Your Head Movements
Greetings fellow Earthlings,

I have a new project that uses Handsfree.js to track your head movements. I would love to hear what feedback anyone has on it. I’m new to Three.js and am super curious about what advice is out there on combining Three.js with computer vision!

Handsfree.js is a library built by Oz Ramos, off of Three.js and Google MediaPipe: https://handsfree.js.org/

You can run this project locally using just your browser. If interested, please head over to the following link, fork the repo and and open the "index.html" file: https://github.com/UPstartDeveloper/headsetsGoodbye/tree/mai...
> The full process involved 16 steps, each of which was so specialist, it was carried out by a different village

This is not written like a documentary. It's written like ad copy. No detail about these 16 villages is given. I'm just being sold on the idea that it was very worthy of a high price.

> As the European thirst for luxury fabrics increased

I cant stand this kind of stilted language. The author, Zaria Govett, repeatedly uses it when discussing the English.

> Though the British-made muslin didn’t come close to Dhaka’s original – it was made with ordinary cotton, and woven at significantly lower thread counts – the combination of decades of mistreatment and a sudden decline in the need for imported textiles killed it off for good.

This doesn't really add up. If the stuff made in England was so obviously inferior why did the market for the real stuff dry up? You can generally make fabric with any thread count you want depending on how durable or economic you need it to be. In any case, was European demand the only thing keeping this industry alive for the past 2000 years? If so, how it it the English's fault because they decided to make it themselves? The author's dislike for the English seems to be the real motivation for this piece. Why the BBC published it is an exercise left for the reader.
It's possible to rehabilitate large-scale damaged ecosystems (2012
Python, with a few type annotations and pytype.
Sounds a lot like the flu.
I think the ubiquity of fakes and ease of how they can be made will provide a shield for politicians doing indecent things. They can claim recordings are fake.
>SF poop-testing startup, once compared to Theranos, charged in $60M fraud scheme

Hmmm...

I believe there's a joke in all of this...

Something having to do with that old expression about when "something" hits the fan...
Would a Tired Dev reverse an integer in JavaScript
I find this quite a beautiful analysis.
I work for Red Hat.

This article doesn't match (my) reality. I can speak only for myself, but very little has changed, and what changes there have been, are more easily attributable to the leadership shuffles after Jim moved up, than anything else.

Two thing that they are absolutely wrong about, is the claim that there were layoffs last year which included Red Hat, which didn't happen... and the truly lol-worthy claim that (quote) "the Fedora project is being outsourced to Microsoft and AWS", because many repositories are on Github and some of the build infrastructure is hosted on Amazon.

"tech rights" has a bit of a ... reputation. I would perhaps take their claims with a shaker full of salt.

https://www.reddit.com/r/linux/comments/4541p6/can_we_not_po...
IBM and Oracle are going neck and neck for the crown of most self-destructive technology company.

My brother-in-law in consulting has told me several stories of people getting fired for buying IBM in recent years.
YC is a VC at a mass scale, obviously profit oriented.

They’re not angels (pun intended)
Covid-19 is not a corporation, so the notion of "insider trading of non-public corporate information" makes zero sense.

Insider Trading isn't some vague catch-all for non-public information. It has a specific meaning that relates to publicly held corporations.
I have an aeropress, but just make instant. After I was sick, I need 12 cups of coffee daily just to stay awake. I wonder if I will ever feel the same again.
That might be difficult though, with IBM retaining the brand that people aren't fired for purchasing.

The MariaDB guys pulled it off
FPGA Design in MS-DOS Nostalgia (Xilinx / OrCAD)
And to pile on this, I know a triathelete in my group, 24 years old, who had it in April of LAST YEAR and is still not at 100% (can't do any hard aerobics without getting wildly out of breath).

We are still in a pandemic. Stay distant.
How to Collect $1.4T in Unpaid Taxes
I think if you talk about the behaviour of the system without talking about the technology it becomes quite clear that this system is just poison. You have to pubish your deals before they execute, and then everyone else has an opportunity to bribe the people processing the deal to screw you up. Who actually wants that behaviour?
Like any metric, it's not perfect, but there's a lot of good information there.

Dota added a win prediction graph a while back that's been valuable to look at. It's not really a black box, because you can see the win % change over time and get a feel for what it's weighting. For example, it takes character selection into account, and the initial prediction can get to 60/40 before the game even starts.

The bit that I found the most interesting is when the prediction doesn't line up with my intuition of the game state. I've had a couple of comebacks from a predicted 1% win chance, and all those felt more like 20-30% comebacks, where we were down but definitely not out. A map is not the territory, and that's easiest to see when you fall off the edge of the map.
Pretty bad example. A wedding photo has intrinsic value mostly to the people who pay for it and has about 0 value to about everyone else. (There is a small group of friends and family for whom it as some, lower value.)

Most NFTs don't have much intrinsic value to anyone specifically apart from the belief that it has value to others and thus it can be sold (i.e. converted back to money).
:-)

>>> class Money:
... def __init__(self, currency, amount):
... self.m = Counter({currency: amount})
... def __add__(self, other):
... self.m += other.m
...
>>> Money("USD", 10) + Money(10, "EUR”)
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "<string>", line 5, in __add__
File "/var/containers/Bundle/Application/F8EBA093-47B6-4538-A3A5-553C9C2234FA/Pythonista3.app/Frameworks/Py3Kit.framework/pylib/collections/__init__.py", line 805, in __iadd__
self[elem] += count
TypeError: unsupported operand type(s) for +=: 'int' and 'str'

Even Python yells at me for that.

In all seriousness though, how far do such mistakes survive? Not past compile here, but in other cases it could. Could it pass tests? Unlikely. Could it pass casually running the code, not impossible but again seems unlikely.

How many PRs on Github for projects written in dynamically typed languages are things that would be caught by static types? Some, it’s non-zero, it’s not anywhere close to a significant proportion though.
The only way someone could arrive at the conclusion that “write simple code” is superior to any clean code principles is when they have already “absorbed” and perhaps transcended these principles. What does this tell us? It takes a mature developer.

You cannot tell a junior developer to just “write simple code” and then expect any kind of sensible result. But then, you also cannot tell them to write SOLID code. Indeed, you need to teach the basics first: How to understand the requirements. How to write any code that fulfills them. How to write legible code that fulfills them. How to write good code that fulfills them.

If you dump these principles onto developers that have not yet learned the proper developer mindset, the outcome will most likely be disaster. It is very hard to repair the damage.

Only after a developer can actually write good code can you teach them how to take it to the next level. How some libraries are just so awesome to use without having to check the docs. How to conceive code you’ll look at in 6 month and think “damn, that’s some shit”.

Why every single clean code principle is a recipe for disaster – if told to juniors.
That's what he's saying
A Case Study of San Francisco’s 833 Bryant Street Project [pdf]
The author is absolutely wrong on power grids. The power grid is over-provisioned in the sense that it has a lot of power on stand by. The physical electrical grid is really balanced more or less instantaneously. Inertia in generators together with droop control take care of this balancing process. But you really do burn less fuel when there is less demand.

The energy is not wasted, it is ordered, not demanded and thus never produced. If it were produced it would actually be extremely difficult to get rid of this much energy. You can't just easily dump energy.

As the author is waving their credentials around, I am an active researcher on renewable power grids. It's a bit scary to think that someone with such a basic misunderstanding of the power grid was asked to referee a paper on this, but then a lot of marginal research is published everyday and referees have to come from somewhere...
This is definitely the smartest video I've seen in years, perhaps ever.

Questions I have: If the apple were traveling back in time would it essentially be falling away from the earth instead of falling into it? Would traveling forwards in time like George did in The Time Machine 1960 film (or the unnamed protagonist of the book), would essentially get crushed by ramming himself into the earth? I like these notions because it helps relieve me of grandfather paradoxes of time travel and make me dream of travel to the stars without having to forever say goodbye. Also like the fact that it doesn't require an extra incomprehensible dimension like in the case of warp bubbles.
The problem with SOLID is not SOLID, it's the fetishism that sometimes surrounds it. I get it, rules are attractive as they make everything easier. You put on blinders and follow the track. But the fact that there's so much disagreement about how to best build software, with valid arguments in all sides of the multiple spectra, should hint at its truer nature as a craft (some would say a philosophy, but I haven't yet reached that level of enlightenment) rather than an exact discipline. Isn't it time to perhaps get comfortable with the idea that there are no perfect solutions, only trade-offs and that the right answer is most likely "it depends"? I understand that some people feel protective of their investment at internalizing the various "principles", but learning them doesn't give anyone a license not to think and to mindlessly apply them. And yes, SOLID is mostly useful in its essence, but over time parts of it have caused confusion and have not always aged well (https://codeblog.jonskeet.uk/2013/03/15/the-open-closed-prin...).

At a more personal level, the DIP section of this article hit close for me, as I've (again) lived the described scenarios a mere week ago. Sometimes `main()` is all you need and all you'll ever need. The extra tooling is also debt. If you choose to incur it, it must palliate to an actual problem that you actually have, else YAGNI.
How to make a video game inside a font
It's not some one-for-one trade where Mom A shows up at Family B's home for her shift as nanny, while Mom B does the reverse.

In reality Mom A is a nurse, and cares for 20+ people in a day, and Mom B is a school administrator, both provide more than one-day-of-mothering value per day worked, so it's actually in everyone best interest that they leave their kids at daycare, consuming 1/6th of a less-talented person's day, enabling their professional output. Even the daycare worker multiplies their output by watching multiple children.
This was the plan all along. Because IBM is a services company they actually make more money when they have lower quality employees. It is better to bill people out at 300/hour who are going to screw things up and make the project twice as long rather than bill people out at 500/hour when they are going to be able to finish early or scrap the project entirely because it was vaporware to begin with.
Accountability on Demand via Virtual Coworking
All of the replies to you didnt really touch on what they are, a store of value. It's fair to think of them more like savings accounts.

You can buy a replica of a piece of art to look at it. You buy the original to store value. You hope it may appreciate as well. It could end up worthless. But until someone says otherwise, it has the value stored in it.

It's just like baseball cards. You can make unlimited indistinguishable copies, but you don't. The date they are printed matters for some reason. Who owned it previously, its last sale price at auction is part of its history and thus its value.

Sorare/ubisoft also has a much better value proposition. Theyve combined draftkings and pokemon into a live betting market with collectable cards that you can use to play a game, to win more. The early generation may be simple digital art, mostly worthless, but there will be more innovation to come. Part of the reason I think NFTs are the real deal is because I think the value of art is often stupid, and yet it still has value. Even if 99% of NFTs turn into nothing, there will be some early art from people that arent famous yet, that is someday found. I have no doubt there is an immense amount of mystery being planted, waiting to be uncovered. Whatever stupidity and hype and storytelling and history around artwork, that I dont understand, will translate to this realm as well. The lack of decay, fire damage, traditional theft, and loss will be an interesting wrinkle.
You work for Red Hat, nice! Would you give us any hint or bit of information if IBM has any plans to release an affordable POWER system similar to BlackBird entirely designed by IBM from processor to OS?
I understand that this is almost nitpicking (because the DRY example is not the point of your comment), but your DRY example is a really bad example of this, but rather a very good example of the lack of knowledge within the software community. According to Wikipedia, DRY means "Every piece of knowledge must have a single, unambiguous, authoritative representation within a system" [1], NOT to deduplicate all code that looks the same. It's actually more or less exactly the same as the Single Responsibility principle.

PS. Interviewing senior devs, team leads and tech leads atm. And so far none (!) have been able to properly formulate this (even after I'm hinting that it's not only about code deduplication) and 75-90% believe it's all about code deduplication. Imo quite scary, and tells you a fair bit about the shape of the software dev industry...

[1] https://en.m.wikipedia.org/wiki/Don%27t_repeat_yourself
I think it's an inevitable outgrowth of complexity. If the number of pieces grows by O(n), then interactions between pieces grows by O(n^2). It doesn't take much complexity before gluing pieces together becomes the dominant activity in an enterprise.
I am hearing from friends and family in Brasil that the Brasilian variant is more severe among younger victims than the original COVID version. There is an increase of deaths among twenty-year-olds as a result.
Plus widely available monoclonal antibodies to be administered as soon as a positive test.

Plus the development of other antivirals.
>When you're writing a library

99% of developers are working in boring business software with 2-3 other developers.

99% of codebases will be touched by maybe a dozen developers in its entire lifetime.
>There are so many instances in code where two options are just as good as eachother by some negligible margin.

This is my other beef with SOLID: no trade offs.

I'd even extend your point to say that there are many times when code is not ideal but fixing it isn't worthwhile.

It would be nice to have a set of principles which recognized costs rather than promoting a vague, idealized standard for developers to fight over.
Someone at Microsoft needs to screw their head on straight and admit their experiment in "continuous updates" has failed.

They thought they could push toward the frequent cadence competitors like Google have hit with Chrome, but they don't have the code foundations or organizational culture to make that work.

Random updates borking your PC and unwanted telemetry that's whackamole to keep disabled are two reasons I avoid Windows 10 like the plague. When they finally change course and release Windows 11 maybe I'll come back and have a look.

- After the release of the March 2021 Windows 10 KB5000802 and KB5000808 cumulative updates, users began experiencing "APC_INDEX_MISMATCH for win32kfull.sys" BSOD crashes when printing.

- Microsoft released the emergency out-of-band update KB5001567 ... while this update fixed the bug causing Windows 10 to crash when printing, it did not resolve the other issues users experienced ... missing text and graphics.

- To fix the remaining issues, Microsoft released a second OOB emergency update on March 18th, known as KB5001649 ... it replaced the previously offered KB5001567 update.

- Starting today, Microsoft appears to have paused the rollout of KB5001649 ... devices are now offered the KB5001567 update released earlier this week instead.

- Microsoft has not provided any official reason for the pause, and the KB5001649 support bulletin has not been updated with any information. Furthermore, the update is still available via the Microsoft Update Catalog, just no longer via Windows Update.

- The rollout has likely been paused due to the many reports [1, 2, 3, 4, 5] of users receiving a "We couldn't install this update, but you can try again (0x80070541)" error ... Another possible reason is that people are still crashing when printing with this update installed.

What a mess.
> how else would the conversations go in a corporation (whose sole or primary incentive is by default monetary)

This isn't really a corporate issue at all though. Given scarce resources (whether physical or human), we need to be able to allocate resources efficiently. A conversation along these lines happens in public health systems all the time: how much money should be spent on medical interventions? There, the concept of a QALY (Quality-adjusted life year) is used, and typically, a price limit is set per QALY. Then, only interventions below that threshold will be funded. The idea is that since the healthcare system has limited funds, it doesn't make sense to spend exorbitant amounts delivering marginal results for one patient.

Now, one could argue this is simply a monetary issue, and if we didn't use money to measure these things, the issue would go away. The thing is, even if money isn't an issue (somehow), scarcity is still something we need to deal with. Developing and administrating medical interventions takes human labour, and spending a disproportionate amount of person hours on small gains is still an issue.

This comment is probably a little rambling, but the TL;DR is that given scarce resources (whether that's money in a corporation, or chemists and doctors in a health system), doing calculations on human lives is necessary if we want to make sure we allocate resources effectively.