skysight-inc/HackerNews huggingface dataset:
Interesting because in the original post, he declares his resolve to quit HN and declares that he's not visited it in one whole month. "Yeah, right", I thought, and indeed in the intervening 3 years, he came back.

I'd wager most of us have needed a break at some point. I myself have gone through at least 4 accounts since 2006. I periodically "delete" them by setting minaway to 999999999. The act of starting over with a new account with zero fake internet points does help keep their value in perspective, though.
Draw a graph with vertices labeled 0 through N, then add edges i->(i+1) and i->(i+2). The answer is the number of paths from 0 to N.

This is still pretty specific to counting paths in the same way the original knight problem is, though.

The other comment is talking about how you represent each state for the recursive function as a vertex, then connect it to its dependencies (basically taking the recursion tree, but merging identical calls).
from the comments:

>Shame that COVID-19s still here. Can't attend Intel's funeral.
Discord replacing Skype is a good example. It was the early consensus that a web app couldn't be better than native and now we have so many amazing examples (GDocs, Figma) and growing.
A brief history of styling list items
I'm not a real expert, but is this design very similar to Oracle database storage engine? I think they also use logs for undo and page level transaction locks and such if I'm not mistaken.
IBM is splitting itself into two public companies
Monorepos:

- Work best when you have an open culture

- PCI compliance will be annoying

- The obvious--everything in one place

- Need good tooling around keeping master building

- As they grow, become an uphill battle to use with an IDE

- Test are likely to slow down as the repo grows, so tooling around tests

- Usually lead to a rats nest of dependencies

- Third-party library upgrades can be painful

- Coupled with CD (and it really needs to be coupled with CD), it's easy to get surprise breaks

Multirepos:

- Every team will need to dabble in build and release engineering

- Changes across repos are slow and painful (I claim this is a feature because it makes you think about versioning and deployment)

- Library developers have to think more about versioning

- You'll probably need a binary repository like Artifactory

- More time and tooling needed to do library upgrades (especially interesting for security issues)

- Harder for people to switch teams
>At the same time, if you have 10 micro services which are accessed by 1 frontend, it may be a little bit messy to keep all that code in the same place.

Why is this messy? Using folders to separate your code has no intrinsic organizational difference than using an entire repo. There's no issue in throwing every app in your company under one repo and just using a folder to organize your stuff.

Separating code into multiple repos makes one repo less aware of changes in another repo. It actually makes things harder and worse.

This is the same issue with monoliths and microserves. You don't need to separate your code into several computers just for organizational issues. You can use folders to organize things.
> arresting a person that set fire to a car in order to intimidate a witness in a sexual abuse case is a good thing

The little problem is all the people who might have Googled 'how to set fire to a car' but who didn't actually set fire to a car.

Even the basics of conditional probability are not well understood by many judges and jurors - heck, they're not even understood by many people on HN. Many people have been convicted of crimes they didn't commit. We know of many cases where people have been exonerated after years in jail. We don't even know how many people haven't been exonerated and are continuing to rot in jail for crimes they didn't commit.
The big question here is the distinction between standard and API.

If Java is also a standard, then laws applicable to all sorts of standards apply. And this could be a relatively good line of defense.

An API itself is not necessarily a standard. More importantly, a distinction would have to be made between a standard and its implementation.

Technical argument is whether API is procedural or textual. Procedures cannot be copyrighted only patented, including design patents and algorithm patents. But API itself is not procedural.

QWERTY sequence of letters is not necessarily copyrightable because it's not a document or result of machine processing of one and as such is a bad analogy.

An API actually has a source code and mechanically processed version.
Oracle publishes it as documentation, which is probably copyrighted, and Java source code, which was copyrighted until OpenJDK.

The trick here is to define minimum creativity required for copyrightable work. If the API is narrow and trivial, you probably cannot copyright it anyway. There is additonal trouble when said API has no meaning without an implementation or is not published.
Reverse engineering may be prohibited by a licence.
I think API versioning is orthogonal to how you organize your code. If you have multiple repos, then you still have that "atomic commit" where you update the version of the client library and adjust the code to handle the new semantics. It then breaks when you deploy it to production because the server code isn't deployed yet (or vice versa).

Basically, if you make RPCs, breaking up your repositories or combining your repositories doesn't eliminate this problem. It's a separate problem that you have to tackle. The reason it doesn't come up as often as it should is because a lot of code is liberal in what it accepts, and most changes are strictly additive (i.e. it's "add more information to the response", not "remove information from the response", because we're generally pushed in the direction of making our applications do more). But it is something you have to attack head-on. No tool will auto-fix the problems for you.
I'm a committer on Eclipse RDF4J and currently working on our implementation of SHACL. I've worked with semantic web now for 7-8 years I think. Seen quite a few projects struggle or fail mainly due to performance issues. That is why I'm doing my best with optimising RDF4J.
Roku Plans to Win the Streaming Wars
Apple only paid them $52k? Apple is a trillion dollar company. These hackers saved them easily millions of dollars in expenses.

