skysight-inc/HackerNews huggingface dataset:
Floating point can accurately represent more than just integers. That does not mean that they can accurately perform mathematical operations on them.

I'd assume that division is implemented as multiplying with the reciprocal (because thats faster). If that's correct, then any division by 3 (or any other number that is not of the form 2^i) breaks your cash register.

Because 1/3 represented as a floating point number equals 0.33333333.. and so on but not indefinitely, 3 * 1/3 = 0.99999999.. - which would be equal to 1 if you were using real numbers. But you don't.
I believe you need to install the add-on compatibility reporter add-on to see the marking (since the add-on modifies the add-on listing). See https://addons.mozilla.org/en-US/firefox/addon/add-on-compat... .
It's worth solving precisely because they are so new.

If they were old, there would be one, obvious, correct design to follow. However, no one knows precisely what the right formula is yet. This has led to a situation where projects either stagnate -- Bitcoin as network has been unable to integrate important innovations despite the incredible talent of the people working on it -- or build a strong coupling to a central organization, which can threaten their decentralized nature.

How do you design a decentralized protocol that can keep up to date with innovation in this space and yet remain decentralized? That's the problem the governance model is trying to solve.
EDIT: My comment completely missed that there were 100 lines of identical code noticed as well. Leaving below for context.

-------

Does anyone else find the example cited in the article rather flimsy? Out of 450, two students incorrectly used the inverse of a Boolean for a conditional – an error I have seen tens, if not hundreds of times.

Perhaps they used better ways of detecting cheating (some are covered later in the article) for uncovering the collusion in this specific case. If not, this “veteran computer science professor” is going on unnecessary witch hunts.
Struktural – API Testing Made Easy in Kotlin
This reminds me of My last year at university. At our final senior project we each had to give a group presentation. I remember this one group that showed off this VB6 program (which was considered outdated language even then). They didn't know how to run the program without opening visual studio and clicking run. They didn't even have basic understanding of compilation/run phases. They couldn't answer basic questions about the code. Obvious to everyone they copied the code. Yet they still passed the class.
Have degrees in both and agree. The amount of work require to get a B in data structures would get you an A+ in biochemistry.

Physical Chemistry on the other hand...
I agree. Thats how all of my upper level classes were taught once everything got a bit more specific and trustworthy.
Its a sunk cost. You won't know if they pass or not until you interview them.
Having a personal connection is by far the best way to get a job in any field, including software. Employers care very much about references from people they know.
Moonscript uses local by default (compiles to Lua). Here is your code in Moonscript:

