skysight-inc/HackerNews huggingface dataset:
A language is a tool.

Some people obsess over the tool itself. My tool has these 10 features, and it was hand crafted and it can solve 8 Queen problem in 2 lines and it has monads or a cute puppy for a mascot and so on. People who use tools obsess about them, and it kind of becomes the end not just a means to an end. They would read about the new features in the language, they would run over tutorials in their free time and so on. There is a good amount of pleasure derived from fawning over the tool itself.

Others don't care about the language or the framework, they just want to job to be done and get paid. It turns out that some part of code they are working on is written in FORTRAN, COBOL, or (oh the horror!) MUMPS, that won't bother them much. They'll just figure it out and fix the issue. The pleasure comes from getting paid and solving the business problem at hand.

Both are extremes and there is a continuum between the two on which most people fall. Neither extreme I think is healthy and at the same time there are good parts about each one --

Someone who cares about the tools they are using will probably also use the tool better and more effectively. Someone who is picky about the type of hammers and their design and knows the history is also probably pretty good at hammering nails in. They might spend $1000 for a titanium hammer but hey they will be good at it.

Also someone who cares to get the job done and derives pleasure from solving a business problem, might just be the one keeping the product/company/startup afloat. Making money and delivering products is the top goal of most companies. This often means what seem to be boring, old, broken, unfashionable frameworks or tools. But so what, look we are still getting a paycheck!

There is a validity in both.
It actually really bothers me and makes me uneasy.
Easier said that done. One can do that here, one doesn't need to go on a world trip sabbatical to unplug and recharge. Better to keep the steady state. All I am saying is that it takes mental energy, the mechanical act of "unplugging" is as simple as not charging your cellphone.
Type in "plate" for level 1 - that's the correct selector. The goal is to type the correct CSS selector for each level into the strobing blue input. Also, use chrome or firefox :D
But you could argue that Law school is only competitive because the real world salaries are.

In the same vein if you raised the salaries at certain large faculties the technology degrees may end up competitive as well.
So, this discussion has already demonstrated how Java programmers get this stuff wrong. Kind of head shaking stuff. Here's a simple implementation. No exception handling logic (and some would no doubt quickly with allowing throws of Throwable), on the assumption that anything that actually generates an exception would actually be the kind of thing you'd not want to recover from, and it uses synchronous, single byte at a time (buffered) reads & writes, but it actually runs reasonably efficiently as compared to using most scripting languages.

https://gist.github.com/cbsmith/9755809
Me too.

I use make together with a markdown compiler, and the m4 preprocessor, to keep devdocs up to date, in one huge document, where everything is included, and the various sections as stand-alone docs. The markdown version of the section files is almost uncluttered from m4 and html. I link from any external doc to any other via links in the toc in the main doc index.html, to keep everything as simple as possible. It's sweet.
Haskel's compiler is much slower than Scala. Ocaml's compiler is also slow.

F#'s type system doesn't do higher kinded types, or type classes, amongst other being much less sophisticated.

I'm really tired of hearing the Paul Philips argument. Scala 2.11 is a big refactoring addressing many of his complaints. Will that stop people from using the Paul Philips argument in conversations? Of course not, as many people weren't interested in his actual arguments.
Stingray, mobile monitoring, and the police who use it
You can start using Java 8 as soon as you are willing to move. I don't think there are many breaking changes in the new version. Just give it a few months to be really stable. Last week , it took me around ten minutes to move one application from 6 to 7.
What I liked about Java is:
* The IDE
* Staticness and strictness
* The JEE deployment model. I think this is overlooked and unappreciated. Having a standard way to specify database connections, queues, etc is very nice. I had never stored any passwords in the source repository
If your code is "reasonably maintainable", I don't think you can call it mediocre code.
> For some strange reason, nobody wants to discuss polygamous marriages, and whether they should be legal or not.

