skysight-inc/HackerNews huggingface dataset:
> It sounds like you're really angry. Does this directly impact you?

Sure it does. I'm a human being with a healthy moral compass. Why doesn't it impact you?

> They can pay those wages because workers who can do the work to a level they consider acceptable will accept them.

Wow...do you think people would do it if they had a choice or a saying in this matter? Seriously?

> One way to solve this problem is to convince those workers to work together as a bloc, not accept those wages, and demand higher ones.

But they are not a bloc and the rest of society has done a great job to divide them along artificial lines (race, politics, gender, religion, etc.) and the same basic construct the ones above adhere to: selfishness as the winning factor within the system. The system does also everything it can to hinder unions of any kind. You could see how much of a WONDER it was when some people managed to form one at Amazon. It's been on the news worldwide!

So you making it something they could "just do" is kinda disgusting.
Not the definite answer but some observations I see here in Germany:
1. University spinoffs which only exist on paper: all founders and early employees hold paid positions at the university and the spinoff is I think more of a way to deal with intellectual property, do more effective marketing and build business relationships.
2. They run on government research grants.
3. Eventually they might start selling some software/hardware they developed as a byproduct but which was not their core research effort, or they start using their highly educated employee base with their niche expertise to start building/selling a product/service that is related to their research effort, but not quite as ambitious.
They were once popular but have all but disappeared since the advent of cheap flights. Same story for Japan, just 1-2 remaining.
> As a student, I would have been very satisfied to have great marks

that's the wrong way to look at it.

As a student you would have been very satisfied to have recognition for your hard work (something that rarely happens in most school systems I know)

You switched cause and effect.

> while enjoying each night of the week, unfortunately I had to work and skip parties

So you were getting satisfaction from doing it, or you would have skipped studying to go to parties.

Which is what I did, I had great marks and went to parties to reward myself.
> The problem does not go away with a better course but is - based on your anecdote and not from the presumably better view of the TAs - lessened somewhat.

I was a TA in France, and did a bit of TA-ing unofficially in the US. So, my view is based on both experience, TA and Student.

While there was some cheating happening on both sides, it was practically non-existent in France after a few weeks of school. The abilities required to cheat and get away with it were extremely hard to master, and usually would carry much more risks than just complete the exercise. Successful cheating were, sometimes, rewarded if the problem solved was worthy enough. You could even get clearance from the professor in advance (not for copying code from StackOverflow, of course, but rather for using forbidden functions or libraries).

Finally, most important projects were done in groups of 2 to 5-6. Individual students putting a group at risk deliberately, would get caught extremely easily and carry a far worse sentence than just a bad grade: they would be excluded from other students groups and left to do their projects alone or with dropouts students. Finding back you way after this is very very difficult.
> You can't imagine how many people can't even do or know the basics.

I can imagine it, because I've been that person.

It's simple interview anxiety, which causes temporary but severe performance degradation. Then when the interview is over, the anxiety suddenly disappears, and you can even go back and do the same problems much more easily.

But I suppose interviewers will just assume that my resume is a lie or that I managed to incompetently hold onto previous jobs.
> Let's take a CAD program. Which aspects of it would you formally verify?

Any large program will contain some smaller components with relatively well-defined behavior. CAD is not my specialty, so I can't really comment on what algorithms are used in that domain. Forgetting about fancy algorithms for a moment, just having a more expressive type system will allow you to express invariants in your code like the fact that array indices are within the relevant bounds, that you never try to pop an empty stack, etc.—everyday programming issues.

For a more concrete example, lately I've been using Coq to formally verify critical properties about a certain type of graph-like data structure I'm using in a system I'm building.

> If you are going for the easy parts, those can already be dealt with nicely with static typing and testing, essentially push-button automated verification.

Most engineers are already writing tests and using static types. Yet, we still have buggy programs.

And just to be clear, the kind of formal verification we're talking about is based on static typing. It's just a more expressive type system than what most programmers are used to.

> If you are going for the interesting parts, you will be doing math, essentially.

You are doing some form of math, but not the kind of cutting edge math that mathematicians do—which was my original point. You are not going to run into the kinds of tricky problems that mathematicians run into with theorem proving software, like universes being too small etc. Most data in software engineering is finite and reasoning about it involves little more than arithmetic and induction (which is just out of reach for mainstream type systems, but not for the kind of type systems used in proof assistants).
> Yes, you need to use the correct formula for the cement you use, but figuring out that formula has already happened.

I got serious doubts about this. It seems we are constantly changing the cement formula.
Ha, this led me to fail school the first time I tried it. Now 10 years later I’m back in school with a 4.0 because I’ve learned to navigate the system and I know what the school wants. I still balance diving deep into what I’m interested in, but I don’t let it get in the way of the grind.
"a new perspective style" - I'd love to see 32x32 icons becoming popular again!

