skysight-inc/HackerNews huggingface dataset:
As Electrical engineering TAs in the late 80's, we knew who was copying class homework assignments from their classmates based on transcription errors in the handwritten work that was turned in. Since the class professor couldn't care less about the cheating, we would consistently score the source assignments a few points less than the ones that had copied the assignment. We kept this up for the entire semester.
For those who are wondering what is the benefit over pip freeze: pip freeze dumps you entire venv, while pip compile gets project dependancies, and infer the requirements file from that.
Umm no?! Maybe 20 years ago. But it's trivial today
I love that even my email templates are now just tsx files and rendered on the server with ReactDOMServer.renderToString(). No more context switching, everything is TypeScript / React and refactoring is an absolute joy.
If you're writing a sorting algorithm or a hash table implementation or something, then the spec is meaningfully different from the code. The spec says "the output array is sorted", the program describes some particular strategy for sorting it, and then you use the proof tools to make sure that the strategy actually works to sort the array in all cases.

But for things like UI code, I too am having trouble imagining a spec that is concrete enough to be useful for formal verification and does not have some trivial 1:1 correspondence to the implementation. (If anyone knows of an example, I'd really be interested in seeing it!)
Poetry is the cleanest python deps handling experience, and I would recommend it as well.

But it is very slow.
A Century of Science Boycotts
Technically speaking you could already rent Mac M1 Minis. Really hyped about proper ARM servers based on Ampere, though!
It's interesting to see this occupy the same front page as:

https://news.ycombinator.com/item?id=31544634

How do you test knowledge indeed?
Checking proofs is decidable. Coming up with proofs is undecidable.

This tool does the former, leaving the latter up to humans.
I agree with b) and c). A is a bit forced though as tobacco companies faked studies to show that what they sell is healthy even though they knew it was horribly bad for you, I don't see how Google is anything like that with respect to hiring processes. If they talked about ads or search then the likeness would make sense, but I don't see it for hiring.

But I agree that Google is different than most companies. There the main thing is ads and search and infrastructure to run both of those. They can always use more developers to help optimize the profits of those algorithms or reduce runtime costs, the ROI on that is extremely high so that is what their hiring process is optimized for. Some of their other projects might have done better with a different process, but they don't have much weight compared to the revenue generating projects.
Cheater Student enters the lab, turns on the video camera on their phone, walks casually behind other students recording their screens, reviews video for useful information. Other students fail. Seems like a poor outcome that is plausible and unfair to the student whose info was stolen to no fault of their own.
Besides that hack, getting your head around the way to optimize code for a GPU takes a while. Then the real challenge is taking code that is based on random access to gigabytes of RAM, and making that code work with any kind of performance on the GPU performance model.

There are cases where the random access to RAM are very deep in the algorithm. Consider e.g. sparse matrix multiplication.
"Parliament executed the King for starting wars"

Isn't that why the folks in the Army have to take oaths to the sovereign and heirs while people in the Navy apparently don't?
> in the JVM classes are an obligation

You're always free to use a final class with a private constructor as a namespace for static methods. Many classes in the standard library are of this kind, including `Math`. It's not ideal (see my next point), but it's a far cry from adding extra object instantiations everywhere.

> E.g. in python functions from imported modules easily litter your namespace

I think this is more a problem with the modularity features in a language than free functions themselves. In Python, Haskell, and Agda, I make sure that every symbol I use is explicitly imported (or defined in the same file). This makes it way easier to trace where each symbol I use is defined.

You're basically forced to do this in Java, too, with exception of wildcard static imports, which I very rarely use.

> if I have a python module universe my colleagues hate it if I import the module and call a function like universe.create() [instead of Universe().create()]

They hate it? I can understand if your colleagues aren't developers by trade, but I expect anyone who maintains code for a living to understand the language they're using. There will always be dark corners, but this ain't one.
Representative democracy can be augmented by direct democracy though.

