skysight-inc/HackerNews huggingface dataset:
Boston, Massachusetts - Stackdriver

Stackdriver is a fast-growing VC-backed startup in Downtown Boston. Our core service, "Stackdriver Intelligent Monitoring" helps hundreds of web-forward companies improve the performance and uptime of their applications.

We have a world-class product team that is tackling big challenges in data visualization, analytics, and large-scale data processing.

Our culture starts with our core values – Humility, Openness, Hustle, and Innovation. Building on our core values, we invest heavily in our people to empower our culture. We invest 22% of our payroll costs – about half a million dollars last year – into employee benefits, including gym membership, employee outings 6 times a year, top-notch health insurance, employee lunches, and a very exclusive award program (check out our Facebook page to see past winners).

Hiring:

Front-End Engineers (Django, AngularJS, D3.js) - http://stackdriver.theresumator.com/apply/1K8g0T/FrontEnd-En...

DevOps Evangelist (Anywhere in the US) - http://stackdriver.theresumator.com/apply/Kz7k5X/DevOps-Evan...
Working here also cached in Google (search on the title + Norvig, click the 'cached' link)
Agreed, but the author's point (indirectly, perhaps) is that requiring braces is an example of something that should be part of the language, and the fact that it's not should be considered a defect of the language.
There are lots of non-blocking architectures that have been around since before node, not "because of it".
JavaScript's (and so Node's) limited concurrency primitives and unfettered mutability have, in my experience, resulted in its making a number of concurrency-related problems harder to deal with, not easier.

Mutability can be tamed with the help of libraries that provide immutable collections[1]. The best concurrency facility for JavaScript that I've found is core.async[2], but you can't really mimic it with vanilla JavaScript as the language doesn't provide macros. It might be interesting, though, to see if the core.async patterns could be implemented in terms of sweet.js[3] and with the help of esprima or acorn[4].

[1] mori, for example: http://swannodette.github.io/mori/

[2] https://github.com/clojure/core.async

[3] http://sweetjs.org/

[4] http://esprima.org/

[&] http://marijnhaverbeke.nl/acorn/
The scroll animations don't work for me either, Firefox 28 on Windows. Works in Chrome.

But frankly I like it better without them. They add no value to the page. When Bret Victor talks about "directing the user's eyes to the solution," [1] I believe he's assuming an information-dense display, which this is not. The page is designed (as many are now) so that only one thing is on the screen at a time. I already know how to look at the thing I'm scrolling to — that's why I'm scrolling. This eye candy is kind of nauseating and I'm happy to think it's a fad.

This is a critique of the OP, not of Webflow, which I'm sure can be put to good use.

[1] https://news.ycombinator.com/item?id=7598793
Small point in your thoughtful comment but I wanted to add that I had the exact same sensation when I got the iPod Nano first-gen. I got it as a gift and it only had 8GB capacity, I had 20GB+ of music at the time. Still, I almost decided to keep the nano over a full-sized iPod because it just felt so damn magical. I felt like I had the future in my pocket and I'd rather lose 60% of my music than let it go.
Quicktun is still maintained: https://github.com/UCIS/QuickTun
Autism Education App – Skill Champ by Infiniteach
typos: excreeting, benifit (singular), disatisfaction, concurency, transfering, asyncronous (in an article about parallelism, oops!), everytime, asyncronous (again), benifits (plural), philisophically, asyncronous (yet again), and finally excersize
Typically DIY inter-board cabling is either insulation displacement (IDC), some sort of DB-9/15/25 or a variant of RJ-11/12/45. Heathkit used to have folks build cables with Molex KK crimp on connectors (which was very time consuming) but you could combine things like power lines (AWG22) and signal lines (AWG28) into the cable bundle. Today there is a tremendous number of connectors for which making your own cable is problematic at best, for example the .5mm spaced IDC cables, or the FFC connectors like the camera connector on the RasPi. I looked into getting an LVDS connector for LCDs (typical laptop screen) to something more DIY friendly, tooling was $2500, and cables would be $25 each, minimum 10) Did I want to invest nearly $3K to get one cable? No, but if enough people were interested it gets to be lower cost. Setting up that infrastructure as a service (making cables in small to medium quantity) would be, in my opinion, quite aweseome.
Service Oriented Problems (2012)
This mistake shouldn't happen?

