skysight-inc/HackerNews huggingface dataset:
Java was a success because performance + ease of use compared with the languages then available, on the hardware available. Today, python, ruby etc are fast enough for many tasks.

Java was a hit in the enterprise because it had static typing, modules etc and was a complete product (tooling, doc - and stewardship from a big and respected tech company, who was neutral). OO helped, fashion-wise. C# and objective-C are the most similar languages today - but notwithstanding MS very recent moves, both are wedded to a proprietary company.

But if Java was introduced today, it would have a difficult fight against Go: Go is similar, and with Google's neutral backing, would have taken Java's role. Or maybe languages which Java displaced: delphi, ada, etc.

The realistic answer is: if java hadn't existed, something that met those needs would have been drawn forth by the demand.
your usage of PoetteringOS outs you as a troll.. this discussion is over.
This isn't an example of a "crackpot" theory. Everyone seems to agree that SOMETHING is happening. Even if the explanation is simply known-physics (which is overwhelmingly likely) there is still value in solving the mystery.
There are more options than trickle-downy free-market anything-goes capitalism and authoritarian centralized despotism.

The thing we currently have is enormously unstable and teeters on the brink of collapse every 8 or so years. It allocates resources grossly ineffeciently and can only keep going with a 2% global growth. This isn't going to work if we want our civilization to survive the next 100,000 years.

We need to do better than the antiquated 19th century economic models or 18th century goverment models we've been using. There are exciting systems out there, but we need to get past the cold-war era polemics first. It's time to grow up as a species.
OS X 10.10.3 seems to have done something bad to wifi drivers
It's easy to miss things. Sticking a piece of information in the middle of the 10th paragraph is a great way to hide it.
i was pretty happy with the way gentoo had slotted installs. It's a big help, but it's still just a bandaid.
Mutexes are typically implemented over atomic instructions. So you'd do something like atomic compare/exchange to acquire the mutex and if there's no contention you got it. If there is contention you go to the OSes synchronization constructs which are typically much slower... An atomic increment should always be faster than acquiring a mutex and incrementing...
> it doesn't mean there aren't now logic errors in the code which would do something just as bad

Yes, it does. He wants to have immutable access to some data, the Rust borrow checker's rules provide certainty that the data is not deleted or mutated while his code is accessing it.

What could happen that is "just as bad"? Data being referenced cannot be changed.
I don't know how I feel about that. I mean on the one hand, it feels like ambulance chasing, but on the other, they're providing the exact thing everyone leaving those cells needed. Food, drink, legal advice.

Do you think turf wars start with competing law-firms over that spot?
Seaborn is my favorite statistical plotting package in Python. I wrote an astro plotting package that digs deep into the Matplotlib internals and it was not easy. Big props to the developer behind Seaborn and the great aesthetics he imbued it with.
I have immense respect for the author, and I know these are just notes, but the tone of technologists who talk about Snowden is very annoying.

We know certain technologies like Tor and OTR are safe because of the weight of scientific research that support them, and the immense effort of the developers. Not because someone said so at an event. Statements like "gpg ciphertexts with RSA 1024 were returned as fails" are totally meaningless.