"AI synth world fusion" - count me in for new music!

"artistic trends are mostly derived from AIs" - Art is in the interpretation. "ceci n'est pas une pipe". while (1) { printf("this is not an infinite loop"); }

"All GTP-3 does is lie to me" - Yes. But the lies inspire creativity, because you can do better, right? Also, I'm very grateful for Katalin Karikó
and the other researchers who created a beautiful mRNA "lie" to teach the immune system how to ward off a real virus. If that's not like cave paintings warning children about the dangers outside, I don't know what is.
I don't know how big a problem are earthquakes but I personally don't trust my fellow Greeks to drive a car safely without killing anyone. You're talking about a country were rank incompetence runs rampant, where nothing works and nobody can get a job done properly. Everything in this country is done shoddily, in half, and while cutting corners - not for any considerations of economy or efficiency, but just so the project leaders can each pocket their share of the cuttings. Every new plan to develop this or build that, or inaugurate the other, is always introduced with great fanfare, with officials in pretty suits cutting ribbons and shaking hands and smiling for the cameras, and a month later you can see the ribbon still flapping over the rubbish-strewn derelict of the great project as stray dogs piss on its ruins.

Before those social and political, rather than technological, obstacles to progress are resolved, the last thing anyone should encourage Greece to do is install nuclear bloody reactors on our land.
Call it what you want, it's income tax
Has more to do with credentialing bodies holding legal power over who can practice. If you masquerade as a pediatrician and tell every parent their kid needs an hour of exercise and fruits and vegetables, just letting the nurse give the injections, you'll probably do fine in 99999/100000 cases. But that one time you'll miss childhood leukemia because you don't know what you don't know. Likewise, you write SQL injection code and for maybe 99999/100000 visitors you'll be fine. Until the first malicious bot destroys your company's primary DB and you lose hundreds of thousands of dollars in data, and trash your reputation for getting future contracts due to data security.
A Startup Wants to Rescue You from Browser Tab Hell
The one time I programmed on a train (central pennsylvania to new york city) was better than the times I've programmed on aircraft. Not sure if it was seat size, the consistency of altitude, smoothness, etc. But I'd love to do more work trips on a train.
Simply removing the offending questions after the fact doesn't solve everything. Students may have fruitlessly wasted a ton of time on those questions, causing their grade in other parts of the test to suffer.
Interviewing is assessing how a person would perform, not an actual day to day collaboration. There is a gap. You do not talk like you would to a colleague. You have a limited time and it's more one-sided to even the playing field. It's worth preparing for to overcome the gap.

It's like a dance. Your are supposed to lead deriving the solution, interviewer is supposed to follow closely and judge your performance.

If you expect to ace an interview just like that then you also need to be lucky not accidentally getting asked to stuff, which you always need to Google an answer to, basic algorithms and patterns, which you usually kind of know but could slow you down during the precious 40 minutes you have to show off your skills.

And lastly, people do prepare for these. If you do not do that, you might simply make a slightly worse impression than someone who did.

That being said, I mostly did not prepare for the coding interviews. I focused on the design and behavioral interviews.
Aye! We're quite a few ;)
That's quite hilarious accusing the right for wanting to do just what the left is always preaching, censorship and limiting the people rights.

Leting the left vs right apart, I strongly believe in free speech and I believe that Internet should be a free place for opinions. And it should be a free place for anything that doesn't break the criminal law.

But this last sentence is hard for maintaining freedom since every country is criminalizing different things and every country is going to try to control the Internet.

If we want some freedom of the Internet and avoid breaking the Internet in many controlled and censored national networks communicating to each other through gateways behind Great Firewalls, we should all come up with a set of rules enforceable at the international level. So, we can begin with some framework that only forbids selling weapons, drugs, forbid child pornography and anything that might help someone committing murders, committing theft and so on.
This! Especially with pandas.

I did have a look at numpy and on my machine the tests did not bloat it as much as you made me believe. The `core/tests/` modules are 3MB and the `__pycache__` doubled it to 6MB. What do you refer to as "test case artifacts"? The modules, pycache, or both?

Also, wrt you statement on pandas; is it the debug symbols that account for the bloat, or the libs themselves?
Huh? There is no end to how niche subcultures people can invent to have a club/community.
Some standard steps would be:

basic arithmetic

ratios, proportions, percentages, roots and exponents,
compound interest, basic
lengths, areas, and volumes

Then to get to computing topics with
a minimum of work:

some basic algebra, think of it
as arithmetic but with
symbols instead of actual
numerical values

