skysight-inc/HackerNews huggingface dataset:
Always incrementing the major version, whether there is a backward incompatible change or not, complies with the letter of the SemVer 2.0.0 spec (but obviously not the spirit) – clause 8 says "Major version X (X.y.z | X > 0) MUST be incremented if any backwards incompatible changes are introduced to the public API", but nowhere does the spec actually say "Major version X MUST NOT be incremented if no backwards incompatible changes are introduced to the public API".

However, if you do that, some people will start saying "this component is really unstable, they keep on making backward incompatible changes to it". Some people just look at the version number.

I don't like SemVer because I think it encourages focusing on the version number instead of the actual version contents, and because it puts all the focus on the backward compatibility of the public API, when that isn't always the thing consumers of a component should be focusing the most on. If I remove some obscure long-deprecated public API which nobody was using anyway, then following SemVer strictly, I must increment the major version–even if that is literally the only change in that release. Meanwhile, I can radically rewrite the implementation, even create a brand-new backward-incompatible next-generation API – but if I also include a compatibility shim which maps the old public API on to the new one, and if (to the best of my knowledge) that shim is complete (even if it actually contains subtle regressions my testing has failed to uncover), then following SemVer strictly that would be a new minor version only. Consumers should be much more concerned about the second release, but SemVer will mislead them into paying more attention to the first instead.
Every page & image (they’re all embedded SVGs) is generated from scratch using raw data on every request - with the number of languages and units supported it gets quite unwieldy when pre-generating (we had a mediocre experience w that on statisticalatlas.com).

In order to render in a timely fashion the sections & graphs are rendered in parallel on a decent sized instance.
While you’d have company’s at work you would likely not have many colleagues with you as they’d be at their town … so remote challenges would remain. It would be good for 2 things: having silly IT issues fixed easily, and that work/life separation feeling as you cycle home (which hopefully you can safely do not being in big city!)
Some of the biggest messes I've had to clean up in my career were created by inexperienced people blindly following Uncle Bob's principles.

Pragmatism should come before all else in software IMO.
Yes, agree, people who seek to be in charge value the feeling of power. That feeling is diminished without physical proximity. That is actually better expressing what I was trying to get at.
100% of employers lie during the hiring process. What's your point?
The article doesn't mention "return to work." The phrasing it uses is "return to the office" or "return to full-time office work."
Looks very interesting. Can anyone tell us about the National Museum of Mathematics? Could someone in NYC stop by and report back? :)

An excellent resource for the history (and present) of mathematical concepts is, believe it or not, the Oxford English Dictionary. They usually quote the mathematician who developed the concept (the OED always has historical quotes as examples, including, where possible, the first usage in history), show how the word's usage changed over time and by different populations, and include a brief but clear, accurate (AFAICT) definition or definitions.
The interview[0] with Barbara Liskov about the principle is also really interesting.

> Although it may seem a little strange these days, in those days it was a long way from the
east coast to the west coast, and of course we had no conference calls in those
days too. That whole business about object-oriented programming was
developing on the west coast and on the east coast we were mostly working on
data abstraction, and the two worlds were kind of separated. So I knew the
name, but we didn’t run into each other at conferences and there wasn’t much
crosstalk going on.

> In the 1980s, I was asked to give a keynote at OOPSLA, which I think it was
maybe the second OOPSLA. It hadn’t been in existence very long. So I decided
that this was a good opportunity to learn about what was going on in object-
oriented languages. So I started reading all the papers and I discovered that
hierarchy was being used for two different purposes. One was simply
inheritance. So I have a class, it implements something, I can build a subclass, I
can borrow all that implementation, change it however I want, add a few extra
methods, change the representation. Whatever I want to do, I just sort of borrow
the code and keep working on it.

> The other way it was being used was for type hierarchy. So the idea was that the
superclass would define a supertype, and then a subclass would extend this to
become a subtype. I thought this idea of type hierarchy was very interesting, but
I also felt that they didn’t understand it very well. I remember reading papers in
which it was clear they were very confused about it, because one in particular
that I remember said that a stack and a queue were both subtypes of one another.
This is clearly not true because if you wrote a program that expected a stack and
you got a queue instead, you would be very surprised by its behavior. The
difference between LIFO and FIFO is a big deal.

> This led me to start thinking about “What does it really mean to have a
supertype and subtype?” And I came up with a rule, an informal rule which I
presented in my keynote at OOPSLA which simply said that a subtype should
behave like a supertype as far as you can tell by using the supertype methods.
So it wasn’t that it couldn’t behave differently. It’s just that as long as you
limited your interaction with its objects to the supertype methods, you would get
the behavior you expected.