I wish people had more confidence in good old science (like Anderson's works) than glamorous events like this. You should all check out Security Engineering by the same author, it's free! www.cl.cam.ac.uk/~rja14/book.html
That is why you should see a competent primary care physician/GP/family care practitioner regularly.
Unless you're a fan of solipsism, of course.
I think that the mechanistic worldview may be flawed, but that this attack on it is fairly impotent.
At some point, there needs to be some sense of "if you're not going to do it right, don't do it at all". Anybody could give a haircut, but do you want a bad haircut from someone who does not want to improve?
Wiredcraft (http://wiredcraft.com/) -- One of our offices: Shanghai, China

We build products at the intersection of technology around data. Lots of data visualization, big data and infrastructure. We work with large organizations on challenging problems (the World Bank, the United Nations, CNN) OR on our own products (mostly developer tools, things like http://devo.ps or http://sweepboard.com).

We are a multicultural team with French, American, British, Chinese, Korean, Dutch and Finnish colleagues. We are about to settle a third office in NYC this year. We work a lot with Javascript (node.js, AngularJS), Python, occasionally Go and Erlang. Lots of single page apps, APIs and infrastructure automation.

- Sales director (freelance + FT); You would be involved with the following sales responsibilities: -Scale our existing sales channels, -Develop new sales channels, -Build up new partnerships, -Develop new business opportunities, Keep in mind that we provide both services and product, both of which you would likely get a chance to help us with.

- Project manager; We're looking for somebody to help us lead and ship our projects and products. http://wiredcraft.com/jobs/project-manager/

- Designer director; you have design chops, understand technology (HTML/CSS...) and do more than nice pictures (content,strategy,color,theory,...). http://wiredcraft.com/jobs/design-director/

- Online marketing intern (Shanghai or NYC); we'd love some help with growth hacking our products and marketing our services like there's no tomorrow.
http://wiredcraft.com/jobs/online-marketing-intern/

Drop me a line at job@wiredcraft.com, or go to https://wiredcraft.typeform.com/to/GG4GQz
Get rid of the question ranking. I see that number first and it looks like hardly anyone answered, whereas the actual # of people who answered (which might be hundreds) is displayed in a less prominent position. Rank by popularity or growth in popularity (1st derivative of # of answers).

The graphic presentation is great. The stats side is poor; for example if I look at a question about the big boxing match tonight, opinion is divided but in my neighborhood it's 100% for one boxer. Unusual...but I looka t a few other countries where this fight is not a big deal and many answers are 100%, so my conclusion is only 1 or 2 people form those places answered the survey.

Mae it embeddable as well as shareable. Set up rolling questions about things like economic sentiment and update them cyclically, eg every month, then graph changes over time. OK your polls are unscientific so that won't mean much, but you might as well start somewhere, and you could expand into scientific polling later.

It's a neat site but I think the traction should come from making it handy for other providers like bloggers and so on. Just browsing people's opinions on random topics isn't that interesting to me.
Lenovo's super-light LaVie Z laptop is now available
"Reprove with sharpness, then show afterwards an increase of love."

Telling a coder he needs to break down a function and get rid of deeply nested function isn't calling it crap, it's giving him a way forward to improve his code. As a new hire, he deserves that feedback. If he follows it, compliment him and give positive feedback.

Whether a person can become a good coder isn't determined by how he writes code, it's how he reacts to the feedback he gets. If he can take correction, he can become a good coder.
99% Invisible is excellent, although probably off topic
I agree, the step-exercise explains the plugin functionality perfectly. Really well done.
Interesting. DC area here, which might be it. I do have roots in the midwest and it seems like nobody pays much mind to the police there. Maybe it's even more specifically regional or maybe I just never noticed it.
I think an important thing to make sense of this is that Rust doesn't guarantee that what Manishearth did will work! Just that if it doesn't work, the code will not compile. It could have been the case that this vector was mutated or deleted at some point during the lifetime of his new struct; in that case, his code would not have compiled.
2 things that I think would make your life so much easier..

1) Agree with the interviewer before starting to code on the algorithm and problem. I.e. You could say I need function X that would be used like such, and function Y that would loop through such and such. Even better is drawing a high-level example on the board. That way, the interviewer knows that you understood the problem and can be systematic about it. (If you don't have a whiteboard, just write in comment at the top, whatever)

2) Once you start coding, start small.. especially in the REPL. I.e. instead of starting with the whole function, start with the string, then separate it in digits, then sum it up, then work from there. That way, if something doesn't compile, it's perfectly clear what step it was and once you have your function, you're 100% sure it works. TDD style.
Doesn't help, because you don't necessarily know when the other shared pointer could push something to vector, potentially reallocating the internal array and thereby invalidating any references you had to the contents of the vector.
I'm confused. Did he have cancer brewing for a long time that had gone undetected?
Citing Plagiarism, Indian Journal Retracts Paper on Plagiarism
I hate to say this, as someone who is pretty incensed by police brutality yet also believes in the right to responsible gun ownership in the US, that it is often better to kill an intruder to your house than wound or "incapacitate" them, as there is a precedent of criminals who have invaded homes and been wounded by the owners suing and winning financial judgements against the owners of the property.
Beautiful. I love the "low boys" which predated hi-hats. I should add a vintage kit to my app Drum Kit.
Or scoped_ptr to transfer ownership.

There's certainly more than one choice, though.
Weird, I had to do the same thing (porting Ada to C) for a similar project (the JSF). It's an awful idea, because so much is missing in the translation.
> The only reason I don't think C# has taken over Java yet is because of how entrenched Java is

A far bigger factor is that C# is (or at least was) Windows only.
I'd rather not be casting votes on whether any given person is worthy of the black bar.

Instead, lets strongly discourage wasting time talking about the black bar, and just let the HN crew manage it.
Rust's compiler is itself a static analysis tool that is more powerful than any static analysis that can be written for C. There is also a blossoming collection of "lint" libraries that extend Rust's type system to provide user-defined static analysis passes. Servo uses lints like these extensively to help manage interaction with SpiderMonkey, whose (C++-based) garbage collector manages the nodes in Servo's (Rust-based) DOM.

It's absolutely true that Rust is yet to be proven. We need to be ever careful not to oversell its benefits. But here's something that's been proven time and time again: use of C is fraught with horrors and pitfalls, and we should all be frantically seeking to improve the situation; if not via Rust, then via something else.
I'll never forget the day I got an escort to Ironforge from Menethil Harbor. It was a walk that took close to an hour, as nobody had mounts then. I was a lowbie night elf from Darnassus, before it had an auction house (or flight paths, for that matter), and I needed to see it! But the areas we'd walk through were dangerous, so someone nice volunteered to escort me. I wish I could meet that person IRL and buy them a beer. ;) And then... finally walking up to and through those gigantic doors... it was pretty amazing. I still think IF is my favorite city in that game.

Another time, someone showed me how to get to the top of Ironforge. That too was amazing. Sort of meta-gaming!
I wish I could upvote this more. Compare and contrast this protest in South Korea https://www.youtube.com/watch?v=kMi7Jkay0fY
Wasn't C# developed after Microsoft failed to buy Java from Sun?
I am horrible at these kinds of interviews.

I remember once being so nervous that I completely blanked. I'd been asked to reverse a linked list. A very simple task, one I'd even practiced a few times in various languages prior to my interview and should have been able to breeze through.

But I froze. My hands were visibly shaking as the interviewer stared at my back... I shut my eyes tight, trying to think through the problem (I knew this was a simple task, and I was frustrated that I somehow couldn't recall the solution). At first I tried to write out a recursive solution to the problem, but my anxiety-riddled brain just couldn't cope with recursion that morning. So I erased the board and started over trying to find an iterative solution. That went even worse.

"Um, I need to repeat this block of code, I think, maybe. There must be some way, some kind of construct that causes a block of code to be executed several times, almost as if one were looping through the code." AGH! Think!

But I was coming up empty, I searched my memory, ready to seize on the first seemingly helpful thing I could find. And so my mind wandered back to a time when I was about 8 years old, learning to program for the first time on my Apple II. I had just discovered the magic 'GOTO' command, which was the perfect tool to cause uncomplimentary messages about my older sister's hygiene to scroll down the green mono display for all eternity (or until someone hit Ctrl-C).

So... I completed my solution on the whiteboard using a GOTO. The interviewer put his face in his hands and began laughing. Eventually, he stopped and said "Um, ever heard of a for loop?"

"Well.... yes."
I'm still using mine from 2002. Love, love, love it.
If it's not an equilibrium then it can't happen! That doesn't make the claim foolproof or anything-- maybe it's not actually an equilibrium for one reason or another we didn't foresee, but the phrase "it is a bad situation, equilibrium or not" is nonsensical.
In this case it does.

I was more talking about the overall not caring theme. I'd hope that's only because they know the code so can make those sort of assumptions.

Are you saying Rust can find and prevent at compile time logic errors as well?
Do you think Java or a JVM language have been better suited for this task instead of C?
Rust happens to have already defined a subset of itself that forbids dynamic memory allocation, which makes use of a pared-down standard library called libcore.
Is that 120kb UPXed?

Will it host Powershell?
I wanna find some Chinese toms. Great stuff
Amusingly, the NTSB's software fails completely, at step 1:

http://www.ntsb.gov/investigations/AccidentReports/_layouts/...
Going on a tangent, but:

>You took exams in school were the professor was looking at what you were writing the entire time? Your exams were in front of several people on a whiteboard?

Yes. Is this not common? I've had a number of teachers who, as a graded form of evaluation, would ask us to present a topic to the class, and/or ask questions about it. This was extremely common on high school, and happened once or twice in the more advanced courses in my college. I also had to defend my thesis to graduate, which was basically a more lengthy version of this.

I live in Argentina. Maybe it's a cultural thing.
Why Educating Your Prospects Can Take Your Business to the Next Level
Try walking up to your boss and telling him he's a worthless fuckhead, then claim free speech when you get fired.

Free speech does not insulate you from reasonable consequences of that speech.
A shared_ptr does not prevent iterator invalidation caused by reallocation, because the pointed-to vector is not locked, or in any other form stopped from being modified.

In Rust, when you have an immutable reference to a memory location, you know for certain that it won't be modified by distant code as long as you hold the reference. This guarantee also allows more compiler optimizations, because v[5] has the same value after a function call as before.
You "don't care," I'm sure, about all kinds of things when you're programming - depending on what level you're at. Unless you're drawing up CPU schematics, there is something that you have abstracted away as no longer your concern.

Rust allows you to not care about more things than C/C++ despite compiling to a comparable binary. In particular, Rust makes refactoring and extending a code base much more care-free than many other languages (including high level languages) because of the strong type and memory safety guarantees of its semantics.

EDIT (re: your edit) - No one said anything about preventing arbitrary logic errors, just that what Manishearth did will not introduce logic errors because of Rust's guarantees. This could not be the data that Manishearth wants, but the compiler guarantees that Manishearth cannot change the data or delete the data and that the data is not changed or deleted while he is referencing it. That is what is so great.
Ah okay - I didn't realize rust was guaranteeing that no one else would _modify_ the vector while an instance of that struct was around. That's pretty cool.
Also if you have a family but don't have a huge amount of wealth, life insurance is relatively cheap and can give you some piece of mind.
I worked at Honeywell on these kinds of projects. I agree that these people definitely weren't that type. :)

Bizarrely now I am also helping (in a small way) with an innovative healthcare tech project. Maybe many people go through similar trajectories in programming without realizing it.
Interesting to note .NET and Go have both gone to some effort to make their internals more accessible to regular coders that build on them. Roslyn has a C# compiler in C# and has APIs you can use to build things like static checks. Go tip is in Go (converted from Plan 9 C) and has stdlib packages with APIs you can use to build things like static checks. Plenty of differences, of course, but sort of a surprising parallel between two very different ecosystems.
Thanks for the explanation, I missed that!
object orientation taken to its logical conclusion

Oh, how I wish. OO was never taken to its logical conclusion in the mainstream at all. Java's Nygaard-style OO was just a sugar coating on top of a generic procedural paradigm and a far cry from Smalltalk's example that was set over 20 years prior. Ironically, much of the JVM's early optimizations were born out of research into the Self VM - a prototype-based OO Smalltalk environment.

Yet thanks to C++ and Java's object models following the Simula legacy becoming so firmly entrenched into the mainstream as the OO, today the entire paradigm has become disgraced and is outright reviled in some circles (how many times have I seen FP enthusiasts jump every time it's mentioned...)

The Smalltalk and Self communities are minuscule. A more recent addition was the Io language, but that too is very small. OO died before it could really shine, though the Smalltalkers' legacy did somewhat live on as they went on to establish many of the software development methodologies and maxims that are taken for granted today.
I can't find an email anywhere, where do I send the application?
Absolutely. The only thing really keeping Java from taking over the world is a slightly outdated standard lib. It's a great combination of speed, portability, community, OO, native types, functional prototypes and some clear lines drawn so you can't shoot yourself in the foot too terribly bad.

Oracle's API architects are concerned with selling as much WebLogic licenses as possible however, so don't expect changes soon. However, the community has come up with some absolutely brilliant libraries where Oracle has clung to legacy technology.

All in all, it's a superb language with a bright future. Maybe we'll get better leadership as Oracle is forced out of the closed source era (it's happening at Microsoft, so don't laugh).
Instead of answering the question, I'd like to point out how different the world of programming might look today WITHOUT Java. Java was the first maintstream GC language (no more malloc), fully object oriented and the first byte code based VM language. Prior to Java, you were either writing in interpreted languages like Perl or in C/C++.

Java brought programming to a higher standard with clear syntax, easy of use and a much faster learning curve than languages up to that point. That paradigm gave rise to new languages like Javascript and new designs for large scale software.

So, I think it's irrelevant if Java would make it if introduced today since I am not sure today would be here (or at least in its current form) without Java.
It could be either. By definition, a static type system must sometimes reject completely valid programs that it cannot prove are type-safe. That said, for people coming from C/C++, the biggest initial stumbling blocks seem to be that Rust simply rewards different approaches to structuring your programs, which take time to internalize.
OOP gained momentum in the late 80s and early 90s. Before we were programming in Java, many of us were using...C++. OOP might have been different, but it would probably still be dominant.
I agree.

The black bar exists because the owners/admins deem it to exist. It is necessarily a mark of respect granted by them, not by the community.

Any discussion or meta-discussion about its application will only confuse this true meaning and doesn't help anyone.
> legal systems other than the Mosaic law have that "don't kill or steal" stuff.

It wouldn't shock me, but it so happened one that is in force in US and Australia draws largely from Christian law and moral traditions, which borrows a lot from Judaic tradition (not only, Roman too, some Celtic, very little Persian as far as I know). In other countries, it is different, but in those two specific ones that's where the roots are, that's just history.

> Australia is one of the less-worse governed countries in the world over the past 30 years.

How do you know that? Australia doesn't have the same problems the US has, by many dimensions, and is very different geographically, population-wise, traditionally and so on. How you would even compare the governance, on which basis?

> Boring but sometimes effective.

Effective doing what? I don't know much about Australian politics, I admit, but I know Australia has no freedom of speech - people were imprisoned or otherwise sanctioned by government for merely expressing various political positions. Or this one: https://wikileaks.org/aus-suppression-order/. But maybe the government is efficient doing something else than protecting basic rights - but what?
The non-garbled link is www.electology.org/approval-voting

> Range voting also seems to have a bigger degree of regret

No. It has the lowest regret of any commonly discussed system.
http://ScoreVoting.net/BayRegsFig.html

> although it does seem to do slightly better with electing the "ideal" candidate.

Lower regret = more ideal candidate. So you just said a contradiction.