Mistakes always happen. Even if I dedicated myself to using braces everywhere, my mistake might be that a) I put the braces in the wrong place, or b) I forgot to put the braces.
Yeah. Especially since those brackets are completely unrelated to set theory. An instruction can appear twice in a list of instructions, but not in a set. Also sets are unordered. The reason for the curly bracket choice was that most keyboards had a key for that back then.
A "list of instructions" is simply a "set of instructions" with an order. I was making a conceptual point, not a mathematical one. If you want to be pedantic, the instructions inside the brackets ultimately get converted to opcodes and their numeric arguments, which do form a set.
While I don't want to get bogged down into details of definitions, I'll take a swing at it:

A skill is a capability learned through experience which is wielded with intention.

A behavior is simply a way of acting - it could be conscious or unconscious, it could be enforced or intentional.

A habit is an unintentional behavior.

A personality characteristic and a character attribute are basically the same thing: unconscious ways of perceiving value and making decisions.

There are of course dozens of ways to define each of those terms, and I'm not interested in debating which of them is 'correct' - I am here primarily focusing on the distinction between instilling value-judgments via rituals and enforcement and attempting to control the self-perception or decision-making styles by behaving in artificial ways.

Describing them all as 'patterns of acting' is like calling all matter 'arrangements of chemicals'. It is of course accurate, and even in some cases useful, but you muddy very important distinctions by generalizing to that degree. In the case in point, the distinction lost is between valuations and perceptions.
Monadic composition of futures for nonblocking servers is the way to go, but in javascript? With no for comprehension syntax? With no ability to express the asynchronous nature of your code via the type system using Future[T]?

Node.js does some amazing things, but it builds on very unsound soil, namely javascript.

Edit: to end on a positive note, Scala is doing some great things with nonblocking systems. Check out the play framework, finagle, Future and Promise types in the core library, etc. It's not quite Haskell, but it has the advantage of running on the JVM with easy Java interop.
"Apple headphones... they never fail."

Huh?
That's how I feel too, which is why I find that command effective.
tldr; Node.js' super light-weight cooperative-multitasking[1] allows IO optimizations only humans understand.

I agree with this whole-heartedly, but it does put the limitation on the human, and not on the computer, which is actually the opposite direction we want to go. I don't think we're there yet, so in the meantime, node.js is fantastic for when you need/want to hyper-optimize your critical code path for response time.

One thing I would add is that node.js makes job-queueing, background-task handling, side-effect inducing trivial since it makes networked IO / SOA trivial. In other words, having a separate process deal with anything not necessary for returning a response is almost effortless, allowing your responses to always take the minimum time necessary, freeing your client to continue.

[1] http://en.wikipedia.org/wiki/Computer_multitasking#Cooperati...
I will reply to a completely content-free post with another, mildly less content-free post.

http://widgetsandshit.com/teddziuba/2011/10/node-js-is-cance...

There. Galactic equilibrium re-established.
Surely the key point is that most of us read indentation first, it doesn't matter whether you are witting C with semicolons and curlies or ruby with no semicolons and "end"s or lisp with parens, what the programmer really reads first is the indentation. Those other things are sometimes checked afterwards.

Therefore there are two reasonable courses of action to prevent this kind of problem:

* use automatic code indentation
* use a whitespace significant language

The second is absolutely the better choice. You may disagree but you are wrong. This is not a matter of taste, it is a matter of programming language syntax actually reflecting what the programmer reads.
I made this in response to the Heartbleed bug. I knew I needed to change my passwords, but didn't have a way to systematically remember all the places I had accounts and change them.

Questions:
Am I on the right track here?
Is this useful to you?
What could I do to make this better?
Full title: "The Elite Prostitutes of 18th Century Paris, and the Detectives who Watched their Every Move"