To me this is not hypocritical, because I do not see a contingent of people saying "we are living in healthy polygamous de facto marriages and wish to have the state recognize them." I don't think you can reason about this in a logical vacuum, it's about observing what actually happens in reality.

> Another thing, I've often heard gay people use the derogatory term "breeders" to slur heterosexual couples with children.

I've only ever heard this term used in fun. Any term used in a genuinely derogatory way is not ok by me.
sure they do. Ebay.
Java had major shifts in the language in 1.2 and 1.5. Java 8 isn't one of those cases. I think you'll find adoption won't be terribly slow.
A prominent example is Solr's JSON update endpoint [1], which is just the XML update endpoint in disguise.

It expects input of the form:

{
"add": {document 1 goes here},
"add": {document 2 goes here},
...
"commit": {}
}

And of course all the "add" values are different and the "commit" has to come at the end.

[1] https://wiki.apache.org/solr/UpdateJSON
Finding an apartment in the US as an expat
What should we do with UTC? Petition OBSPM to stop including NIST measurements in the calculation of UTC? Should we include USNO in the list of "tainted clocks"? Things are going to start to get crazy when you factor in GPS.
I agree that there are plenty of warts to be found in various well-known Java libraries, and that there is a shocking amount of poorly architected Java out there, but I can't agree that it's the language's fault.

Java has become the language of "the noob." For a very large percentage of programmers, it's the first language that's presented to them. As such, there are endless examples of Java projects written by people who are still struggling with basic flow control, let alone project architecture. Some of these projects are written by smart people, and they're genuinely useful. As an example, think of the research biologist who's writing code for her thesis - code for which there's probably no measurable market.

Because it's the language of the noob, it's really easy to gain the kind of experience this author is describing. The kind where you just glide along, "turning the crank" not really learning anything for a long, long time. People come away honestly believing that because they've worked with the language for so long they're experts. That there's nothing left which will surprise them, or change the way they work in this language.

I've seen a lot of cases where these people bump up against some really cool things and never realize it. Because they don't understand it they quickly write it off as bad code/architecture/naming.

One of the most common examples I've seen of this is when people pull class names from the Spring application framework core, parading them around with no context and no knowledge of why they exist or why they might be incredibly useful, let alone why they sometimes make Java a joy to work with.

"AbstractSingletonProxyFactoryBean??! I don't care what it is, that's just stupid!" [1]

How ignorant.

> After all, you produced 576 classes that contain 10,000 lines of Java code, all of it seemingly essential, so you were doing your job.

I can agree that Java is a verbose language, and sometimes it's really difficult to express an abstraction succinctly as compared to some other languages. I can agree that it's also easy for people to run wild and over abstract. However, I think it's just as likely for people to mistake well abstracted code for needlessly verbose code.

> And nobody can glare at you and demand to know why you used 576 classes when you should have used 50...

Without a specific case, it's hard to figure out what's really going on here, but if this is a primary target metric, I'd say you're prioritizing the wrong things.

> ... because in Java doing it with only 50 classes is probably impossible.

Just throw separation of concerns out the window and you can write just about anything in one class.

1: http://docs.spring.io/spring/docs/2.5.x/api/org/springframew...
> Might be better to use "write" instead of "print", to avoid character encoding issues.

Ya think!?
Non-competes are between an employee/employer. Non-solicits would be between companies, in this case competitors. At least they are competing over the same pool of employees. As such, it's likely viewed as collusion.

This isn't a big of a change to the legal precedents. This type of behavior has been illegal for a long time. This is just the first time that I know of where it's been this public involving media-friendly companies.
My initial impulse would've been

#!/bin/sh

cat
How to debug your code
This is for newbies who have just started with coding and are unable to learn the debugging process.
Thanks for responding. I never thought about bitcoin+time problems. Are there any efforts/research into how to address the bitcoin+timestamp problem?
Sh*t ads swoop in while reading, which always in my mind degrades the trustworthiness of the content and causes me to look for an escape out.
They didn't need to fly test flights. That would be big $$ and take time.

