skysight-inc/HackerNews huggingface dataset:
Information security is all about probabilities and risk estimation and cost-benefit analysis, so I don't think people's concerns surrounding Dual EC DRBG are unfounded. That the constants are suspect (regardless who could potentially possess the underlying keying material) and that its performance is worse than similar algorithms is enough risk for many to rationally decide to abandon it---no conspiracy theories required. NSA probably (j/k!!) didn't engineer the POODLE attack into SSLv3, but that's not stopping people from abandoning the protocol (and rightly so)---it's just too unsafe. That said, the spectre of the NSA's involvement in this should concern both US nationals and our colleagues overseas, for political reasons as much as---if not more than---technical ones.
JavaScript, Java lead the way in RedMonk language rankings
> Also, it's a really terrible style to use first person in an app unless it's actually sentient. Otherwise it's annoyingly like Clippy, or just plain obnoxious and presumptive.

I agree, though I found another nice use case, well demonstrated by Bret Victor[0][1]. I played around with it for a while and I find that describing what something will happen in a normal sentence, parts of which you can tweak, is a pretty good way of doing options pages.

[0] - http://worrydream.com/#!/TenBrighterIdeas
[1] - http://worrydream.com/Tangle/
Don't you feel self-conscious that everybody can see your every movement, for the entire day?

To me it reminds me of one of those victorian prisons where every inch can be viewed from the central platform. Now that I think about it, even prisoners get a lot more privacy than this.
> "real easy way"™, but in a very conscious and deliberated way.

If your don't deal with errors in a "real easy way"™, your customers will deal with errors in "a harder way"™ and they'll call you at 4am about it too.

You can't avoid dealing with errors basically.

> deal with in a certain special manner,

Ok is this "manner" easy or hard to handle.

You can also look at it this ways, errors will happen. Some will be predictable (as in you expected a "connection refused" exception or error value. Some will be unpredictable ("this library I downloaded return -5 and just silently doesn't send the value" or throws some un-expected exception).

There are 2 good ways to deal with errors:

1) Use a stronger/better type system or other static checkers. Something like Haskell or Rust, hoping the type checker will prevent some class of errors. You hope to avoid errors ahead of time here. This approach is taken for some critical systems. Navigation, medical equipment, military hardware etc.

2) Isolate errors when they happen. Errors will happen at runtime, even in a typed-checked language. How do you want to deal with them? You can deal with them in an easy way -- isolate the component that fails and degrade the system slightly without completely stopping service. Or even better restart just that one sub-components. Or, have everything come crashing down with an exception or tracelog and get a call from a customer. Erlang and Elixir (and other BEAM VM) languages do this best. You can to a certain way replicate this with OS processes, but Erlang has that built-in. The reason for that is concurrency primitives (processes in Erlang, others have tasks/goroutines/threads) do not share a global heap. So that lets you both isolate the errors they happen to one component, and lets you separate main code from error handling code (you can have supervisors that watch other processes and if they crash they can deal with it better).
>You could assume that Go, although popular, isn't at the level of Python and Ruby in terms of available developers.

Not really, any smart C/C++/C#/Java developer can be highly productive in Go in weeks.

Side thought: If your startup isn't on the west coast, C/C++/C#/Java developers are far MORE common than Python/Ruby devs. Although C/C++/C#/Java developers are not rare anywhere.
Thank you for the explanation. I think it makes sense somehow, however, and high likely because I've never dealt with errors in that way, the _encounter error, crash, restart, continue_ workflow seems a bit awful to me :)

The Haskell solution seems really nice. I've only used Haskell for pet projects and it's one of my favorites languages (though I don't have any proficiency with it,) so thank you for teaching me something else about it.
It's more a matter of values this AI will hold than its level of intelligence. Boström argues that containment isn't really possible.
Correct. It is actually opposed by ruby on rails, which is why when Rails apps get sufficiently large they become difficult to understand/maintain.

One example is overriding an association proxy to have other side effects. Sure it makes for a few very sort lines of code to cause whatever those effects are, but unless someone has read the implementation of the code that behavior becomes completely opaque.

Similarly, acts_as_foo plugins that add implicit behavior everywhere.

The core idea was clever at the time -- that one could do better domain modeling than a few sql statements in a file by using AR and callbacks, but after the app gets a bit complex the domain model classes typically become very tightly coupled and much logic has been flushed away into implicit behaviors to make the remaining code halfway readable.

I have yet to see a Rails app that can stick with the basic structure with over 20 models and still feel remotely well engineered.
Whether it makes a net difference to earnings on a large scale depends on the degree to which this education will be a positional good vs leading to actual productivity gains.

The positional element just shifts money around, devaluing high school diplomas.

Only the productivity improvement element will increase net earnings.
GCJ is dead. Are you referring to proprietary implementations?
Why wouldn't there be any possibility of artificial human intelligence? Our intelligence is just a manifestation of a physical system of neurons that follow the laws of physics. There's nothing inherently preventing us from recreating that.
>the tradeoff of getting the bundles right, which of course reduces cachability

If you are revving your bundles with hashes (main.8a4ce55.js), caching shouldn't be a problem. Not sure what your build process is, but there are plugins to do this on most setups.
Now I'm just wondering about the lexicon since the primitive tokens are things like "like". One potential problem is when two languages don't have words with enough semantic overlap to be comfortable using one as a translation for another. Another potential problem is when

An analogy to my other comment on AST translation: in English you "like doing something" but in German you "do something gladly" (and again in English you "like a person" but in German you can "have a person dear", akin to English "hold dear"). If we expect that the AST can produce a translation using the single verb "like", we may be in for trouble if the target language doesn't do that (although maybe code can be written that uses the AST and that's aware of this complexity as part of the realization of the translation).