can pass up plane geometry, or
just learn the Pythagorean theorem
and do see a good, simple proof (will
see it again with some nice generalizations in linear
algebra)

should touch on trigonometry,
such as can do in just a few hours,
that is, without a whole
one semester course

for calculus, here is the world's
shortest but still basically correct
course in calculus:

There are two parts to calculus,
differentiation and integration.
In a car, look at the odometer and a from it construct what the speedometer
reads. That's differentiation. Then
look at the speedometer for, say, a minute, and from those readings construct the change in that minute in the odometer. That is integration. So, each of these two undoes what the other one does, and that is the
fundamental theorem of calculus.

For more, maybe do some linear algebra -- the above will give you sufficient prerequisites. For linear algebra, look on the Internet for a text that is highly recommended (by a professor at a famous university, e.g., MIT, Princeton, Harvard, Stanford, Berkeley) and claimed to be a relatively elementary view.

That should be enough for a lot in
the early parts of
computing, computer science, and machine learning.

With a good teacher, might get through the whole thing in a month, a really good teacher, in a week.

Uh, I know VERY well what I'm talking about: I hold a Ph.D. in math with a lot in computing from a world famous research university. I taught computer science at Georgetown and Ohio State and math at Indiana University and Ohio State. I've published in pure and applied math, mathematical statistics, computer science, and
artificial intelligence. I've done serious applications of math and computing to US national security. Twice I saved FedEx from going out of business, once with some computing with a little math and once with just some math and a little computing.
I would suggest to start with reading The Foundations of Mathematics by Stewart and Tall: https://global.oup.com/ukhe/product/the-foundations-of-mathe...

This will give you an understanding of which topics make sense to you and which you can barely follow. From that, you will need to catch up but where from depends only on your level. I guess, you might have some Khan Academying to do to catch up with the school program.

After you are done with The Foundations of Mathematics, I think you can take Andrew Ng's courses and go from there. I also use https://www.routledge.com/A-Concise-Handbook-of-Mathematics-... as a general reference when I need to look up a topic a have a rather vague recollection of.
It is true that code is read more than written, and I agree that code should be optimized more for easy understandability than for minimal characters typed.

But in some cases leaving types to be inferred helps with understandability, because sometimes the details of the type are cumbersome and almost always irrelevant, and leaving them in costs you more in readability than it gains you in explicitness.

This happens particularly often in C++, for instance, because C++ has a lot of ugly cumbersome types.

Here's an example from Meyers's "Effective Modern C++". You're writing a templated function that takes an iterator range and does something with the things within that range. At some point it needs a variable to hold one of the values.

template<typename It> void f(Int first, Int limit) {
while (first != limit) {
auto v = *first;
// ...
}
}

That's not so bad. But what if you want to make the type of v explicit? You need to write something like

typename std::iterator_traits<It>::value_type v = *first;

instead. That isn't any more enlightening, it's extremely unlikely to make any bugs easier to track down, and it makes the code harder to read because there's this blob of useless type-nonsense getting in the way.

Another example from the same source; this time the issue isn't readability exactly but the fact that doing this stuff by hand is needlessly error-prone. (Again, specifically in C++ which is admittedly more error-prone than most languages.) You want to iterate over a std::unordered_map from string to int, like this:

for (const auto & p : theMap) { ... }

On each iteration, p will be (a reference to) a pair whose first element is a string and whose second element is an int. But you want to make all your types explicit, so you write

for (const std::pair<std::string,int> & p : theMap) { ... }

except that now you have a bug (which in this case only hurts performance) because actually what's in the map is pairs of const std::string and int, and that's a different type, so what your code will end up doing is copying every entry in the map into a temporary object before using it.

The tradeoffs probably favour explicit types more often in languages that are tidier than C++. But the tradeoffs are always there.
I’m guessing this was an introductory course? Every college stuffs kids into courses they have no interest in. Society pressures them into college in the first place. Most introductory courses, perhaps not this one but especially in liberal arts, involve not much beyond agreeing with the professor’s personal opinions presented as fact to get an A. And, well, people like to cheat to get ahead, mooch off the government, etc. Today is probably worse than other periods; generations in the US are on a steep downhill slope, and academia and educators in general seem increasingly deranged. Convincing others this is a solvable problem sounds like a great way to get money.
I totally agree. I am already working on a proper trailer which shows the latest gameplay and assets.
> In other words, the state licensing board is obviously not applying objective professional standards to his behavior. Why not? Because it's a government organization, i.e., it's political, not professional.

Please, you have this backwards. It is acting like a private professional guild, which gets to choose its own criteria for who gets to be in the club. Who gets to “define” what HTML is or who defines what is conduct unbecoming of an Elk.