But apparently, their hardware is installed on plenty of airplanes, so they just needed to study normal flights north and south in the region to establish a baseline to which to compare MH370's data.

And it was that data that lead them to conclude that the southern route was likely the one MH360 actually took.
> I have a healthy love/hate relationship with Java - but that's the first thing I thought of too. Alternatively you could read into a byte[] buf and not have any casting.

Okay, that kind of points to the problem. You don't see anything wrong with that code beyond the casting (and avoiding casting is the wrong reason to read in to a byte[].. which opens up some additional complexity too).
I think it is far from apparent that these agreements suppressed developer salaries at these companies, much less across the industry as a whole. We're talking about recruiting agreements, not direct compensation collusion.

I agree that the practices were unethical, illegal, and infuriating as a developer, but it is an enormous jump to claim that the actions of several Silicon Valley companies lowered industry-wide wages by tens of thousands of dollars per year.
> Java has become the language of "the noob."

Along with PHP (for different purposes, though).
I mean, if you really want to be pedantic...

> you need to import IOException

try {
...
} catch(Exception ex){ ... }

;-)

Edit: Or if you want to be just as pedantic, and not write an obnoxious catch-all

try {
...
} catch (java.io.IOException ex) { ... }
I'm not sure I'd put this down to "horrible city structures".

Frequency of public transport is typically proportional to the population density. People are more likely to want to know the time of the next bus/train/tram when the cost of missing it is a 20 minute wait.

Managing population density is definitely part of city planning and I'd suggest limiting it has a more beneficial impact on quality of life than more frequenct public transport.

I live in one of the most denstly populated areas on earth and for me at least, the benefit of having a train interval of < 2 minutes does not offset the downside of having no space. E.g.:

- Peak train density >6 people per sq meter (1.8 sq ft per person)

- Peak urban density ~130,000 people per sq km (333,000 per sq mile)
I had that WFMU shirt. :)
Same issue here. Not sure what I'm missing.
It doesn't take any energy to leave a cell phone at home before leaving for an airport. On day four, I can assure you, you'll still be alive, worrying about your HN karma, taxes or whatever.

What people most often search the entire world for is only found inside. If they never found it, going everywhere and doing everything is never going to help. Only people that are centered enough but just temporarily exhausted can actually enjoy an exotic vacation or just going for a walk.
HTML Tidy only catches structural issues with HTML (e.g, mismatched or missing start/end tags, invalid attributes, etc). It barely knows about CSS at all, and it certainly doesn't try to do any validation on it.
> I don't know why so many cool programmers hate Java. Sure the library is too big and sometimes is hard to find the proper stream class. Or the Date class is antiquated.

The library is too verbose and over-architected. My idea of a good match would be the Java language with Python's libraries.
Show HN: KD-tree recommender system in Literate Coffeescript
Huh, so basically it is the same but now opt-in on a channel level. I stand corrected.
Introducing Jaewoo, the Licensing Team's spring intern
If java was brainfuck, and we still got the JVM out of it, it would all be worth it.
You can always ask the number of shares outstanding and calculate it yourself.
I actually find brainstorming a great way to refine existing ideas I've come up with but for which I don't have a clear picture of the details. Granted, it's something I'll do by myself and come back to it over time until I feel like I finally have clarity of purpose and implementation, but it is still a case of sitting there just dumping out a huge bullet point list of ideas and refinements as I think about the idea. Not only that, but often it also helps me expand the idea in directions I hadn't thought of, and sometimes pivot the idea into something even better.
So I was specifically talking about moving from place to place without the need for maps. I am only comparing with Calgary and the greater Toronto area (not Toronto city). I am sure other cities in NA are different.

One reason is that Lahore is divided into gated housing authorities (which is bad for a lot of other reasons) but to get to your destination you just need directions to the the gated community. One inside, everything is neatly divided into grid structured blocks and numbered streets which are easy to navigate.