Another example could come from the problem of describing states of being or perception, like "I'm cold", "I'm tired", "I'm hungry", "I'm thirsty", "I'm sick", etc. In English we really like using "to be" plus adjectives for such situations, but other languages have other preferred strategies. For example Latin has specialized verbs for the actions of (at least) being hungry, thirsty, or sick (like esurio, sitio, aegroto); in Romance languages people often "have" hunger or thirst (Spanish "tengo hambre", lit. 'I have hunger'; Portuguese "estou com fome", lit. 'I am with hunger'); in German it is cold "to" a person ("mir ist kalt", not "ich bin kalt" 'I am a cold person').

If you imagine having your AST start with Latin, you may have a challenging story about how you could get from "sitisne?" to "are you thirsty?" "¿tienes sed?" "está com sede?" and "hast du durst?" -- not to deny that it may be achievable with enough work.
So I enabled Journaling and that brought it up to 30MB/sec. Still a substantial difference vs 216MB/sec for Linux.. Something with the D.O. KVM HOST setup needs to be tweaked a bit - 30MB/sec is pretty poor quality disk throughput for SSD attached storage.
Do we really need to increase productivity?
I liked them too, when I was an intern and the first few years of my real job.

But after I acquired more knowledge it became more stressing, because everyone was asking me stuff all the time. Also I had to listen to all the communication that was going on around me.

Headphones are but a crutch and a bad one too, since all I want is silence when working and no music or anything...
ChartMogul Closes a $600K Seed Round Led by Point Nine Capital in Berlin
Test Website for Heartbleed Attack • Kali Linux Pentest
This have been done. It's called "ICU's messageformat". Though instead of having a general purpose language, the markup language is specially tailored for localization. One project that support ICU's messageformat is http://l10ns.org
Funny, it reminds me of an idea I had to monitor hundreds of servers with a $35 Raspberry Pi...
Go's panic() acts similarly to what you're expecting out of Erlang. You still have to call it for other libraries.

> so it's not possible to "forget" to check for a null reference like you do in Go

The Go compiler will complain if you don't use the `err` variable after creating it, helping to make you remember to check it, and letting you branch accordingly. This doesn't help with someone who re-uses the err variable or assigns the error return to `_`, but those are conscious choices to bypass the checks Go adds for you.
Fake BBC Website Lures Victims with Charlie Hebdo Misinformation
This is my lack of experience, but how does a blind person launch the app and find the correct button to push? I have toyed around with the Accessibility Features on the iPhone, is there a mode that will speak out what you are tapping on?
I know, right?

Why does the FBI still pretend they follow procedures, attempt to gather evidence, get warrants, etc? It's not as if the courts aren't also controlled by the shadow government as well, and we already know that due to parallel construction, they can literally just make up whatever they want and it's still entirely legal, so why bother with the pretense? The game is rigged so they're going to win anyway.

They should just send a hit squad to arrange an "accident" for Ulbricht and save the taxpayers some money already.
The 37signals offices have lots of private (and semi-private) spaces https://www.youtube.com/watch?v=KYMokpfL86Q
My company recently built out a schmancy new open plan office and moved a bunch of people from my team there. Based on what I've seen so far the answer is that people don't work in that office. They work from home, because that's the only place you can get any actual work done. They do come into the office one or two days a week, but only so that management doesn't feel like they wasted money on all those ping-pong and pool tables.
JavaScript wins TIOBE language of year award while Java hits ten-year low
more realistically:

app.php

<?php
// logic and state here

include 'some_other.php' // modifies or adds state in unknown ways

// more logic

$some_variable = 3; // does the include below depend on this? who knows.

include 'yet_another.php' // expects state, who knows what
// also modifies state

echo $state; // not sure if we can remove/replace any of those includes and this will be as expected.