foo = {
x: {1, 2, 3},
y: (a, b, c) ->
sum = a + b + c
sum * sum
}
It was cool seeing a demo at the end made using Choo[1]. Choo is my favorite in the current sea of react clones. I like it because its tiny (4k vs react's ~200k). Choo supports server-side rendering. And its made out of smaller modules which are all independently useful (DOM generator, diff engine and router).

Instead of using JSX files, choo uses ES6 tagged template literals. As a result the code doesn't need a compilation step at all. But you can still actually compile the templates if you want for better performance + a smaller JS bundle in production.

Its great stuff. I'm a huge fan.

[1] https://github.com/yoshuawuyts/choo
This looks very nice, it could very well be a game-changer.

Question: how do you achieve real-time. Long polling? Web sockets? Sente?

And, how many users can your system support at the moment?

Thanks! Very interested in the architecture, keep up the good work.
With tuition what it is these days, kids aren't paying to be failed.
> Football players have to demand their safety is taken seriously before any positive change is going to happen to the sport.

In the NFL, the players don't have much authority past their players union, and it's been documented that most of the players who hold power are the NFL stars, who's comp structures don't incentivize participation in CBA's.

Pro Football players live on average more than the average american male.

https://blogs.cdc.gov/niosh-science-blog/2012/01/30/nfl/
US wants to impose tariffs on imported solar panels
What they call "cheating" is how I do my job as a developer of a 3-person (dev) software company. We make software. People like it and use it. We make money.

Who cares whether the code came from our head or from something publicly available on the internet, or from someone willing to help us? As long as it wasn't an actual violation of the law. There's no good reason to create a separate set of laws for the classroom than the real world.

Can we just accept that this is how software is meant to be developed? Beyond the very intro level, the real assignments and challenges given to students should be about how to utilize, extend, integrate and optimize easily available existing code, not how to reinvent (regurgitate, rather) the wheel. This tests and improves understanding just as well as, if not better than making them implement from scratch. Evaluate the student's understanding and the quality of his output, not how independently they wrote the code.
oh thank you so very much for sharing the new pannenkoek video, i love his stuff but it tends to get buried under my 500 other subscriptions :B
Here's my pet theory: when I try to put myself into an average high school student's shoes, they're already surrounded by all the CS achievements today; namely, video games and smartphones and Facebooks. They're exposed to them a bit too much. On the other hand, when I was a high school kid I didn't realize how CS is affecting our infrastructure and how many things are still unsolved. I guess this still applies to the current generation too. Combining these two, the field might look rather "finished" or "too competitive" to an average person, which could deter them from applying.
100% correct. Is there any reason to think there will be a secondary market for these shares? Going through a sizeable VC funding round does not imply the existence of a secondary market.
anyone who relies on cheating never seems to do well during the harder major courses at my school (Texas). A lot of the professors have really rigorous cheating detections, and will make you explain every line of code in person if they suspect something. (At least in honor classes) Also, I don't know what these people expect when they have to do a technical interview?
An Open-Source (and Cute) Alternative to Amazon Echo
This is hugely important as a lot of people see programming as a ticket into higher-end jobs and will spend as little time as individual contributors as they can. The idea that "oh, they'll get caught in the workforce" is not correct - quite often the plan in the mind of these folks is that they will try to fake their way through and be moved up into project management, technical marketing, etc. and never have their lack of these specific skills exposed again.

In my experience these people are very dangerous, as their motivation to avoid being forced to try to do the thing they were actually hired to do is very strong. So they will have a mindbogglingly strong motivation towards office politics, manipulation of grievance mechanisms, etc. relative to someone who is 'distracted' by the prospect of, I dunno, doing the work that they are meant to do.

I worked at a tutor at the University of Sydney in 1993, where a group of 7 students hired a professional programmer to sit the 'gatekeeper' practical exam. These exams could be retaken but you could not enter 2nd year CS without passing them regardless of your marks. They were caught (via handwriting analysis on the worksheets where you were required to show your notes, among other things!) and in some cases fought the university in court for years over this.
The article implies that the cited instance of text is verbatim identical, which is unusual.
I just tested a few pages and it looks like you are right.
After around 3000 hours of mostly self study I can understand 95+% of subtitles for TV shows and for a movie can follow enough dialog just through subtitles to understand what's going on at full speed. Study success scales pretty linearly with time spent as far as I can tell, assuming you have a fairly sensible study method. For 1000 hours study I'd imagine you'd get the basics of a lot of subtitles but probably not quickly enough to follow along at full speed.

Teachers can be helpful to point out some mistakes you'll miss through self study but unless you have a fair amount of cash to throw at the problem self study will likely be a better approach. For full fluency you probably want to target around 20k vocab, so it's a bit of a numbers game in terms of finding a quick way to improve your vocabulary. I use Skritter but I guess any SRS software should help a lot here.

Not entirely convinced by immersion as being necessary, I learned plenty of Chinese without it. Probably good for day to day vocab and motivation but unless your level is good you will still struggle to get into conversations where you use it, depending on how outgoing you are.
What percentage of applicants do they offer interviews to? How do you think they whittle that number down?
Not, strictly speaking, the UK government. The Internet Watch Foundation, a non-governmental organisation, placed the article/image in question on its blacklist, a list which most major UK ISPs use (notable exceptions at the time were the UK universities' and military networks IIRC).

AFAIK, whether or not the image is actually illegal under English law is somewhat unclear (the definition of "indecent" is rather woolly), though it's certainly a poor choice for an album cover.

Edit: "to its blacklist" -> "on"; added "a non-governmental organisation"
I've been a TA for a couple CS classes at Iowa State University. Cheating here at least is pretty rampant. I would guess 1/3 or more of the students cheat in some capacity.

Some of it is really easy to detect too. For a first semester freshman class, I tried using MinHash to cluster student submissions together. Maybe 10% of the assignment have near duplicate pieces of code. More comprehensive methods like MOSS (Measure of Software Similarity) find much more.

It's hard for professors to take time to deal with it. A professor more or less told me that the process to report it to the dean of students would take months of his time, and that he already spent 55 hours a week for his classes. He explained that the time it would take to go after the cheaters would detract from time to make good assignments, labs, and lectures for the students.

It's hard to see a professor for a large class (500 people) having the time to deal with handling cheaters so the problem continues. I'm curious how common this is as a problem at other schools.
I have no particular opinion on harder/easier. (There is a lot of memorization in organic chemistry earlier on because you don't have the tools to come up with answers from first principles at that point.)

But, unlike CS, there isn't this assumption that you've played around with organic chemistry and/or chemical engineering in your spare time if you want to major in it in college.
"Moonscript is like CoffeeScript for Lua"

That's a very succinct description and from skimming the examples, quite apt.

But what I want is Typescript for Lua, specifically to use with Redis. That way I can define interfaces for my keys/values and have static checks on their usage.
Why do those students even need to cheat? Harvard has a 97% graduation rate and Stanford 93%.
How do people handle work lunch? I find it very hard to enjoy and eat healthy. There are like 10 food places close to the office, and half of them don't have the nicest food. And I end up rotating between the rest 3-4 places every day. It gets boring. And it's not the healthiest food either, when it's fast food.

What are your thoughts on that?
No one talks about the fact that current CS curricula are fundamentally flawed. Too much time is spent in class, and on homework and one is left with little time to do "real" work.
> My experience of SQL is that it requires careful tuning whenever the numbers involved grow beyond the trivial.

Depending on what you mean by "trivial", that can be syllogistically true, but if so, then a LOT of useful work can and is done in the realm of the 'trivial numbers involved'.
It's possible to write provable programs in any language, but some formalisms make proofs easier than other. I think Michelson makes it easier. There are a few other advantages I can think of:

1) The code can be inspected directly on the blockchain and remain human readable. You can attach Solidity code to an Ethereum contract, but there is no certified compiler yet so you can't be sure they do the same thing.

2) Type safety and an insistence on functional design make good things happen. For instance, by insisting from the get go that contracts should be pure functions, we naturally make it hard to write DAO-like reentrancy bugs. By typing every input, we avoid the ABI bug that recently put some ERC20 funds at risk[1]. Good design principles help prevent problems before they occur.

3) The code can be made more concise. Adopting high-level primitives directly in the language, such as maps and lambdas, make it easier to do what you need with a small program. The language should reflect the type of problems encountered. For instance, building an "updatable" contract in Michelson can be done by putting the contract logic in a lambda and putting that lambda in the contract's storage. It can then be updated according to some logic, such as a multi-signature. Achieving the same thing in Ethereum is much more arduous. You could use a call to an external contract, and have the address of that contract updatable, but you lose all type safety and all isolation.