Switzerland for example has elected representatives who operate in a similar manner to other countries. The difference is that when the people have an issue with something the representatives did, they can trigger a referendum on the issue.

I think it's a good tradeoff between both systems.
Are they the people you want to hire?
Perhaps I should have been clearer, FTTP is what openreach calls running a fibre to your house, FTTH is what most over companies call it.
You mean measured knowledge acquired through a every specific way is currency. Someone who acquired the same knowledge on his own will be cast aside until he gets his certificate.
This is a good map of Mathematics to get an overview of where you can go...
https://www.youtube.com/watch?v=OmJ-4B-mS-Y

Then Giles McMullen-Klein has an awesome recommended list for data science (your mileage may vary).
https://www.youtube.com/watch?v=V2aIDbpESyU
Can someone give an example of how (automatic) dependency injection works in functional programming?

This to me is the only real benefit of OOP, that I can just add another service into the constructor and not have to update call sites of other signatures which would happen if I passed everything as parameter arguments.

I work in Asp Net land, and most of my work is linking services together and not so much solving mathematical problems.
I would advise you to download[1] free maths class 10,11,12 books which is taught to indian students. They are well written, covers calculus, lots of exercises to practice as well to test your knowledge.

[1] https://ncert.nic.in/textbook.php?kemh1=6-16
A regular plane option that will go away. Not very quickly, but planes don't live forever either. The last 747 is planned to be built this year.

No idea whether any twin engine jet has a 3rd pylon. My guess would be the asymmetry would be much more difficult to handle for offering regular passenger flights.
I dont think `class` as a module keyword, in python, sucks. It just requires learning being open to python as python.
Eg.,

class EG:
NORTH, SOUTH, EAST, WEST = 1, 2, 3, 4

def move(a, b):
return a-b

EG.move(EG.NORTH, EG.WEST)

etc.
Mac Dev Survey 2022 Results
do you have it somewhere on github? I would definitely want to check it out
Sounds like a good story.
No, docandrew is correct. You are incorrectly applying Rice's theorem.

Rice's theorem states that those properties can't be automatically decided in general. But that's irrelevant to this discussion, because this "magmide" tool doesn't claim to do that. It merely checks proofs that have already been found (e.g., by a human), which is trivially decidable.
You can walk too. 15 min walk or 1 minute drive. Nobody is forced to do anything, and for the longest time I’ve lived in suburbia without a car.

who drives for groceries? it’s a waste of time. I get everything delivered.

But, as a European, are you not surprised your government also imposes all sorts of regulations on your European housing? Just like the elected municipal government imposing zoning…in every European city too? You made it sound like anyone can just do whatever in Europe. Except cookies and GDPR, and all sorts of other regulations from shoes to how bad circulation in your house must be to compensate for your silly energy politics.

Not everywhere has an HOA. The reason for uniform standard is so that I don’t setup a crackden next to your house and devalue your largest asset by half a million dollars.

Pretty sure 10 annual European salaries is just pocket change to you and is of no consequence.
It sounds more like we need students to be mentors so that the number of teachers scales with the number of students.
Yeah - strong supply constraints right now - side effect of what happened with GPUs... in the first half of 2020 Xavier devkits were very easy to buy at MSRP.

We'll see what happens...
>Do builders over there even know what bricks are?

Builders over here in earthquake country are constrained by earthquake and fire mitigation materials. Plus masonry isn't energy-efficient.

BTW, I highly recommend the PBS series "Home Diagnosis" for modern home building strategies and testing of insulation and airflow.
Wasn’t defeat. He did this to compel Errol Morris to finish a film. Morris is now one of our greatest documentarians.

This was true victory
> in the JVM classes are an obligation

In Java, not the JVM. Some JVM languages like Kotlin and Clojure allow for classless functions.

You could argue that it still gets compiled to bytecode with classes, but then that bytecode gets JIT'd to not have classes again anyway so it's kind of a meaningless distinction.
"And if you aren't working like that then you aren't doing Scrum"