?>

The includes are being used like sloppily defined function calls which do a muddled combination of rendering and state modification.

The same can be found in Rails in partials.

Also, in Rails, helpers are essentially crippled presenters that have access to lots of effectively global state and thus cannot be reused.
I've worked on open plan floors and also had a private office before. Currently, I share an office with one other dev and I feel it's the best setting I've ever had.
I recommend that you need to teach the translator about the markup. It's really easy to understand.

The way L10ns try to mitigate the complexity of the markup language is to provide buttons for pasting the correct markup for translators. Also a developer translates on his own language first. And this example will always be visible to the translator of an another language for easy reference. So the programmer offloads the logic thinking from the translator.

IMO ICU's messageformat markup is also slowly becoming the standard for localizing strings. It is already used widely by big organizations such as Apple, Google and Yahoo.

L10ns pre-compiles all message string. So it offloads the parsing performance.
The only run on ATMs* and banks is to get cheap euros as long as still possible.

*ATMs here will give you Swiss Francs or Euros.
You can move the desk around. My "window" is on my left.
Just scanned the comments to see if anyone would suggest that :) Being the lazy type, that's the first thought I had reading the article. Perhaps it's not appropriate for all target audiences and all target languages but many times you can find a much easier solution by going about it in a totally different way.
> low-level things as upgrade kernels

This is hardly 'low-level' for most people - your package manager takes care of it. Everyone should want to be able to boot their own kernel: they're given security updates for a good reason.
Is it a generation gap? Old programmer vs new? The open office trend may be the death of my 2 decade career in writing software.

I do not need a spacious office: a room with a door, a distinct lack of distracting windows, and a 4x6 desk and an overflow side table would be perfect. Closing a door means I can focus and block out traffic, noise and the general hubbub of an office.
>To me errors are very special constructs

Special how? Surely they are not special in a way that can't be captured by a type system. You say they should be handled in a special/deliberate way, but that's what it means for something to have a distinct type: it can't be handled like everything else. You just define special error-handling functions and they will work on errors and nothing else, and nothing else will work on errors.

As far as syntax goes, the I feel the big issue is about deferring error handling. You don't always want to mix error handling code with your algorithm logic, so you need to defer. We also talk about 'errors' so generally that we never bother to qualify which kinds of errors should be deferred or not in a way that is encapsulated in the type system. Or what kind of deferring should be available -- return errors or just move them later in the same scope? (Java's checked exceptions are a good example of attempting to do this, but it doesn't work out in practice. Programmers don't think like programs do: deferred error handling isn't the same as deferred error-handler writing, and both are needed in different ways.)

From what I can tell about error handling in Go, it isn't really a step forward. (And we really want a step forward.) Go just kind of falls back on "this was the last thing that worked, and making significant progress is probably too hard, so we won't bother trying."

That's the impression I get, at least. I don't actually do any Go programming, but I'm not inspired by its approach, either.
Agreed - there is something nice about having a quiet space to retreat to at work so you can focus on getting stuff done without any noise/distractions. I miss having a private office sorely since everyone just goes to me and asks me questions, making it harder for me to be productive. Oftentimes these questions are ones that if the developer did more research, he/she could have figured it out.
It certainly made me roll my eyes, but I've read enough Slate to know what they mean.

The software makes decisions on metrics casually correlated with race. Basically it's the codification of institutional racism. Some contemporary political trends refer to "institutional racism" as just "racism," which causes other readers/listeners to hear "prejudice/bigotry racism."

By skipping a few steps in the causality chain and playing with definitions it is possible to make eye-grabbing statements. "Computers are racially biased" sounds WAY more sinister than the (not much) longer explanation.

The eye-popping version is at best a hook to get people to care about an issue. At worst the in-group signaling about tangential issues can cause something worth broadly considering to be thoughtlessly bundled up into existing narratives and political groups. Then nobody will care about the issue itself, but instead whatever their bandwagon has pre-determined to be the opinion to have.

FWIW: I think there is a lot to be considered about unintended consequences of removing humans from decision loops. After reading the intro to that Slate article, I'm pretty sure it isn't happening there and closed the tab.
Now you need to find a translator who knows Lisp
Managers like bullpens because they are very cheap. They cram a lot of people into a small space. They don't require the maintence of door locks or even cube walls. People can be moved around very easily.

I think they also like that everyone can look over everyone else's shoulder very easily, which creates peer pressure to work. In my experience, the maangers that advocate this are often the ones that are really spending all their time in special break-out rooms or conference rooms.
> recreating