Although there's a salacious aspect here, it's fundamentally about the relation between State and society, and how a government uses surveillance as a way to make the world legible and as an instrument of social control.

Example:

Eighteenth-century Parisians overstated the extent of surveillance, perhaps because they did not really understand its purpose. By the late 1740s, the police were no longer collecting information in order to investigate criminals or even to anticipate problems. As French police scholar Vincent Milliot argues, by spying on Parisians, the police were literally incorporating them, putting those outside the hierarchy into a special group—the spied upon—for which the police provided oversight. More generally, however, the police were gathering information just to gather information, endeavoring to make the city visible to its government. Intelligence gathering had it own momentum.

So what of kept women? If they were hurling epithets against the king, plotting sedition, consorting with enemies of the state, and secretly converting to Protestantism, the police never indicated. They were not a threat to men who hired them, even socially. Rather, like the gens sans aveu, the police kept track of them as part of the effort to provide oversight to a group that naturally had none.
Yeah very true! For that, I tend to say "I'm building X" vs. attributing it as "I am an X."
>How would swapping actresses help?

Using many actresses would allow the investigators to see if an individual receives a different response compared to the overall group. But it looks like you actually meant say the babies knew the testers felt bad so refused to share, not because the baby had been slighted. I think you need to read more on what the study tested.

>BTW: Whatever your intention, calling people "obnoxious", "nit picking", "novices" and "whining" because they question something does not actually raise the level of discourse.

Reread your comment:

>I wonder if they controlled the effect of the actresses own response.

The level of disrespect you show is amazing. It would be one thing if you actually read the study and realized that "Hey, they used the baby's mom and a drug addict in withdrawal as the two testers! Clearly the study is flawed." Nope, your first comment is essentially "I wonder if these professionals are incompetent."
Website Interactions Without Code – Webflow
Sure, why not. Desktop Linux too.
From the article:

I thought for a while about taking away their Valid flag rather than rejecting them outright, but this way they'll get notices in their logs.
I was an Android user since it was first out, would you recommend considering the WP as my next phone? All I read around is great reviews, and I am not really impressed with my Galaxy (mostly durability and reliability issues)
Any Android fans who switched to WP and wish to share?
Funny thing is that they both do basically the same thing, except one is done all in assembly and the other in C.

I would have liked this post to actually discuss the things that a bootloader is meant to do, like switching to 32-bit protected mode and loading the next block of code from the disk.
Unit Testing in C: Tools and Conventions
If this type of thing interests you, check out http://wiki.osdev.org. I cannot recommend this site enough for someone who is interested in writing their own toy OS.
I don't think clojure (or lisp) was designed to avoid line-duplication errors. It's mostly an accident of it being not very line oriented.

I just randomly picked a function from core to illustrate this, but a lot of clojure code looks similar

(defn filter
"Returns a lazy sequence of the items in coll for which
(pred item) returns true. pred must be free of side-effects."
{:added "1.0"
:static true}
([pred coll]
(lazy-seq
(when-let [s (seq coll)]
(if (chunked-seq? s)
(let [c (chunk-first s)
size (count c)
b (chunk-buffer size)]
(dotimes [i size]
(when (pred (.nth c i))
(chunk-append b (.nth c i))))
(chunk-cons (chunk b) (filter pred (chunk-rest s))))
(let [f (first s) r (rest s)]
(if (pred f)
(cons f (filter pred r))
(filter pred r))))))))

There are very few lines of this function that can be duplicated without causing a syntax error because parens will be unbalanced.

I see two:

In a let with more than two bindings, you could repeat the middle ones. In clojure, this is very likely to be idempotent. In this code, it's the

size (count c)

In any function call with more than two arguments, if the middle ones are put on their own line, they could be repeated, like this in the final 'if'

(cons f (filter pred r))

In many cases, you will fail the arity check (for example in this case). If not, the function should fail spectacularly if you run it.