[...]

> Meanwhile I was working on distributed computing, I was particularly interested
in viewstamped replication and some of the other work that was going on in my
group at the time, and I wasn’t really thinking about this until sometime in the
’90s when I got an email from someone who said, “Can you tell me if this is the
correct meaning of the Liskov substitution principle?” So that was the first time
I had any idea [laughs] that there was such a thing, that this name had
developed.

[0] https://amturing.acm.org/pdf/LiskovTuringTranscript.pdf page 29
Employees in tech might win this tug of war due to shortages. Demand for tech things has never been higher - both genuine demand e.g. remote learning and speculative demand e.g. bond yields are negative take my money for your sashimi delivery startup!
The article does say "return to full-time office work" or "return to the office" and not "return to work."
C-10: Don't Think This Bill Needs Amendments. It Needs a Stake Through the Heart
With the current cost of large-scale renewables, instead of spending 9 billion dollars to not get 2200MW of fission power they could have built 9000MW of solar power with zero risk, or more usefully half that peak capacity of combined wind and solar and the grid-scale batteries to paper over the variance in output.
I spent a lot of time on Terraform + Packer code to set up VPC, RDS, Route53, AWS Cert Manager, ELB, EC2, my API server, S3, CloudFront, and CloudWatch. The setup had a lot of complexity and footguns. Plus there was the risk of accidentally running up a huge AWS bill.

Later, I realized that Heroku + Netlify are good enough. Switching was easy. The hardest part was admitting to myself that I had wasted so much time on AWS. I felt relieved after I deleted the Terraform and Packer code.
Well, I think you're zooming in on why it is important that programmable money be true cryptocurrencies, i.e. no admins or VIPs with some special level of access.

If there are special people with more authority than others, that authority will inevitably be used to say this person can't get paid, this person can't pay that person, you can't buy this stuff with it, these transactions will be taxed this much, etc.

The key term is "trustlessness". The main idea is that the smart contract is specified, it can't be changed, and then the deployer locks himself out forever. Now there's no way to make a special exception for anyone, or change the inflation rate, or any other funny business. Everyone can see the rules and everyone can verify they can't change.

Another useful set of criteria is aantonop's "five pillars of open blockchains".
> The reason isn't the spit, it's to prevent being so locked in that the provider can rent seek;

As a minor pedantry, your cloud provider cannot "rent seek" just because you stepped into a vendor lock-in situation, that's not what the phrase "rent seeking" means. An example of actual rent seeking would be if US government legally required you to use AWS if you were doing business in some highly regulated sector. Being locked in particular vendor offering is definitely not a great situation, and the vendor can most definitely use the leverage to their own profit, it's just this is not rent-seeking.
70km/s is interstellar material
The two biggest problems with OO as it's traditionally used are:

1. Implementation inheritance creates brittle, tightly coupled and difficult to test code.

2. Mutable classes force you to structure data updates in a particular, inflexible way. In a world where you're sharing data across multiple clients, serializing and deserializing, using things like Redux to structure updates etc this creates a huge amount of internal friction.
Ok but this isn't going to make me forget about those cave things.
It appears that GCP is rather late to the party here.

I believe AWS has had spot instances for a very long time (more than 5 years at least)

Is my understanding correct? and if so any insights on why it took so long
Also, they use warfarin to treat stroke victims and rat poison. Because it is poisonous isn't reason to not use it in humans.
An observation: The survey refers to the Bay Area, while most of the comments here refer to SF and the problems unique to SF, such as needles and feces. Of course housing is an overall Bay Area problem no doubt.
Not really. We just eat everything.
Ironically that comes up with wildly inaccurate estimates itself.

> we take the average population totals over the relevant periods for each population (March 1, 2020-Aug. 9, 2021 for the unvaccinated population and Dec. 15, 2020,-Aug. 9, 2021, for the vaccinated population). The adjusted population of vaccinated people comes to 83 million and 295 million for the [un]vaccinated population

330 million Americans, less 83 million vaccinated Americans equals 247 million unvaccinated people, not 295 million.

They are also deliberately ignoring CDC estimates.