China or North Korea could easily allocate a much larger team to something like this and disrupt Apple (not for bug bounties). Although, China and North Korea dedicate their resources to financial fraud where there is real money to be had.

Apple is a tightwad joke. If they laid out a scope of work for a professional pen testing company that included pen testing their 17.0.0.0/8 range then that contract would easily have been in the hundreds of thousands.

I’m sure foreign adversaries will take notice now. Apple’s cybersecurity posture has always been very weak. It’s known they don’t dedicated any resources to it.
This looks very promising, with 19% IPC increase and keeping the power envelope. They're calling it "the fastest core on the market". And that's at $549 for 12 cores, $449 for 8 cores, and $299 for 6 cores.

Off topic, it's incredible what a flat tone Mark Papermaster managed to use when saying "I couldn't be more excited to present...".
This release seems like it focuses on ergonomics, which is fantastic.

> Shorter backtraces

This is a very welcome change! Having to find the "root" of a full stack trace can easily take 30 seconds, which really starts adding up.
Looks great!

What happens if Doppler is down or if there is a SNAFU when syncing the env in production?
Does anyone else feel extremely uncomfortable with giving a silicon valley company your biometric data for payment processing?
Looking at that link, argparse is very similar to structopt. It just uses the syntax and idioms of a different language. The structopt attributes appear to be approx. the same complexity as argparse functions.
you probably dont understand the iphone then.
Features are community-driven. If you would like to see any major/minor feature, I would be grateful if you submit an issue on GitHub. Thank you
Biodegradable plastic has been a thing since the 70's. My dad used to carry around samples of cellulose-based transparent plastic[-like] envelopes, you actually could eat them. (They didn't taste like anything.)
Well deserved and deeply surprising. I just wrote a tribute to her here: https://whatiscalledthinking.substack.com/p/whats-your-story...
>They need to find and convict a suspect to instill confidence from the public that they're doing a good job, in order to keep their jobs and their funding. This doesn't mean they need to find the actual criminal, only that they need to appear that they did.

There are always instances of bad process and bad outcomes, but in general that's not how the justice system works. I'm sorry for your cynicism.
That is an indo-european language. Those languages have no grammar or rules. You just string words together and hope it makes sense.
Anecdotally, out here in the rural wilds of Alabama, most people seem to be wearing masks. I recently went into downtown Huntsville and no one was. Poverty and essential workers may be a significant component, but given the behavior of the young and affluent here, I don't think that is all of it.
Zerodium is probably the closest thing to a “legitimate” acquirer of exploits, those which aren’t being disclosed to the vendor and then fixed.
> they have big JS payloads to make the website feel close to an SPA as possible

Can you give an example?

I know Github uses Turbolinks, but that doesn't really contribute much to its bloat.

> Github.com today has many components that are pure JS(most new features)

What you're saying is that because some of their features on some of their pages are JS heavy then it would make more sense to make an SPA?
Feds say they thwarted militia plot to overthrow Michigan government
Here is the problem:

1- You finished your work, so you pull from the central repository, and merge your your branch to the master

2- You do your merge work, test it a bit and commit

3- Now, you push and oops, another team did the same, you are now left with to heads

4- You merge or rebase the two heads. Probably a simple task, but you may still need to run some tests again. And if you are lucky, you are done, otherwise, back to step 3

Also, if you are rebasing before push, you should be able to keep a clean history. However, if you are merging, and there are good reasons for a "merge only" policy, you are going to have a mess of merge commits every time the previous situation happens.

That's something you can work around with good management. But the more freedom you give individual teams to push to the common branches, the more that situation will arise, the more you try to control access, the more chance you will have for teams to go in different directions, making the merges infrequent but tricky.
Racket platform dev itself dead, or Racket program dev dead?
As for the former, I'm on the email distro and it seems pretty active to me.
Hi. No, I don't think it is. Because your online applications that need low latency access to features won't tolerate the latencies provided by existing data warehouses. The online app that has an operation model that makes predictions is one client of the feature store. For the other client - a data scientist who is browsing features and creating train/test datasets - yes, that is similar to a data warehouse, except that you get APIs in Python and your data has precomputed statistics that make it better for exploratory data analysis than a traditional data warehouse.
Many people compare it to scientific vacume chaimers that is why its worth pointing out.
for a long time now courts have become a rubber stamp to the point that "getting a warrant" is almost just a procedural issue.
UpBots to Debut a Multi-Exchange Crypto and DeFi Trading Platform
Interesting points:

ZEN3:

- 19% IPC improvement

- 8 Core CCX complex with unified L3 Cache (before 4 cores shared half the L3 Cache)