So, I think it's accidentally less likely to have problems with bad merges and accidental edits (not designed to have that property)
Yes, because amateur projects generally undergo third party security reviews.
Well, I'll take the one responsible author now. Who are they?
This is just unbelievable.. Have you tried to email their support? It's hard to believe that that could be an acceptable practice at any company, I would assume it's just some employee being a jackass.
The parent is using Crouton on Acer c720, which has an x86 (Haswell) processor, and is much closer in performance to a modern netbook. The Samsung Chromebook has a fairly dated ARM processor, and the performance on Ubuntu isn't great, but acceptable for my uses (Python and Javascript coding in vim, running a dev server, testing with Chromium). You're not going to have much luck with anything that expects hardware acceleration, but you can switch back to the ChromeOS side with two keystrokes.

I agree with your recommendation though, wait and get the Samsung 2 if you want ARM, or any of the other x86 Chromebooks.

EDIT: And you don't need to type Ctrl-D, it just makes it boot quicker when the bootloader is unlocked
"Someone who knows Haskell learns some Racket"

"Tonight at 11: this rose gardener learns to plant tulips"
I totally agree. Actually it would probably be better if small companies, especially small startups, would think about this activity as "Attention" rather than "PR" or "Marketing". What you want when you're a small startup is the right kind of attention from the right people at the right time.
3D Printer Built 10 Homes in 24 Hours
I agree with some of the technical things that he is saying (though he's several years late to this conversation), but saying things like,

"This provides 90% of the benifits [sic] of parallelism for the common use case without presenting the developer with additional complexity."

is disingenuous. Where does your "90%" come from? Just say, "a lot of benefits" or "many benefits".

Moving onto the question of analogizing human thought as non-blocking versus threaded is tortured and distracting from any main point someone might make.

It is a lot easier for human beings to write code in nodeJS without f*ing themselves over, but that isn't necessarily the case because people understand any better what's happening underneath the covers (do really understand what epoll, select, or kqueue are actually doing at the kernel level?). It's because node's paradigm simply prevents you from being stupid with IO.

You can still be stupid with node though. Back to the "90%" claim, quite a bit of parallelism is used to make computation faster. Node can sometimes still provide some game when computation is a bottleneck. However, since you have to serialize and de-serialize in and out of v8 when you need to thread if you're doing a lot of large computations with large data-structures then node sucks.
FWIW, we built an incredibly easy single click OpenVPN setup tool for DigitalOcean and Rackspace during Sochi: http://www.tinfoilsecurity.com/vpn
Enter API key creds, it makes the box for you, sets it up, and hands you a config you can use for your client of choice. (The script is open source for those of you that don't want to enter creds - we don't store them, and actually remove access whenever we can; for example, we delete our own SSH key from DO because they let us).

It's still OpenVPN but might be useful to those that care about this story too.
Your comment actually made me read the review since it seemed really bad... but after reading it I'm just not seeing the problem.

The "I am not making this up" thing came in the context of recommending ASN.1 for instance. If that were a chess match commentary, this is where the scorekeeper would have put a "??" after the move to note the shock.

And note what tptacek's comment was not: It wasn't a bunch of personal attacks, or swearing. Some of the commentary was "more than professional", to be sure, but that's exactly the kind of commentary you should hope to get in highly-demanding, highly-selective fields.

You want to know what a perfect book review would look like in the Navy's nuclear propulsion program? It would be this: "No deficiencies noted."
Lens Blur in the new Google Camera app
Except in this case, if the company folds, there are likely to be no assets left, as the majority of the funds will be going to pay for manufacturing and the inventory needed to drive it. I would contend that your risk profile is almost, if not completely, identical, and it's the risk of doing early business with a very young company.
Has anyone tried it?
You mean, pretty much any computer not made by Apple? Sure, I still have my home-rolled desktop from 7 years ago. I just put together a new machine earlier this year I expect to get at least that much life out of. I don't even buy top-spec parts, just good price/performance ratios for each part and cobble it together. And if something breaks I can fix it myself.

It's not too technical and not too hard to do. About as complicated as making a full dinner with main course, two side dishes and a dessert.

On the flip side, every other machine I've had that was closed, mostly laptops, but I'm thinking of my C64, and my Coco2, when the smallest piece died on those things, right into the trash they went. There's literally nothing you can do to fix them that doesn't involve an engineering degree and a lab.
Appreciate any info you get when you get a chance to play with their phone. The Nexus 7 is a bit below where the iPhone 3GS was when it was released. I’m not sure how much of that is me having a harder time with larger screen devices though, I find an iPad much more difficult to use then my iPhone. I’m probably going to get a used Nexus 4 dirt cheap and will actually try using it as my primary phone for a while. I should really see if the newest version of Android Studio is still completely inaccessible. One nice thing about Android is that it is quite easy to program for when blind using the Eclipse based tools.
The most important thing to keep in mind is this is for designers not coders -- I haven't looked at this deeply enough to know if it is good yet, but my guess is if you read hacker news comments it isn't for you because, well, you probably code=).

