skysight-inc/HackerNews huggingface dataset:
Also worth noting is Vincent (https://vincent.readthedocs.org/en/latest/), a Python API for Vega, which has been my preferred method of Python data visualization for the last while -- it's been de facto deprecated since the author is not planning to rewrite it for Vega 2, but it works great.
blue-black colorblindness at night: https://justgetflux.com/
The Point of Pattern Matching in Scala (2009)
Show HN: Tipping culture for developers on the Web
CFR Freight Chooses TrueConf Video Conferencing to Connect Across South Africa
Collection of Less Commonly Used Unix Commands
VirtualDJ 8.1 Pro with Crack Patch Key 2015 Full Version Free
Ah, too subtle for me. There are enough people looking at the world through the lens of "everything should be on the web" that it doesn't seem entirely crazy to have the browser as the display target.
The problem seems to be that they come at things from the wrong direction - you can't run vim without being backwards compatible with at minimum terminfo pages, very likely vim also makes an assumption also that the terminal communicates over a tty, and possibly you may just need to support actual ANSI Escape Codes. You can't run anything else without that either. Running vim should be the first thing this terminal can do.

Just like the web itself, any new teminal client needs to be backwards compatible with the capabilities of prior terminal clients, because programs that run in the terminal expect it. And if your terminal can't run the programs everyone runs in their terminals, no one will adopt your terminal. But many of these projects seem to have no intention of maintaining that backward compatibility. Some, like TermKit, fully conflate the terminal and the shell and even many UNIX utilities.

You can't hope to supplant ANSI compatible terminals when you let them have the enormous advantage of running all the software anyone wants to run in a terminal that already exists. It would be like saying you have a new, better web browser that can't open any existing web pages.

No idea if this particular project has learned from past examples and is backwards compatible or not. (EDIT: It doesn't have a terminfo page, so probably not.)
What's more interesting than the article are the comments below it. The average person isn't commenting on what a cool deep learning breakthrough this is.

If AI is ever actually realized, it will occur along with a fit of conniptions about how "fake" it is. Well... at least until people fail to pass a double-blind test distinguishing between human and AI creations.
Newton's scientific ideas, which are what matter here, remain largely untouched since they were published in the late 1600's. The fact that you'd resort to bringing up how little science focuses on his beliefs in things like numerology and alchemy doesn't bode well for the strength of Kuhn's work.

There's his scientific work which is widely available, and then there's his personal beliefs. I could really care less if we don't talk about his theology, but if you're accusing science of being dishonest about his mathematical and scientific contributions that's a claim which requires better evidence than you've provided.
5 Entrepreneur Groups That You Should Be Apart Of
Freedesktop systems get you an 'xdg-open' command (there's also 'gnome-open' for GNOME, and 'open' for Mac OS X).

On Linux you should be able to wire up binfmt_misc, the plugin system for execve, to xdg-open.
I would actually be somewhat okay with running the graphical stack as root inside a jail, if it meant bypassing all of the systemd emulation.

> Frankly it feels like Linux is turning into some kind of marketing mess

I feel it's just been becoming a mess in general. They're trying too hard to cater to every possible use case, and there's nobody really in charge of the whole end-product to say "NO" to things. So they completely miss the elegance that comes with simplicity and minimalism.

More and more, I feel the long-term solution for BSD is going to have to be a full split on the graphical stack. It's been lovely for transitioning to be able to take all of my Linux apps with me to BSD, and it's a huge hindrance to eg Haiku adoption, but ... with Linux becoming more and more insular with Linux-only dependencies all throughout the stack, it seems inevitable that this Frankenstein of Linux emulation is going to have to collapse at some point. We could still have GTK/Qt ports, so we could still run the truly portable stuff (Audacious, Pidgin, Transmission. etc.)

Or as a nice alternative, dedicate a TTY to running a virtual machine of a full Linux OS for your graphical desktop.
We used OpenBSD with carp and pf as our external firewall for quite a while - worked great.
Show HN: Ruby Programming Contest
I created a Ruby programming contest that starts Sunday 10am Eastern Time. It will have a mix of programming challenges so all sorts of developers can participate and win prizes. https://www.learneroo.com/modules/147/nodes/805
Xfce already depends on it? :(

I was under the impression they had FreeBSD users on their dev team, and kept it alive, just with some limited features (like automounting not really working) and only relying on a few Linuxisms like Consolekit.

Still on 4.10 though, so perhaps that's no longer the case on the newer versions.
Clickable link: https://www.learneroo.com/modules/147/nodes/805
I wonder if there is a grey area where tech solutions can help push slow ideas by easing if not the “talking” then the spreading of ideas.

Let's say a FB group for nurses in Uttar Pradesh, where they can share their thoughts and ideas. You'd use the foot-approach to educate a part of the group. They can then gather experience, validate their learning and spread that. The idea would be that tech makes the idea spread faster, with you having to educate less people by foot.

The impact might be improved by working geographically, so that each nurse talking to the nurses she knows would be unlikely to talk to one already educated. But then, maybe overlapping groups would reinforce the learning. :p

Also, reminds me of an idea of an NGO had to record testimonies by voice calls, and then playing these testimonies to their peers. Still not the same as building a relationship, but probably goes in the same direction.
This was already shared 6 days ago by user midko ..

https://news.ycombinator.com/item?id=10143929
Tinder isn’t the only reason the dating scene is terrible for women right now
I'd say we're in agreement w.r.t. the first point. While configuration files seem to be declarative in that they describe the properties of something rather than the steps to build it, they fall prey to many of the same issues that make imperative code inelegant.

As to the second point, the prime example I had in mind was the difference between Grunt/WebPack and gulp. Grunt encourages gigantic configuration files while gulp provides a set of primitives which can be programmatically manipulated and composed to produce the desired effect.
Is XMPP "less and less often used"? I just started using it seriously relatively recently. It's quite nice and there are multiple excellent open server implementations, and I've been thinking on ways to integrate it into some of my own projects. I don't really follow trends in this area, so I don't know what people are doing with it...I do know that Facebook and Google have abandoned XMPP, but that's to be expected. They want to own their users, and they have enough power to do so, regardless of the ethics of the question.
It's orders of magnitude slower. Might as well just use AWS sqs.

If you want to do throughput of 10k/s per machine, do yourself a favor and use ZeroMQ. Kafka is a nightmare when your topology needs to change. ZMQ is just connecting pipes and splitting throughput.
Hi there, we've posted a number of example static and interactive visualizations here: http://vega.github.io/vega-editor/. A schema for a Vega JSON specification can be found here: http://vega.github.io/vega/vega-schema.json. More information about the Vega toolkit specifically can be found here: http://vega.github.io/vega/.

Vega-lite is currently under development, but some initial examples are available here: https://uwdata.github.io/vega-lite
Great, thanks! If you could link to a human-readable version of this more prominently, it will be great.
Ask HN: Traffic-shaping on MonkeyBrains?
My roommate called MonkeyBrains SF yesterday because we were getting low bandwidth speeds over the past month (1 MB/s down, 200K/s up). We checked our internal setup to make sure that it wasn't on our end, and after talking to a MB representative on the phone today, my roommate gave me some surprising information.

Evidently, MonkeyBrains has an informal total (up + down pipe) usage cap of 1 TB/mo, but I can't find this disclosed explicitly anywhere in their policies. They say we had a spike about a month ago, and decided to rate limit us. They also claim to have sent us emails ahead of the limitation, but we can't find any. My roommate says that they were mentioning patterns of our usage during the conversation that don't seem to reflect actual use.

They told us to watch our use and that they would monitor things from here on out. I have also noticed that torrent traffic maxes out on their network at 1 MB/s down and about 15K/s up. I've fiddled with router / torrent app settings, and every time: the torrent will climb to about 2 MB/s+ and then drop down to almost exactly 1 MB/s. If I plug my computer into my LTE phone, the same torrent immediately jumps up to 3 MB/s or so.

We also just ran a test -- my roomate got speeds of 15 MB/s down via Ookla, and I turned on a Steam download (which, AFAIK, is non-torrent data downloaded from their servers). My download maxed out at 1 MB/s down and my roommate's Ookla test jumped down to 1.5Mb/s. I turned off Steam and the Ookla speed jumped up to 15 Mb/s+ again -- immediately.

I have three issues here: 1. they seem to have rate-limited us for crossing a use threshhold without notice, 2. that use threshold seems to be arbitrary and unstated in their documents, and 3. they also seem to be shaping not just torrent traffic but our entire pipe without disclosure.

Has anybody noticed similar patterns? I had been rooting for them as an independent local ISP, but this kind of behavior is exactly why I left Comcast.
Hi there, I'm part of the team behind Vega and happy to answer any questions you may have!
Getting expelled from school is considered worse than being banned from HN, and therefore requires more justification.
That's what our product, Elevate Web Builder, does. It uses special JSON control interface files to describe the element styling:

http://www.elevatesoft.com/manual?action=viewtopic&id=ewb2&t...

The benefit of using JSON is that a JS compiler can include it in the HTML loader for the JavaScript application, minimizing any more round-trips to the web server, and can treat the JSON as a "resource" that can be manipulated in an easier fashion than CSS at runtime. Furthermore, the JSON can be compressed/uncompressed using identifier compression, making it tiny compared to CSS.

CSS is perfect for web sites that primarily use static/dynamic HTML organized as pages. It's a bad fit for single-page JS applications that act more like traditional desktop/mobile applications.
After talking with nerds about charity I came away … worried
That just proves how useless the test is.
I was surprised, too. I thought my reference to animal farm (some animals are more equal than others) was particularly clever.

It's possible that the head English teacher was the one who wrote the original Winston's Way, however, and may have taken it more personally as a result. I'm not sure though.
Just finished atlas shrugged. It got a little long, but for the 1st 80% of it I was pretty engrossed by the plot line, themes and all aside. I enjoyed it
FAIRie here. GA is essentially guess-and-check. SGD doesn't require guess or even check; if your error function is differentiable, and you didn't screw up the chain rule, you know what direction to head in to make it go down. For large models with lots of parameters, finding a setting for each parameter that makes the model as a whole go down by random choice has complexity n * f(n) for some monotonically increasing f, while SGD really finds you your next model, with decent guarantees it will be better, in O(n) time.

The theoretical hand-wringing about SGD for neural nets is that their loss surface isn't convex. It turns out this doesn't matter. The loss surface is a high-dimensional egg-carton, and you need to get winning-the-lottery-while-struck-by-lightning unlucky to find a significantly shallow local minimum. There are lots of saddle points, and you need to do something to drive out of those, but stochasticity seems sufficient in practice.
I think you're mixing up education and credentials. Attending high school is an important part of most peoples' education in much of the world, but obtaining a diploma is not an education. In fact, getting expelled for publishing what other students have to say about the teachers is likely far more educational than completing the final two or three months and obtaining a diploma.
I use ipython notebook daily for data processing and interacting with simulations. Works great. The problem is that I need SOMETHING that lets me draw diagrams and write equations by hand,
Why We Killed a $150,000 Feature
I don't know why this comment is being down-voted. Your comments are spot-on. See my reply below about our product Elevate Web Builder - I came to the exact same conclusions as you. In fact, version 1 of EWB did use CSS, and then I got rid of it this year in version 2. In a component-based architecture, all UI updates are typically dynamic, and pre-defined styles simply don't fit as well, other than to define the various default "states" of controls/elements. CSS is complete overkill.
I used Vincent for awhile. I find it to be someone dated at this point given the takeoff of Bokeh, Seaborn, Plotly, etc. Was awesome while it lasted though.
I don't think we're disagreeing at all in principle. I'm mostly trying to point out that your change is a group whether you think about it or not (actually, several). Then, let the best representation win.

Monads aren't a representation, they're a functionality.
You'll be more productive if your computer announces the time
That blog post, very creative. Such a good idea. All I've done with the image integration is show a 128px frown emoji when a script exits wrong.
Notes on a tour of an Amazon distribution facility (2014)
Bringing up a whole web browser engine for the terminal is a deal breaker for me. I want it to start instantly. 1 second is too long.
Thanks for mentioning this. I found a nice article about it and generalisation to blend modes here: http://ssp.impulsetrain.com/porterduff.html
In my high school classes, I used to always give a handout (I have killed so many trees... :-P) I often included a short survey that the students could fill out in a minute or two at the end of class. It was a checkbox affair to keep things as anonymous as possible (although some students occasionally wrote comments which I appreciated). I found it unbelievably useful in improving the classes.

Of course, it's hard to get information on how the students are personally relating to you. I also would have welcomed a way to get feedback without invoking a confrontation. Elsewhere in this thread I describe how it is inevitable that some students will come to hate you (either by mistakes on your part, or because of problems that the student is having personally). You have to accept that it is part of the job, but I would have welcomed some way to see if there are any common threads that I could work on.

Of course, just like any profession, some teachers can't deal with criticism. Just look at programmers. Tell Joe Blow that his design could use improvement and instantly they turn off. Some will take it as a cue that they need to submarine you politically so that you aren't a threat to their job. :-P
It seems from his comments that the idea of a compiler being able to do it better in some circumstances wasn't completely outlandish.

> Don't try to be smarter than an over-clever C compiler that recognizes loops that implement block move or block clear and compiles them into machine idioms.
I agree. While I'm not very pro copy-left in general, I think for a social network it makes more sense. If there are concerns about privacy, and the solution is open source, then why leave the door open to a proprietary version that would completely defeat the purpose of this software? It's especially ridiculous to refer to enforcing the AGPL as "legally bludgeoning" someone, since the proprietary code derived from this would presumably like to "legally bludgeon" anyone who distributed or modified their source code.
At my day job we recently migrated away from XMPP for our internal chat rooms and IM (all on Slack now). XMPP worked fine, but, its one less service for us to maintain ourselves and everybody using a more consistent client by default instead of the mix of Adium / Trillian / Pidgin / etc has been nice from a feature standpoint. I think many other companies are in the same boat, based on Slack and Hipchat and the other chat-as-a-service providers having huge growth.
Oh god. Manpacks and The Dollar Shave Club are so hetero-white-male it hurts.
Here's an example of a JS application that dynamically animates DOM properties using requestAnimationFrame:

http://www.elevatesoft.com:8081/panels/panels.html

It's a little slow on mobile, but pretty good on desktops, and could probably use some optimizations. The DOM transitions are animated at the of end of each change management cycle for a given UI element. That allows for layout management that occurs independently of what is going on in the DOM, treating the DOM updates as only a "controlled repaint".
chocolatey seems fine if you are a package consumer, and never want to create/maintain your own packages.

if you are in a business/organisation that also wants to use the same thing to manage your own in-house package dependencies -- it doesn't seem like such an appropriate solution.
Read the slides he had a multitude of issues trying to copy the interfaces due to the tight integration of components.
That so mischaracterizes what I am saying that I don't believe you are interested in having a meaningful conversation. I'm done here.
Some Phish Myths Debunked
Its clear the credit card companies have real costs: fraud, credit risk & customer rewards. But does anyone know what those costs are relative to their 2% fee?

Clearly with a bitcoin solution, consumers will demand fraud protection and rewards and perhaps fraud will be less of an issue. But will the bitcoin companies still have to charge roughly 2% or will there be a race to the bottom on those fees?
It's a nice development feature to see console.log() output very close to when it happens. But I'd probably be able to live with a 1.0 second delay. I've worked on servers with a bigger delay. It's not as nice as a 0.1 second delay though.

They're probably trying to optimise for making developers happy.
Hnnh. I see that the Wayland folks have -perhaps inadvertently- subjected us to another round of "Do you mean Java-the-language, Java-the-VM, or Java-the-Runtime-Environment?" style confusion.

I've always heard things like "Wayland is going to be the replacement for X.org." and "Work on Wayland compositors is proceeding at pace.". Pardon my confusion.

To address my claim, do you know if there is currently a functional, non-toy Wayland compositor that doesn't plan to add a dependency on systemd?
Hello. I'm the author of Black Screen, and I'm upset this post has appeared on Hacker News. The terminal is at a very early stage; I don't even use it by myself. Although, it's nice to see that people show some interest.
Having worked with dc.js and D3 for interactive visualizations, I'm eager to try something else like this that could simplify charting. When recharting via an API, a lot of code needs to be written to handle it. With Vega though, at least from first impressions, it seems that all you need to do is pass a payload and you can immediately re-render. There's no need to run it through reducers or unpack and massage the data to get it to fit. I'm looking forward to trying it.
This is a very cool project...I haven't yet had a chance to use it in production, but the fact that Winston Chang and Hadley Wickham are using it to render interactive graphics via R...i.e. the ggvis [1] library, i.e. the interactive successor to ggplot2...makes me think that it must be a pretty solid library.

[1] https://github.com/rstudio/ggvis
What's more, I expect that his will forever be an incomplete implementation due to to undocumented or poorly-documented behaviors, edge-case or otherwise.
Check Out Life Spans Around the World – And Likely Years of Ill Health
It does indeed support ANSI codes. Not fully compatible with VT100 yet, but that's where I'm moving. Vim is functioning, but there are a lot of bugs.
https://dl.dropboxusercontent.com/spa/dlqheu39w0arg9q/xxy316...

The problem with terminfo is that not every tool relies on it. I've seen many examples (hello, exa), when the codes are hard-coded to operate with xterm-256. So, I decided to pretend to be an xterm.
Are We a Step Closer to Nuclear Fusion?
Hanlon's razor:
"Never attribute to malice that which is adequately explained by stupidity"
Hipchat uses XMPP so you answered the parent's question perfectly. Slack, I believe, created a custom protocol.
If you are careful, you can avoid that annoying problem altogether:

ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no $1
In case it helps, this is literary theory (aka "theory"), not philosophy. Although there is definitely communication between the two fields, they have their own traditions and their own vocabularies. One of the more obvious differences (and here I am comparing with analytic philosophy specifically) is that literary theory is often quite allusive where an otherwise equivalent philosophical argument would be explicit. I think the reason for the difference here is that in philosophy, the goal is clarification of the argument itself, while in literary theory (from my outside perspective I believe) the goal is a sustained state of aporia.

Note: I am by no means an expert in literary theory, but I thought I would give my reading of the sentence you quote.

Jameson is summarizing the previous few paragraphs of the review, where he describes the "generic problems of political, indeed utopian thought". The basic problem is this: how do you talk about major changes to the way society works? At the time period discussed, just as at any other, there were a lot of big ideas about how society ought to be organized, but they did not come with instructions for implementation. Wittenberg (according to Jameson) says that what Wells brought to the table was a literary device to allow an examination of the alternative organization of society without the need to focus on the transition between the current society and the imagined one, in a way dissolving the problem.

"Differentiation" refers to the notion that a society can be viewed in some ways as an organism which attempts to restructure itself to represent and respond to its surroundings.

So Jameson is just using a fancy but allusive way of restating and generalizing the claim that Wells was introducing a new way for society to talk about changes to itself.

I'm not saying I agree or disagree with this, and I definitely can't comment on whether Jameson is characterizing Wittenberg's book correctly, but I think that's what is being said.
CARP is sweet.

There's an (as far as I can tell) IPv4-only implementation for Linux in ucarp. [0] I use it for failover on my home LAN.

Question: Does OpenBSD CARP support "passwords" longer than 15 or 16 characters?

[0] http://www.pureftpd.org/project/ucarp
That's understandable. It's like with editors. There is vim and there is Intellij IDEA (sorry, JetBrains, for calling your child an editor). I want it to be smart.