- Still 7nm process

Ryzen:

- 631 points in single core cinebench for 5900X
- 640 points in single core cinebench for 5950X

- 26% performance increase in 1080p gaming compared to Ryzen 3000

- Models (Available November 5th):

-5950X (16C 32T, 4.9Ghz / 3.4 Ghz, 105W TDP, 799$)

-5900X (12C 24T, 4.8GHz / 3.7 GHz, 105W TDP, 549$)

-5800X (8C 16T, 4.7 Ghz / 3.8GHz, 105W TDP, 449$)

-5600X (6C 12T, 4.6GHz / 3.7 GHz, 65W TDP, 299$)

Radeon:

6000 Series launch on October 28th
Not really. Non-programmers have also been using computers ever since the PC revolution and are quite used to downloading, installing and running programs, provided it has a usable GUI. After all, web apps are very recent. Even now, most programs are installed, and the rest are websites.
Imma fan of well writen posts such as this.

Great stuff, Yaro!
"description" and "help" are different things.

The docs are open source, you can fix it and send a request a pull!
No dude, that's the point of having written laws.

Which invariably need interpretation and evaluation for consistency; hence a court with oversight.
There are multiple alternatives for argparse if you look for third-party libraries.

The thing that makes argparse particularly useful is because it is in stdlib, so if you use you can create a Python script without external dependencies.
Also AWS Firecracker.
Mirror flips front and back actually. You are facing north towards the mirror. Point south, reflection points south. Point up, reflection points up. Point north, reflection poins south.

Left/right flips because it is calculated relative to up and forward, the latter of which has flipped in the mirror.
Can you expand your comment on PCI compliance?

We've had to go through similar-to-PCI compliance hoops for our monorepo, and settled on a solution that didn't degrade the median developer's velocity too much.

I'm curious to know what other monorepo companies had to go through to satisfy the compliance people.
How accurate is my synthetic data?
Build your own space agency with 'Mars Horizon'
You would still need to create an iterator, because there are three different ways to iterate, and you have to pick which one you want.

However, often times it entirely compiles away to nothing. What this may help with is bounds checks; it is possible for this to make it easier to remove/hoist bounds checks in some circumstances. In my understanding.
How well does it perform in WebAssembly?
Just out of curiosity - what do people use dynamic secrets for? What is a "dynamic" secret anyway?
Which it did under open license starting from OpenJDK 9. Oracle argues probably this has given Google an advantage, which is, in technical terms, bollocks, as Oracle was not making an operating system.
Call me crazy, but I think this is exactly how warrants should be done. Very specific in both time and place, and used to catch a criminal that did a very severe crime.

If you had been caught up, you 100 percent should have been scrutinized. Imagine if it was someone you loved a witness to a terrible crime and her car was set on fire. You'd definitely want the police to prove who it was.
Maybe, but more likely no.

Path of least risk and resistance is for them to declare it internally to be kept quiet. An army of internal counsel would be telling everyone in the room to keep their mouth shut to prevent everything from PR issues to actual legal threats. They don't even need a gag order, they'll do it willingly.
The 5900X has claimed 26% improvement for gaming. This is huge. Intel is going to have to start shipping fridges with their next batch of CPUs.
Firecracker is the name of the project that is under Lambda and Fargate, yes.
Speed, developer ergonomics and community. It depends what you are building I guess but for example audio processing or graphics is still impossible in either of those.
Computer Scientists Break Traveling Salesperson Record
These are two independent games, so for every player:

a) The probability of winning if staying: 1/3

b) The probability of winning if switching: 2/3

c) The probability of the car being behind door the player chose is the same as a): 1/3

d) The probability of the car being behind the door Monty didn't open is 2/3

e) The probability of the car being behind the door Monty did open is zero: we know he chose a goat!

Note that the game doesn't work if it's not run independently for both players, because if they both choose goats, Monty would be forced to open a door hiding a car, ruining the game (it makes no sense at that point to either stay or switch). In order for the game to work the way I imagine you want, we must assume one player always picks a goat and the other a car... which cannot be guaranteed.
Unfortunately the value of going to Bay Area is long term, not "short duration". It's not just - I'm going to SF for a project and a payout. If you're moving there - it's going to be for a few years.

Also - if you're "dragging myself halfway across the world", it limits your ability to optimise efficiently. You don't have an easy fallback. (I'm from Lithuania and live in NYC. Optimising my living arrangements was not a possibility for a long time, because there's no family or LPR status)
OpenJDK is not released under GPL, but a much more permissive license.
IBM to Spin Off IT Operations
> For example

Getting rid of objects not belonging to the application to be deployed is difficult or impossible. According to my analysis of the original ST80 v2 virtual image there is a very high interdependency among objects; and since there is no static type information, many dependencies are not statically identifiable. There are also many objects that have not been created or initialized anywhere in the source code (neither in the sources file nor in the Bluebook interpreter), but on which the functionality of the system depends. Versioning of objects and corresponding source code is difficult, also combining a certain version of different components or communication drivers with other parts to be integrated, and so on.