[1] https://blog.golemproject.net/how-to-find-10m-by-just-readin...
Check out Haxe: https://haxe.org/blog/hello-lua/
If the structure of the class incorporates using real-world code, then fine. Most upper-division classes allow you to use any libraries you want anyway. But some classes, especially lower-division, are explicitly built around learning a concept from scratch. If you copy the code, you can't learn the concepts.

I agree that teachers should strive to allow "open internet" assignments and tests as much as possible, but it's not always viable. All the best classes I've had were this way, but it's usually quite labor-intensive for the instructors.
How do you think they got that?
I've never seen "GPA" as a requirement on an application before. Listing your GPA on your CV might help if its a good one, but I haven't seen data to support that.
I have never written code at an interview, in nearly 30 years.
I really think a lot of people are too quick to pass up what could be at least interesting listening experiences. I used to be a very "basic" listener with relatively normal tastes like 80s/90s rock, some classical (it didn't matter which), prog, The Beatles and the soundtrack from Saturday Night Fever.

That's not to say that I don't enjoy that any more, of course I do, but getting engaged with people who have the kind of music tastes I know nothing about got me into things that elicit different emotions. I learned that music didn't have to be about a quick entertainment (that's how I treated it) but rather it can arouse various emotions, too.

I started with 80s synthpop and especially J-pop/city pop, finding a wide variety within that subgenre alone, but it drew my attention to electronic instrumental music; listening to Boards of Canada and ambient by Stars of the Lid for a start, venturing into drone music from there (Phil Niblock, Klaus Schulze's Irrlicht and especially Celer), finding modern classical simultaneously (Schonberg, Béla Bartók) and then getting more interested in the "avant garde" modern classical like by Jurg Frey and from there to EAI and improvisation such as AMM, leading up to what best fits the category "ECM style Jazz" (as on Rate Your Music anyway), into experimental music with tapes and Graham Lambkin (and his idea of listening to listening to music), further to the simple beauty of field recordings such as by Toshiya Tsunoda and Marfred Werder's interesting concept of raw recordings in one place (2005¹)and then back to interesting lowercase by the likes of Taku Sugimoto and Keith Rowe (The Room).

All along the way I felt things that I never used to feel, perhaps it's a placebo, but it has significantly altered the way I think about music, what constitutes music, and the sort of things I like to listen to. It's also been inspiring for me, someone with not much musical knowledge (I abandoned the violin at grade 4) to try and make my own music.

Lowercase and other music usually considered "weird" or not music at all makes pleasant listening experiences, depending on how open minded one is, or if it's suitable for one's tastes. I'm not trying to say it's some new height of music for patricians, rather, it's something different which people may find nice to enjoy. I've found I've started to develop a more eclectic liking[0], so I certainly don't stop enjoying the things I did, but rather I just enjoy new things in different ways.

I hope this inspires someone to go out and see what there is to listen to.

[0] http://ue.iwakura.moe/chart.png
The student can go a long way without "performing". They are ultimately given a passing grade to show that they have learned things adequately. The cost that we bear as a result of lax certification is that no-one will trust your grades, and that you'll have to do endless whiteboard exercises at every employer to independently verify what might have been otherwise inferred from a single, rigorous qualification process.

It also creates a prestige problem for whatever university graduated some nitwit who can't code from a CS degree. Over time, it will be harder for other graduates from that university to find work.

I'm amazed by comments like this, frankly. It reminds me of how far computer science is from being a genuine profession. Would anyone say stuff like this about the contents of architecture or engineering courses?
I've often heard people make "sensible" choices like these in undergrad. In their minds, it's a few years of toil that will yield an abstract form of an easy/successful life because "3. ??? 4. Profit", but for some reason they don't come to terms with the fact that their reward will be more of the stuff they hate, with longer hours and more pressure.
Show HN: A minimalist weight lifting log app
This project began just over a year ago on the side as a mobile workout log tailored to my exact needs (which are very minimalist). Since then, maintaining the app has allowed me to learn a bit about marketing, support, user feedback, and the mobile app market. My long term goal is to make enough money off this to work on it full time, which requires monetizing it, but that's likely a long way off.

I'm posting this here because I've read Hacker News for quite a few years now, and I know there are many people here who (1) exercise, (2) have more experience in every aspect of what I'm trying to do, and (3) will tear this to shreds. Please don't hold back.

Let me know what you think, feel free to ask any questions, and thanks in advance for any feedback!

Note:
This is currently only available in the United States and in Canada. Let me know if you'd like me to make it available in any other countries; it may be a bit slow to login, though, since the servers are located in central United States.
Define "real" work.

There's a lot on HN about the dichotomy between "boot camps are enough for a software engineer job" and "you need to know computer science fundamentals to be a software engineer," but both teeter on the No True Scotsman fallacy.

Granted, I do think that CS curricula should include actually implementing things in production.
That should be left up to the student to define this.
Demo showing how to debug node code using Chrome DevTools at 26:18[1]. Very cool if you don't already have a full blown IDE with debugging built in. Or even if you just want to inspect some random node library/code on the fly.

1. https://youtu.be/EdFDJANJJLs?t=26m18s
Yeah but the students confessed, and it turns out the professor/administration was right. What do you have to say about that?
To be fair to the Scorpions, quote from Wikipedia...original concept for song

'...Time is the virgin killer. A kid comes into the world very naive, they lose that naiveness and then go into this life losing all of this getting into trouble. That was the basic idea about all of it'
Different times...
https://en.wikipedia.org/wiki/Virgin_Killer
What's "real" work?
People have no idea how many times in a interview (especially with big corps) I end up talking with a PM and he tells me "Yeah, I started here already as Project Architect after my cs degree. I really don't like coding or anything related so I never do it, I focus on architecture and guide the others".

And then I mentally run away.
At the risk of sounding foolish, but isn't it easy for a company to filter out applicants in technical fields, simply by asking technical questions?
Honestly I think the only prerequisite for a CS major is to have interest in it. I never had any programming classes in high school and I switch my major 3 times until landing on CS. I had never programmed before in my life, but it was interesting to me and I found out I had an affinity towards it. I'm just saying this statement that you need to have some background to it is not necessary.
Do you not do coding? Not that it matters, I guess I'm confused about the type of people on hacker news.
You are assuming the system is perfect.

> Again, fortunately, many are weeded out in later stages.

Why do you care?
Which ones? I can't find info on that.
Whatever you want it to be.
Public transit is crappy, but it's the US for you - outside of large cities, everybody's driving. I suppose in rural Europe the situation is the same, but there's not much to do in rural Europe if you're working in high tech. OTOH, San Jose - The Capital of Silicon Valley as it calls itself - is quite rural despite its large population, especially compared to cities like Munich. Thus crappy public transport.

Once you get past that - i.e. accept that you'd have to drive - the density of services is fine, they are pretty much same distance (measured in time) you'd find them in the city, except that you're driving there.

As for return on your tax dollars, can't compare to Europe due to lack of information. Healthcare is fine, retirement savings don't have much to do with tax dollars anyway.
> It also creates a prestige problem for whatever university graduated some nitwit who can't code from a CS degree. Over time, it will be harder for other graduates from that university to find work.

Coincidentally, this is being discussed in another thread today: https://news.ycombinator.com/item?id=14440780

Companies need to filter their applicants because some colleges don't do a good job filtering their graduates.
I would like to read this as well. I went straight from college to enterprise, monkey-with-a-hammer, development and don't even know what that world is like.
Generating mock data using Elizabeth