I kindly disagree. You seem to have worked at a very stressfull place. In my experience that has nothing to do with it being "true scrum TM" or not. In any case, happy for you that you got out.
I swear I've worked with people who if they were shown FizzBuzzEnterpriseEdition wouldn't be able to see the joke as that's how they naturally write all code.

https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...

Things like this:

static final int INT_1 = 1;

I've actually seen production code with:

static final string HTTPS = "https";

static final string COLON = ":";

static final string SLASH = "/";
> If computation is complex and requires multiple subfunctions that you don't want to leak to the global namespace

In cases like this, I still use a top-level free function, but it just instantiates a (private) class and invokes those (private) subfunctions itself. There's usually no need to leak the implementation's strategy for managing complexity to callers.

Of course, if your computation required interactivity with the caller, then it's not a one-and-done batch deal anyway, so free functions would not have been as appropriate in the first place.
>You realize that it was so trivial that there was no need for a library in the first place

Minimalism can bite you, too. We have around 30 microservices written in Go, each one one of them living in their own repository (separate codebases owned by different teams). Initially we followed Go's idiom "a little copying is better than a little dependency". So every team simply was borrowing code snippets from other microservices' codebases without creating a common shared library, because those snippets were "trivial". Then it hit production and we found that under load/diverse user input many of those trivial functions were quite buggy or inefficient with edge cases. Since those functions/classes were copypasted over multiple codebases, now you had to contact owners of 30 repositories and coordinate bugfixing in all of them, which is slow and painful. Now we're back to having a shared library of common functions, because it's well tested and it's easy to fix bugs by just upgrading. Often what seems trivial is not trivial at all.
> I assume CommunityFibre is one of these PE funded startups

IIRC their startup money came out of the Railways Pension Fund, however the pension fund subsequently sold out to PE, so yes, at this point in time you are correct. ;-)
People Building Edible Cities
A technical point: that doesn't imply you have the right to type whatever you want on some website or app. If a journalist edits an interview, is that censorship?

Anyway, absolute freedom of speech doesn't exist and shouldn't exist. It's an insane idea.
> it will often show very quickly that a candidate is absolutely terrible.

It CAN show that.

Problem is; even a terrible candidate can prepare, knowing the kinds of things that will likely be tested, by memorizing the solutions to these very specific problems.
The poster you are responding to here and the one you responded to first are the same person.
Queen's Consent happens in secret and is immune to parliamentary debate. You claim this is an advantage but it's actually a disadvantage. The Prime Minister is not a president and is not democratically elected by the entire country. He should not have the power to skip debate on embarrassing subjects.

Queen's Consent was used to give the Palace immunity to claims of race discrimination in their hiring. That's unconscionable. Nobody should be above the law.
If your website isn't managing complex state then jQuery will be quicker and easier. If you are making hundreds of dom changes react will be quicker.. but the average website isn't doing this. There should be complexity minimum reached before react can be used.
Because each university has university-wide rules forbidding sharing assignment solutions. It is explicitly forbidden even before starting the course unless the syllabus or professor directs you so.
You can't "help" others on their own assignments by giving your solution. You can't receive direct "help" either.

Edit: here's the text of my alma mater:
Any behavior of individual students by which they make it impossible or attempt to make it impossible to make a correct judgment about the knowledge, insight and/or skills of themselves or of other students, in whole or in part, is considered an irregularity that may give rise to an adjusted sanction.

A special form of such irregularity is plagiarism, i.e. the copying without adequate source reference of the work (ideas, texts, structures, designs, images, plans, codes, ...) of others or of previous work of one's own, in an identical manner. or in slightly modified form.