And that's the crux of the question isn't it? How do we determine if the intelligence is recreated or merely mimicked? Does such a distinction matter? Searle says yes. More here if you're interested: http://plato.stanford.edu/entries/chinese-room/
Well, on OSX, simply put your window as fullscreen by using the full screen button at the top right of the window...
You can easily simulate einvironment for the AI in your computer. If you cut some senses it is feasible even now, and blind people are certainly human and intelligent so it's not required.

I don't see impossibility there, just impracticability (why create mechanic horse if we can just create car).
Patent reform advocates are launching a ‘super-coalition’ to whack patent trolls
We should have someone like Ben Horowitz who has been a line manager of engineers, CEO of a large company that cranks out code - both the pure "New technology" type code, as well as the "Lots of framework code" type engineering, comment on this. But, from memory, I think he said something like this:

"Engineering productivity, counterintuitively, appears to increase as you move them out of private offices into contact with one another, both through cross-pollination of different ideas, as well as the energy inherent in working in a team environment. This graph of productivity, though, does have a maxima as density increases, until it begins to once again decrease as the distractions become a dominating effect. With that said, not all engineers are alike, and there are some individuals that are far more effective in a quiet room, than those who benefit from the open office layout. The efficient engineering organization should make opportunities for both types of engineers to excel."
Silicon Valley Competitiveness and Innovation Project [pdf]
I don't think state control over individuals can be adequately characterised in terms of "more" or "less". Sometimes what governments do is to shift power and control from some groups of individuals to others, as in the case of consumer protection laws. In other cases they grab power for themselves, building a survaillance state.

I think the debate should be more about what governments should do and why, not just how much they should do, i.e big or small government.
Yeah, I meant in the CFO kind of way. It's now clear it's not a long-term win.
And sometimes it brings big locality hits.

Layout within objects is not what I'm talking about here. What I'm talking about is layout of objects within an array. There's no way to do an array of <whatever>. It's an array of <primitive> or an array of <pointer to whatever>. So much pointer-chasing!

In (e.g.) C, I can do either array-of-structs or structs-of-arrays. In Java... I don't know any way to have an array-of-structs in Java (portably, that is).
University of Cincinnati has a bar on campus, with like 100 craft beers (and a dozen or so on tap). It's fantastic.
I'm sorry for bringing this up, because it's vaguely controversial in some circles, and worse, a huge time-sink on par with TVTropes, but Yudkowsky attempted to run an experiment to see whether someone could be convinced by an AI, using nothing but text, to release the AI into the world. Apparently, he succeeded - his subject elected to release the fake AI.

The method wasn't made public, as far as I know, and it might all be a hoax, but it's something to think about - how do you trap and imprison something smarter than you?
I'd assume that if that made you paranoid like it would me, you could mostly cover them up, or the parts that let other people view you.

Added: Max_Horstmann's put them at your left or right approach also works for me.
>It's not a more popular or established language, yet.

Github would disagree as one data point.

I don't have my own numbers to back this up but I firmly believe based on my communication that there are more people in the world that have written Go right now than Erlang.

>Having a really good language as part of your stack works as a filter--

I think this is good for Go and Erlang... So I don't think it helps distinguish.

Not to mention anyone that smart knows C/C++/C#/Java can very quickly become a gopher if needed; quicker I would contend than you will ramp them up on Erlang.

>Most interesting to me is your perception of the situation

I've been writing Go full-time since before Go 1.0 RC-- I think you don't have an accurate perception of where Go is at.
Mind I recommend earplugs if you want absolute quietness? Sometimes I do wear headphones on without anything playing, because they provide really good sound isolation. You could get specifically noise-canceling headphones for that.

Regarding getting asked all the time by other people, I would think that is more of an organization problem. Nothing stops me from pinging coworkers on irc or any other IM program for help or actually going to their office in person. As an advantage to openspace office, I can just raise my head, look at my coworker and ask "hey, do you have a second?". More often than not I get a "sure, give me a few minutes" if they are busy or they can just lean over or walk to my desk without wasting too much time. And if it's a more serious issue it's "Shall we move to a more private place?".

I honestly don't see a problem, nobody stops you from telling your coworkers to check the documentation regarding their question (if there is one, is it a common question? Maybe you should write something up since you are more knowledgeable on the matter and don't like being interrupted about it). But yeah, this is probably because I'm just an intern and I don't have experience on the matter, but I enjoy working like this.
Hacking Unmanned Vehicles
Last thing we need is another frontend framework, least of all one with bizarre design decisions made by a team with a bad track record.
Generally software developers at any level are treated as the lowest level of person at companies, even when the company specializes in software. As a result, they are packed in wherever they fit.

The theory seems that developers benefit from feeling like a frathouse of some sort, where they play in most of their area, but otherwise cram together to study for a bit, so that they can go back to goofing off afterwards.

Developers are not treated as professionals. They are treated as animals; herded together to make them work, but otherwise just giving them big grassy fields.