As the strong towns guy is out, as government entity the licensing board is not permitted to do that: it has to follow the public criteria (which are set by statute and litigated by the courts) and, regardless of statute, follow constitutional constraints such as those of the first amendment.

I think it is unhelpful to approach every question with the assumption that every government action is inherently corrupt.
>Since there are no known victims/ targets for the ransomware group, their Tactics, Techniques and Procedures remain unknown.
What's wrong with it? How do you mock functionality?
0x Launch Kit – Launch your own cryptocurrency exchange or marketplace (2019)
And you travel from city center to city center, no security bullshit.
Seems that you’ve skipped a bunch of steps in order to come up with your pet theory, then.

1. Rust projects become abandoned (observed fact)

2. Language complexity (?)

3. Hard to contribute (?)

I guess that’s why you were kind of defensive when you brought it up.
To me any video card is a rumor because they are either out of stock or available at scalper prices which I won’t pay.
While this is a very ambitious goal, Nim implements formal proof for invariants using a theorem prover:

https://nim-lang.org/docs/drnim.html
Well, you’re talking about probably the worst EU country for mobile service here (Germany).
Day of The Tentacle has upscaling available, and it doesn’t do justice to the game art. The best way to play these is with a CRT emulator.
Unlikely to be true, even if some such classes are indeed antipatterns.

Which of these classes are antipatterns?

Observer

FileManager

HTTPServer

CircuitBreaker

ObjectBuilder

ServiceProvider

SchemaValidator

StringTranslator

Vector
Which is one of the most interesting takeaways for me. What this guy was dealing with was a cultural problem - a toxic culture had developed in the temporary group/space.

His goal is clearly stated: for people to honestly connect with the course material. That's hard if a group like this is poisoned with cynicism. My thought here is how these types of messaging groups spaces have become an incredibly important aspect of the educational experience and beyond. I think about all the 'toxic' cultures in places I have been in and how they usually revolve around people trading information and socializing.
To add some thought to this.

The interview results need to be reasonably repeatable and comparable to assess interviewer skew and bias.

The result is that the interviews themselves inevitably end up being somewhat predicable. And what is predicable you can prepare for, giving you predictably better results.

If you are top 0.1%, sure you will nail them without much prep, but most of the candidates would spend some time preparing.
> They have a good YouTube channel but you’d have to watch a bit to get an idea.

Or you could just click on the blog header and read its “about” statement, which would only take a couple of minutes.
My experience is obviously just anecdotal, but I can say that in the severely limited candidate pool I worked with in the past decade, there has been no correlation between their proficiency at code interviews and their performance at their day to day job.

I’m also not familiar with other fields, but are doctors or lawyers asked to do anything analogous to code assessments during interviews?
Also, they can sell a set of one dish plus some wifi/wimax repeaters for the whole village or something. Could be really nice solution for both sides
Ironically these are incredibly common in the US. They’re not good though.
Some friends and I do this in Japan, too (pre covid). Before leaving the US, I also tried to kick off a more structured version of this https://amhacks.com They were very “on board” with the idea, but internal inefficiencies slowed planning down to a snails pace.
There is no rational argument for grading people on a class curve

It's an imperfect solution for a legitimate problem.

The counterargument is that it would be rare for a prof/teacher to absolutely nail the correct difficulty for an exam.

If they feel that their students' average exam grade fails to accurately reflect how well the class is learning the material, then some kind of adjustment makes sense... imagine a scenario where you have a classroom full of motivated and engaged students who are showing good understanding of the material, and yet the average exam score is 60%. This strongly suggests professor/teacher has erred and an adjustment is in order so that the scores better reflect actual mastery of the material.

There are of course also a lot of situations where grading on a curve is blatantly unfair and/or simply makes no sense.
Even so, if my surgeon for whatever reason signed up to do an operation they are unable to perform, I would rather they ask their colleague to step in than charge ahead to avoid accusations of cheating.

I suspect you aren't trying to argue about this situation, though.

I think you're asking about comparing the performance of the student who does know the material well, and the student who needs assistance with it. The answer is not to forbid assistance, it's to design tests where assistance becomes obvious.
The idea of observing someone writing code is a freaking joke. It puts an enormous amount of pressure on the candidate, and it forces the candidate to think and talk deeply at the same time, which in and of itself is a skill that is not never for the job.
Coding interviews are a joke and the defense of them is even worse.

Edit: on further thought. I think I’d be ok with coding interviews if the interviewee got to bring in their own coding question and the interviewer had to do it as well. That way the they also knows the people they are working with can live up to their ideal of a good coder.