[https://www.kuleuven.be/onderwijs/oer/2021/?faculteit=500004... translated with Google]
“Obviously, the setup is vastly larger and more complex than the simple arrangement of transistors used for conventional logic gates, and shrinking it down to the scales required to make practical chips will be a mammoth task.”

Just need some yet invented nanolasers for this to work I guess, but this is still a fascinating approach.
If you could build a (quantum or classical) computer that takes years of computation to solve a single elliptic curve discrete log, then there's a neat way to profit. Compute d = log_G(H), where G and H are the generators used in Pedersen commitments.

Then you can undetectably print infinite amounts of money in coins based on Confidential Transactions (such as most privacy coins), by writing 0*H + r*G as v*H + (r-v*d)*G, where the former represents a coin of value 0 and the latter a coin of value v.
The problem in this scenario isn't software engineering necessarily, it's lack of punishment. Companies do things like this because it's cheap and they can factor in security breaches as simply a cost of doing business. A lot of these problems come as a result of an engineer prototyping or creating something on a tight budget, which then eventually gets deployed out either because said engineer leaves or against their own wishes.

It's similar to housing. Training engineers to build a house correctly doesn't matter if the punishment for the house not meeting code is a slap on the wrist for their employer. Because their employer will just tell them to build fast and ignore the right way to build something.
khan academy is the best for ANY age. Start from basic algebra and progress through trig, geometry, calculus 1,2,3 and linear algebra, and you'll be fine. That's what I did. Should take a few months depending on work ethic
I agree certain orders of magnitude are harder to guess accurately. My claim for 1k qps being conservative is mostly based on

* my current company, but I can't share more precise numbers. So I guess not very convincing :)

* however, at ~ 300 millions listings in 2021 for airbnb, that means i.e. ~10 listing per second. 1k qps implies ~ 100 queries per listing, which would be an extremely good ratio. Every time you change a parameter (price range, map range, type of place), that's a new query.

> Sure, I think 30 bytes is reasonable for a click. When I said 15 I was squeezing a bit much. But timestamp, session ID, page template ID, property/comment/whatever ID, page number, click/buy/view byte if that isn't implied by page template... no need for that be more than 30 bytes total.

I agree once you start thinking about optimization, such as interning uuids, etc. you could maybe go down to double digit or even single digit TB of data per month. E.g. by using parquet or other columnar format, use compression, etc.

But keep in mind the teams working on the event generation (mobile, web, etc.) and the teams consuming those events work completely separately. And those events have multiple uses, not just search, so they tend to be "denormalized" when stored at the source. A bit old but still relevant reference from twitter that explained how many companies do that part: https://arxiv.org/pdf/1208.4171.pdf.
I doubt that, for example, my parents would know that, or care. My wife definitely wouldn't.

Honestly I use Twitter occasionally enough that I've never even considered going to Nitter.
If the user wants their styles to take precedence, that’s what UA override stylesheets are for. Defaults are not overrides. Defaults are fallbacks, for sites that don’t care.
This was the previous post: https://news.ycombinator.com/item?id=31490515
IDEA:
Browser vendors (or browser engines) should just agree on a bare minimum of modern fonts (the most used perhaps by websites?) and include them with their releases. Additionally, why not have a working group to deal with font upgrades for browsers as we have for CSS, JS (ECMA) standards and so on? And funded by the same billion dollar companies that build browsers...

REALITY:
The engineers who would eventually build all this just laugh and don't care. And HN will talk about this again next year.
i have similar problem and i am trying to solve it with this https://github.com/newbeelearn/sserver . Next release is planned in june.
It is like asking - are Trolls a threat to Ogres ?
Both these tech supposedly have fantastic super powers, but in their own imaginary worlds.

However Bitcoin - the only usecase that works, will be able to pivot to quantum resistant algorithms long before anything even starts becoming a threat.
> Tests need to be based on long form questions that test comprehensive knowledge. Open book, Open notes, and hell even open-collaboration up to some limit.

Coursework is already along these lines, no?

> The solution to testing students in a way that they can't cheat is to simply design tests that require students to apply their knowledge as if in the real world.

How would this apply to a course in real analysis, say?

University education generally isn't intended to be vocational.
This reminds of a principle I use. Always use the weakest type for the problem at hand. I don’t use a struct/record where a simple dictionary or tuple would do. I don’t use a class when it could be a plain record. I don’t use an interface when it could simply be a lambda.

When the time comes, I promote the types as necessary.
More a light detector than a logic gate really. To chain them together in a chip you’d need micron scale directional light emitters that also had signal to emission times at logic gate speed, and also consumed no more power and release no more heat than current logic gates. Otherwise you’re back to square one again because as the article points out it’s the power consumption that’s one of the major constraints and lasers consume a crapton of power. I don’t see how something like this could ever be practical.

This effect might be useful in optical communications systems though, where scale and power consumption isn’t as much of a constraint.
You don't seem to offer viable GPU options - or maybe the pricing page is not up to date?

The GPU add-on cost is about 7.50$ per hour for a 12 GB K80 (which has 24GB, so you share it? Also, it's from 8? years ago?).
As an add-on, other vendors would give you V100s (possibly multiple ones).

I am pretty sure that's not actually what you are offering, because that would be ridiculous. So you probably want to update your pricing page ;-)
I think the real question here boils down to semantics:

1. Do you really need to have page numbers and if so, when?

2. Do I really need to skip pages or go to arbitrary one and if so, when?

3. Can't I just show you first N rows forever, and demand that you limit results by tweaking your filter? What is the N I would allow this.

4. When do I show the count of items, and when not?

6. Do I need an estimate or precise count?

7. Shouldn't I just infinite scroll up to some N? How does that limit the user, can he skip some pages in that way or what happens when he back and forth from the item details to the results list?

8. How big are those lists? Do they grow forever and if so, is it frequent or not? How many new items you expect per year? Do users always need to use filter or they need a "gimme everything" case? Can we delegate to client some of the pagination?

Depending on answers to those questions (and more), we can determine technology behind. We know that COUNT(*) is expensive and that OFFSET sucks, but we also know that it might not matter at all in some cases (premature optimization) and it might be deal breaker in others.
> 3. Students move to that breakout room to exchange solutions.

While you were in that room? Did you put a stop to that?
Companies will sue you if you report security vulnerabilities. So yeah definitely a good life lesson.

This world is messed up.
More people are killed in dense cities.
They are not doing that, because they have big troubles to pull off semiconductor manufacturing

See Asianometry: Why Russia Can’t Replace TSMC - https://www.youtube.com/watch?v=N_4R4X7AWtU
Try consulting with your colleagues during your next interview and see if it’s encouraged.
Adjusted for purchasing power it is still cheaper.
I'd hate to see decisions delegated directly to the Great British Public in an endless series of referendums, though. For a start, I don't think I could stand to live in a state of endless political campaigning - it's bad enough reading the "culture war" nonsense in every paper now.

Secondly, within months, we'd have the immigrants deported, a statue of Maggie in every town square, transgender people made to wear badges with their birth sex and the BBC removed from the airwaves and replaced with a perpetual loop of the Nigel Farage show.
Here the problem is not that a machine is suppressing your comments but that the government is telling the machine to suppress your comments, which is a pretty clear violation of the principle of free speech. Come to think of it I'm not sure whether this would be constitutional in America.
It sounds like what you described is not minimalism at all, except from the perception of individual teams. From the perspective of the product, your solution is minimalism.
> As far as Community Fibre goes, I don't know what the switch gear is. I saw a passive patch panel on the roof of my old building where all the fibers from the individual apartments go into, beyond that I'm not sure whether it all gets flattened down to 1Gbps or something more meaty.

Community Fibre installs as XGPON.

So it all passive and gets aggregated down in building basements.

And yes, they are very cagey when you ask them about contention or similar. I suspect they run things on the "hot" side.
Satoshi was a hacker. These Defi charlatans are scammers at best.