Calgary's streets have names not numbers. (Erin Grove, SE) tells me almost nothing about where the street is located. Even if I were a native I would need a map for unfamiliar streets.

Also, because people in Lahore are generally poor (most people don't have cars) and not very literate, the city grows in a way that they can navigate. Nothing to be proud of, but that is probably the reason I would say Lahore is 'better' designed.
There's a flip side to this no poaching agreement, evidenced by Facebook's position:

Is there a benefit to this agreement depressing wages in that, for startups, obtaining competent developers was cheaper than it would have been otherwise?
> The second: as you'll know, the Patriot wasn't designed for a direct hit on incoming missiles, but was intended to get within a critical radius and then explode, triggering an explosion in the incoming missile's warhead. My friend theorised that the Iraqis exploited this by repeatedly launching missiles without payloads, so that even successfully exploding Patriots had little effect other than to deplete the military budget by X hundred thousand bucks a throw.

How much does a Scud warhead cost compared to the cost of the missile body, fuel, guidance system, etc? Scuds are certainly lower-tech than Patriots, but they're much larger and carry much more fuel, and Iraq had much less money to burn than the US. It seems unlikely to me.
Log.go source
Cuba gives doctors big pay raise – to $64 a month
I don't understand - how are "it is genetic" and "it is a preference" contradictory? The two statements seem orthogonal to one another.

Suppose appetite for risk is genetic - does that mean we should stop saying "risk preferences" and (as a matter of civil rights) must stop legally favoring certain choices regarding risk?
The interview is on YouTube: https://www.youtube.com/watch?v=QfMvqkrQkYQ .

I didn't see any ads, probably because of AdBlock.
> I do not see a contingent of people saying "we are living in healthy polygamous de facto marriages and wish to have the state recognize them."

So the minority should not have any civil rights?

In the US there are currently two different TV shows both featuring a man and his five "wives" and all their kids, and they all seem well adjusted and happy. Yet the law does not allow the man to be married to all of them. One of them has been fighting this stuff in court in Utah.

Why do people support gay marriage but not polygamous marriage? Why aren't there activists on street corners handing out leaflets and asking for donations to help minorities in Utah?

There is obviously some kind of double standard going on here and I'm going to go out on a limb here and say that it is simply human nature at work. Gay people who want to get married only care about their own situation and are simply not interested in polygamous marriages.

So it is somewhat hypocritical to expect the majority, who are not gay, to care about gay marriage when the debate is not truly about civil rights, because if it were, the campaign would also be fighting for the rights of polygamous families.

I'd like to see the discussion take place and not be dismissed out-of-hand.
Graphing the shark
Maybe you're not reading the same words...

Nobel snobels, still has nothing to do with crypto.

Thank you for arguing my original position for me.
The satellites need to be repositioned to provide eyes on coverage. Source: every episode of 24 ever.
this is fun. Love educational games.
Li-ion batteries are only dead after 2 years if they are abused or their charge/discharge life is used up. Properly cared for real world Li-ion batteries last for 10 years or more (in spite of Isador Buchmann's claim to the contrary).

Note that he explicitly confirms that Li-ion batteries have a limit on the number of charge/discharge cycles they can handle. That's precisely the problem this technology is supposed to fix.
Spurious red herring... the OP topic is crypto / CSPRNGs.
Wait so it's illegal to agree not to cold call each other's employees and let them apply for a job if they want?

If that's all they did, what would be illegal? How is that price fixing?

That's like saying stores agreeing not to advertise inside each other's premises are a cartel. Those companies can still advertise their openings just not actively poaching each other's employees.
> I can agree that Java is a verbose language, and sometimes it's really difficult to express an abstraction succinctly as compared to some other languages. I can agree that it's also easy for people to run wild and over abstract. However, I think it's just as likely for people to mistake well abstracted code for needlessly verbose code.

See, this is a mistake. Abstraction is not an end in itself; it's there to make life easier and to make things easier to undestand.

Bloat is one of the many things abstraction is supposed to reduce; if an abstraction is increasing cognitive overhead and reducing the signal-to-noise ratio, then we've got ourselves a problem.

For reasons that I cannot comprehend, Java seems to be the only language that seems to have excessive abstraction as a requirement. Not as a convenience, not as a nicety, but as a requirement to do things like Dependency Injection, Inversion of Control, Unit Testing, Mocks, logging, etc. The fact that you need to use entire frameworks to accomplish the functionality that in many languages is covered by a couple functions in a built-in module is a mystery to me.

I'm not the wisest expert, but I have over a decade in a field and I've worked in all sorts of different software, and Java (along with some very badly written .NET systems) seems to be the only technology that requires me to grok a dozen files to understand basic workings of MVC systems with the most elementary of logic. And the thing is, 90% of that code is absolutely useless to the extent of the use cases proposed by the system, and none of its potential extensibility is actually used. You have to ask yourself how come neither Python nor Haskell have these monstruous frameworks.

Sure, it's a lot better now, after having caught up 8 years behind the rest of technologies, but the foundations are notoriously complicated for things that are effortless with other tools.

This points to me towards the idea that Java abstractions have simply been poorly chosen.
As an interesting aside, Inmarsat are based on the Old Street roundabout in London. This is reputedly the centre of the startup scene.
Latest DIY Craze: Brain Hacking
It’s an optimisation problem. Both classes of people, at a fundamental level, want shit to get done. It’s a question of whether you want it done right (for some definition of “right”) or whether you want it done now.

Most of the time, there’s a balance to be struck in the tool you choose—if we did it in Haskell or OCaml or Scala, it’d probably be more correct and easier to maintain in the long run; but we are a startup that is likely going to run out of funding in a month or two, and if we hack it together in Ruby or Python or Node then no one will fault us and we can rewrite it in a good language later if we have the budget of time and money.

So while Haskell might be my primary language at work and play—and I see the tremendous value it holds for experienced developers—when beginners ask me what language they should learn, I invariably say: “Java”. At this point, it’s the essence of mediocrity, the dead middle of the bell curve; you can go better or worse from there.
To bolster your point and weaken this—"newly minted lawyers were still making several times as much as good programmers"—see also Paul Campos's Don't Go To Law School (Unless): A Law Professor's Inside Guide to Maximizing Opportunity and Minimizing Risk and Steven Harper's The Lawyer Bubble: A Profession in Crisis.

It is true that a tiny number of lawyers make a lot of money straight out of school, but as noted their numbers are small and their hours (and often lives) awful.
The most offensive thing about these stories is that those same people who conspire to drive down employee salaries then go to their executive compensation committees where they conspire to drive up executive salaries.
While I don't subscribe to GP's view that satellites have bandwidth for "video recording the entire planet at all times", it seems plausible that SIGINT satellites would have a relatively constant bandwidth available for observation. As a (non-geostationary) satellite passes over relatively unpopulated areas (e.g., the southern Indian Ocean), it will be "bored" and thus far more likely to notice a single low-power transmission.

On the other hand, if it is storage and downlink bandwidth that is limited, sats would probably be programmed to ignore or discard uninteresting signals. This seems likely to me.

So the question may be whether commercial airliner pings from the southern Indian Ocean area were considered 'interesting' at the time and, if not, did anyone realize there was a rogue 777 in time to re-task the satellites?

Regardless, I'd bet those signals are considered interesting going forward.
Question: I see all this discussion about buffering and encoding and such.

In python, this seems to work:
import sys
sys.stdout.write(sys.stdin.read())

What is being abstracted away/handled by python that I'm not seeing?
As in "You stop cold-calling me, I cease firing on you"?

Not sure why that would be illegal.
anyone know if i can short this stock? i know where this ones heading ...
Everyone prepared for disappointment?
I wonder how this could be brought to the general public as a - say - js framework.