> Compared to what?

E.g. Java or C++ or any technology with clearly identifiable compilation and configuration units.
yep. trains are also more relaxing in ways that busses/planes can ever be for me. it feels like the one time my brain can truly shut up for a bit and i can just enjoy existing.

something about the smoothness of the rails (speaking from a similar position in the nec) as the world speeds by is incredibly calming to me.
NaCL:https://developer.chrome.com/native-client/nacl-and-pnacl
What would be a scalable open-source monorepo stack? Git, Gitlab, Bazel?
Any good tutorials on this you recommend ?
This is cool. What techniques did you use to include a copy of the data?
I think it can still happen though.

Imagine you're in a branch for large project P. You want to merge to trunk but there are conflicts. The upstream library project L was changed in your branch but not in merged down by the submitter.

Even if P simply relies on a binary of L that is already in the artifact store, you still have to deal with merging this code down when normally you wouldn't.

In fact, the much bigger issue is that you now must deal with the double edged sword of updating the entire org when a shared dependency must be updated.

Perhaps you even completed that task in your project branch. Now you get to deal with merging into every project in the org that was touched.
Find a local LARP group. Imagination goes a long way...
If I'm working on a viral live streaming project, who would I talk to for funding?
I want one like this for OCaml.
Having experienced both the monorepo approach (at Google and Lyft's L5 autonomous division) the and manyrepo approach (at Lyft's main rideshare division), my conclusion is that keeping as much code in a single repository as possible (i.e. a monorepo) is generally the best approach.

The downside of manyrepos is that you often have to merge multiple changes into different repos in order to achieve a single logical change, and each of these changes requires a code review, waiting for CI, etc. For example, you may have a library that is shared by several services that your team owns. If you want to change some logic that lives in the library and propagate that change to a service, you have to make the change in the library and then bump the library version in the service. The latter change, while simple, is pure busywork, and at Lyft this second step easily adds 1-2 hours of overhead between waiting for code reviews and waiting for CI. Monorepos therefore make it much easier to share code and meaningfully reduce overhead for your team.

One of the cited downsides of monorepos, VCS scalability, only really kicks in for very large teams. At Lyft L5, we have a single shared Git monorepo hosted on GitHub that hundreds of engineers contribute to daily, and to my knowledge we haven't hit serious problems with Git itself (although I last worked in that org about a year ago). We did run into a few peripheral issues though:

- People kept inadvertently merging things that broke master. This would happen when two incompatible changes were merged at nearly the same time, or two incompatible changes were merged a few days apart but the second change was based off a stale master from before the first change, so tests pass on the branch but not after merge. We ended up solving this by having "deliver" branches that are basically master branches for a single team; if you break the deliver branch the only people you have to answer to are your immediate teammates, and it doesn't stop all other merges across the org. Deliver branches are periodically merged into master by a release manager who handles merge conflicts.

- CI got progressively slower. We addressed this by making improvements to the build system, optimizing tests, granularizing dependency graphs, using C++ idioms like forward declarations and PImpl to reduce dependency chains, and so on.

If you have a monorepo, you probably want to use a tool like Bazel. And since Bazel is, to my knowledge, the best tool in the world for doing what Bazel does, that means you probably want to use Bazel. Bazel has you specify your dependency structure as a DAG, and then allows you to quickly re-run tests on PRs based only on the code that changed. It also makes builds for C++ and other compiled languages blazingly fast, and if you're building C++ I don't think there's a better build system out there, monorepo or no. Bazel is a complex tool though so I'd encourage you to read through its highly detailed user manual, and if you have any questions ask on Stack Overflow where you'll often get a response directly from one of the core maintainers.
Waymo is opening its driverless service to more people in Phoenix
Interesting. Couple Q's:

- Is this basically the config management that's in Heroku, but it's possible to use with anything else?

- Any plans for open source? I think that's a big reason why people use Vault, or roll their own.
Fun History Fact: HN used to show the karma of every single comment to every single user! This was changed for exactly this reason.

You can still get the "over/under 0" because posts under zero get progressively grayed out the farther under zero they go.
Unless the government forces them to save user identifying information, it's sort of pointless to ask for anything. But in France several bar owners were arrested for not complying with a law requiring they track every user if their free wifi.
Cinebench R20 score of 631 is bonkers. Hopefully pricing stays nearly in line with the 3000 series. Very exciting for what's basically a same socket incremental update.

Edit: 549 usd for the 5900X, 449 for the 5800X, 299 for the 5600X
At this point, picking AMD for your CPU becomes such a no-brainer. Compounded by Intel’s security issues and all.