> CDC epidemiologists estimate that the actual number of hospitalizations may be 1.8 times higher than the reported number.
Yeah I mean look at Uniswap. Billions of dollars in liquidity locked up and it is immutable. Software development in this context is much more similar to hardware engineering, the cost of rolling back is exponentionally more than rolling put a django app or whatever. But weve been doing this type of engineering for millenia, what happens if there is a bug in the design of a bridge? Its cratastophic, yeah so what do you do to prevent that? Should we not have bridges?
I think you mean 56% :).
I guess you'd take the unlicensed driver, then? Or maybe just ask if they're a good driver? The bureaucracy measures what it measures; if it was useless, you'd ignore it. It isn't perfect (it never is), but it's a simple measure.
A couple thoughts:

* Usability: An OS without network connectivity checks and time sync might not be usable by non-geeks

* Obscurity: The threat from these pings is low. The threat of having a phone that behaves differently than "billions of other Android devices", indicating that it's GrapheneOS or some other security-oriented OS, is arguably higher.
Hiring SREs is costly...

Hiring narrowly focused people with significant pre-existing experience -- Is always costly.

... and I also think, it is practically always a wrong strategy...

I am fundamentally against micro-managing labor pools by federal government.

However, there are need to be economic incentives (including
immigration policies) -- that make it more difficult for
employers to hire for 'tool-centric' positions, unless those tools are very expensive physical devices (eg telescopes, quantum computers, etc).

The incentives need to direct employers at training on the job (not at after-work online classes).

When I see on HN's hire threads -- 'if you have Azure experience -- you will get on top of the pile' -- I cringe.

This is absolutely ridiculous. Same pretty much with Ruby/Php Rust/C++ Haskell/Scala modalities of the same problem.

Yes hire people who understand process/idioms/patters, but invest in the f..ing training -- if you need somebody 'yesterday' to help, get consultants -- and have them help and at the same time hire for full time roles -- and train your internal stuff (possibly, even, have them learn from the consultants).

Afraid of people leaving after acquiring the highly thought-out skills ?

-- implement meaningful compensation/retention policies that reflect effort that you spend on training, and risks that you are taking if a person who was just trained -- leaves.
> I purport solving this problem is akin to solving a 0.00000001% issue

It seems like Common Lisp has done quite a lot to solve this problem already, which is why it is a non-issue in Common Lisp.

> non-externalizable, non-PRINTable function objects

Yes, this would be a very annoying technique in a language with non-externalizable, non-PRINTable functions.

> This is contrary to Lisp’s DNA of interactive development and is a big no-no.

Redefining functions interactively is actually a great motivating case for cross-stage persistence. Instead of interpolating the value of the function, interpolate the lexical binding of the function itself, and then redefinitions will be reflected automatically in any expansion of the macro.
If the original settlers were Norse, are the Azores the real Vinland?
I think there might be another issue here: function objects aren't "externalizable" and so you can run into weird errors if you try to compile a form with literal functions.
Yep. Part of the build process involved spitting out some auto-generated documentation.

We had these short Jinja templates that relied on long Python scripts to do the actual work of performing the substitutions, as the logic was too complex to handle otherwise.
Common mistakes people make in Java – Part 1
Here's something fun: The Mars rovers have found multiple meteorites on Mars.

https://geology.com/articles/mars-meteorites/
>I do not get your real difference point and I do not wish to argue your point.

Fair enough. I have no argument with you. In fact, I think it's great that you wrote this book. I'm sure it will provide a real benefit to many people. Again, thank you.

That said, the comment to which I replied said:

>(To celebrate the release, the ebook is free till Oct 15. You can get it from Gumroad or Leanpub:*

>* https://learnbyexample.gumroad.com/l/cli_coreutils\*

>* https://leanpub.com/cli_coreutils\*

The sites above are the folks with whom I have an issue, and I did, in fact, note that you make your work available anonymously for free via github.

I think that's great and appreciate your willingness to freely share knowledge and expertise.

My point wasn't about you or your book. Rather, it was about two of the sites (Leanpub and Gumroad) that distribute it.

All that said, my thoughts are orthogonal to the value and utility of your hard work. Again, thank you for doing so.
Dual core Xuantie 910 out of order RISC-V SBC available for preorder
> I believe G has something like this

It does. And until the service meets the criteria, SWEs on the project are actually partially playing the SRE roles under the guidance of the SRE org.
Uniswap the protocol lives in a contract address which will outlive uniswap labs if hey get shut down. Now thats an amazing feature. If they forced Uniswap labs to ban transactions of Iran, like they might with paypal, Uniswap labs would be unable to enforce that. No matter how willing they would be. Thats massive in my opinion. Perhaps not perfect, but a much more favorable model than what we have.
I am glad everything went in a positive direction and the school didn't punish the students.
A theory with generalization can still have value. In this case, I think those who seek to be in charge do so because they value or appreciate having a certain amount of power. The lack of physical proximity diminishes that feeling. It's a theory based on a generalization, I bother to propose it because it is an interesting discussion.
You just reminded me how long it has been since I had to deal with this. Conference room group video conferencing is one of the most frustrating things about office work.
> Well, the distrust the American public has in Science! has been earned over decades.

If we split apart what the power structures say is "Science" and what Science actually is, we find the same dynamic as been since time immemorial. A priestly class with their guarded knowledge, meted out to us poor rubes in oversimplified commandments. A monk class whose esoteric studies are hidden from view, filed away in the annals of religious letters, Scientific journals, dissertations in libraries...the like.

What a time to live in though! The internet and YouTube and open access journals--Science has never been more accessible and understandable, animated, and illustrated, like it is now!

But we are in a wash of disinformation and misinformation and lying and rage, too.

Yes, the power structures are coming unglued. But Science is about truth. If only we could get our pants on and coax the crazies off the ledge.

> it has been sold with a pat and a don't worry your pretty head about it.

It's because we are treating grown adults like unruly children, dumbing everything down to the least common denominator, at times striking them with an iron rod, at times bending over backwards because Biology class was boring in highschool and the last thing we can afford in the age of distraction is to be boring!

No! We should make Science fun! If we are going to treat people like kids because they don't know Science then at least make it fun for them to catch back up! We should get people excited about discovering and learning new things again, the way a Carl Sagan could. Instead of threatening, we should be seducing and luring people into the terrifying prospect of finally figuring out how shit works.
Dictatorships tend to be more efficient at getting things done ;)

They could do so much more with the check ins. We had a rule that one household member could leave once per day for essential shopping. It would be trivial to get people in trouble based on known addresses and check in history, same for the 5km rule. But they clearly don't want to antagonise the populace too much.
They tend to camp in conference rooms more or less permanently, though.
> It's never ethical to compel the innocent to do anything.

What does that even mean? Innocent of what, having an immune system?

Financial incentives, such as being fired if you create a hazardous workplace by refusing vaccination, are a form of compulsion on an escalating ladder of methods to convince people. The government absolutely leaned on business to make that happen in order to avoid a direct mandate.
I strongly agree here: my experience is that a Lisp-2 with namespaced symbols has very few issues with function-name capture. While, at one point, Lisp-2s may have been for performance or other implementation details, I find that Lisp-2s are much nicer to code in because you just don't worry about name collisions (as long as you know a handful of relatively simple rules about macros).
I actually visited Ikea this afternoon and noticed they had the regular ones, but also one they blew up on A3 basically filling the page. Sensible Swedes.
My take is that it is a leadership skill weakness. It is an outgrowth of the (poor) management principle of: if you can't measure it, you can't manage it.

A lot of executives have little experience working with/managing staff - in real time - they cannot see. I've certainly worked under CEOs whose default mindset was "If I cannot see X at their desk, they are not contributing" etc.

Yes, these execs can look at monthly productivity/output reports and do the math retrospectively, but on a day-to-day basis, they lack the skills/tools to manage what they cannot see.
Hmm. Yeah, you're right. (Come to think of it, when I originally read it, I think I interpreted "what you'd expect" to be "raising an error", or at least I deduced that after trying it myself in SBCL.) Edited my comment.
> We only have a clear picture of the PNWYLF and JBGC because they went around bombing and shooting people all last summer.

Can you link any additional information on the John Brown Gun Club "bombing and shooting people all last summer"?
That’s very cool. Does anyone know if there is a good list of other databases that include a PostgreSQL interface?
> What makes you think that the owner operated pharmacies won't be targeted by shoplifters?

Footage from the LA Riots.
Viceroy TV – Open Up Your Eyes
I guess you didn't read my whole comment. I'll quote the part that you didn't read:

> So I wouldn't push them to go back into the office; remote work is the right thing for the team overall.

By the way, I definitely don't have an MBA. I've written around a million lines of C++ over my career. So I understand what it's like to work as an IC. Have you managed?
Applicants, not recruits. Apples and oranges. Urban PDs have been moaning about being understaffed while kneecapping actually graduating more because they are gorging on overtime. Same with public works. Remember the HN outrage with the Muni worker making $400K? They have all their cake and eat it too.

An 800K San Franciscans have been clammering for community policing for decades but it never happens. Because PDs don’t want that.

This has been the state forever:
http://sfappeal.com/2012/04/understaffed-sfpd-is-nonetheless...