Yes, these sorts of editors often create horrible leaky abstractions. Yes, these editors often confuse product folks into thinking that coding isn't necessary or important or hard. But that isn't its goal -- the goal is to make the common stuff easy to do for people writing / designing simple site content -- fades, positional, simple triggers. There is no reason to write code for this stuff.

If you don't believe me, imagine drawing something without showing the picture. Word documents without wysiwyg. Photo editing without Photoshop. In this video (http://vimeo.com/64895205) Bret Victor brilliantly shows what a powerful interactive editor can do. For the web, no amount of manual css typing can beat what a great editor could do. Whether this is that editor remains to be seen, but the idea of editors is a good one.
Basically the syntax for specifying keyword arglists is based on assoc lists. The calling syntax is based on property lists.

There is nothing to be gained by hashtables.

The Common Lisp keyword syntax actually is a bit more powerful then what your PCL example shows:

(defun foo (&key ((var keyword) init var-arg-supplied-p) ...)

Generally I think it is a slight mistake to use specific data types in arglists - basically mixing syntax and data types.
This is terribly wrong.

Correctness is brought about by ALL of your tools in hand. These tools include unit testing, processes like continuous integration and code review, and so on, in addition to language features such as its syntax and static analysis capabilities.

The job of the programmer is to understand all of your tools and to then use them conscientiously and use them well. There is NO tool a programmer can't shoot themselves with. There's no prima facie perfect tool. And the combination of your tools is a better thing to evaluate anyway. A nail isn't universally useful. With a Phillip's head screwdriver things get a little better; but with a hammer, you'll start moving.

A good architecture and intelligent, disciplined execution is WAY WAY WAY more important than the specific tools we use. Arguments like this one are bike shedding.
Nick Szabo Is Most Likely Creator of Bitcoin, Linguistics Study Says
Well, yeah. But that kind of misses the point--that it would be far better if the design of the language were such that this kind of bug could not have occurred.
2014 South African Elections Social Media Hack
As Isaac Schlueter has said, "non-blocking i/o is as old as the land itself."
The difference is the base of the Project Ara phone, the exoskeleton, is only $15 to replace. So if they change that, you're looking at paying $15. With PCs, the base still costs $150-200 in most cheap options and significantly more in others.
If It takes 20 seconds for bash to convert `~` to `/home/` something is terribly wrong with your system.
Google launches standalone Camera app in Play Store
The Confidence Gap
> that contacts breed failure

Just like in software, the interfaces are where the complexity lies.
Hack congress for fun and influence... (EFF's open congress project)
Google cache link: http://webcache.googleusercontent.com/search?q=cache:xeMschA...
I disagree, but I'm also not interested in discussing Cryptocat on this thread, and I don't think you'd be doing Kyle Isom any favors by pushing the comparison further.
It's important to note that the Cortana app itself is in beta. I think the most interesting news about Cortana is that, unlike Siri and Google Now, it can be extended by 3rd-party developers.

For example, my Chase Mobile app uses Cortana. By activating her and saying "Chase Mobile ATM", Cortana will launch the app and search for nearby ATMs. I imagine that the GroupMe developers can extend it in the same way: "GroupMe Send 'your message here'".
Can you tell us where? I don't see it.