skysight-inc/HackerNews huggingface dataset:
I would add that today many of us carry computers around in our pockets that can do all sorts of marvelous things and don't require any programming. The fact that an ever-increasing number of previously dumb devices contain computers doesn't imply the need for an ever-increasing number of programmers.

I have even less confidence in the job security of existing programmers who do scripting and/or programming that amounts to little more than patching existing modules together to get relatively simple effects. These jobs are just as susceptible to automation as those of assembly line workers. In software we're where the telephone industry was in the 1940's: there are 350,000 operators in the U.S. alone and the sky's the limit for good-paying jobs as telephone operators. We worry when a small percentage of these good operator jobs are outsourced to foreign workers. We should be worried about virtually all of them being eliminated by automated switches.
I got a lot out of interning (my background is physics) in high school and college--and in many cases, it was just learning what I didn't want to do.

Now, I work at a government lab--but I like to give back by serving as a mentor for internships. If anyone is interested (it may be a bit late), here is a link:
http://nist.gov/surfgaithersburg/

I have taken on students from CS, physics, math, EE, etc. One student is applying for grad. schools in robotics, another is looking to join a startup in Alaska (if anyone has any pointers for him, let me know--he was a math/CS major and really good--we did some work on using comet to do web-based data analysis and to display live data from instruments)--others have gone on to physics grad. school, and one is working in industry. So, some of my interns have also learned what they don't want to do ;> My projects often involve a combination of science and programming--but there are other groups that have been working on android apps, cryptography, etc.

Generally, my goal (and for my colleagues) isn't to crank work out of students, but rather to give them exposure to research. I try to think of projects that my interns can own--I usually have several possibilities and try to match the students with the project. For our particular program, we pay for housing and a stipend of $5500 for the summer (11 weeks).

For high school students in the area, we also have a summer internship program (which doesn't pay--sorry), but again, I try to provide the students with projects that they can own.

One final thing--we are limited to US citizens...
Sorry, I wasn't clear. This is a system I log into every day, and I don't want to maintain my own install of Python and related packages on it. It's too much overhead. I'd rather just use the default Python, even though it's old.
> the opportunity for confusion

I like this phrase. It makes me aware of bad practices. Studying anti-design patterns.
Cafeaulife.coffee
I think it'd be a lot better if you just killed submissions or banned sites outright. Burying submissions is as bad as if Google started manually tweaking search results. Google only deindexes webspam, they never manually adjust PageRank.

People already think HN is a YC propaganda machine, which long time users know isn't true, and this kind of thing just fuels the conspiracy theories.
Try R:

> s <- sample(c(3,3,3,3,3,4), size=100, replace=T)
[...] output elided
> table(s)
3 4
86 14

In order: this samples size times from a vector created by c with 5 3s and one 4 (you could also say c(rep(3,5), 4) with replacement and assigns the sample to a vector called s. table(s) produces counts of unique values.
What you are talking about is the "trusted computing base". Prove every part of the basesystem your running on, this of course is a HUGE task, but there are people thinking and working on this.

You might injoy this darpa project: http://www.crash-safe.org/papers

The propose there own hardware, OS, languages and compilers. The Hardware Design is by Tom Knight, one of the guys who designed the lisp machine.

Its quite an intressting read.
> It would have been nice to see a 1.0 release before this happened.

I dunno, a lot of big players are using node in production, and the back-compat's getting reasonable. Why does the number when you type -v matter?

> Without the originator in place perhaps a more formal product infrastructure can be put in place by Joyent. I'm thinking in particular about a structure for the documentation of primary third party modules...

I think that's the opposite of what Node needs. All of these third party modules came about precisely because there's no blockers or infrastructure to getting started with extending Node. The documentation for some of these modules could definitely be better, but I don't think having a central authority imposing upon the community is a good solution.

> I don't mean to be too critical but if users are going to Stackoverflow for answers then there is a problem.

The reason SO is so huge is precisely because users of pretty much anything will always have problems. Node is not, and never will be, an exception.
it's "super pretty"
I use mongodb with bit.ly's asyncmongo.

I honestly was a bit frustrated with it from a development standpoint because of all the callbacks. Just felt like spaghetti code. Since I have started applying tornado.gen its been pretty effective.

Asyncmongo may not fit all use cases though. As I understand it it can be difficult to deal with paging potentially based off of what I have read in the issues on the github repo. Also last I checked it doesn't support tailable cursors.

One thing to note is that with friendfeed they did synchronous requests to MySQL and their thought was you should make sure the requests responses are quick enough that blocking is not an issue. After working hard to do asynchronous requests I'm now of the opinion I should have taken their word for it.
Every time I start thinking to myself that these ideas are silly, I realize that I'm reading HN (or Reddit or Slashdot or...) instead of working, then I end up wanting something like this really bad. Scumbag brain...

Having it be a physical box is just plain cool.
I'm surprised this isn't more common, but at my apartment complex the machines are all payed by card. They give you a special card for the machines, and you can put money on it whenever you want. It was like this at college too, but with your student ID card. The machines at college also had slots for quarters, but I only ever used that when I forgot to put more money on my card.
Can we please stop titling postings like this? How about "An Alternative to the Python Subprocess Interface". Fixing something implies that it's broken or inadequate, and from my limited experience, Subprocess is already a major improvement over os.system. I'm not saying this idea doesn't have value, I'm saying that the way it's framed lacks the requisite humility it ought to.
The button and key switch are an interesting addition to this kind of thing. The general idea has been around for awhile, though. In fact, hackernews has it built in, with the "noprocrast" setting.
Vim isn't only about movement, it gives you some very efficient ways to actually manipulate text.

Take this example line of code:

#define test "Some magical string."

Say the cursor was at the beginning of the line and you wanted to completely change the contents of the string. In a regular editor, you might <ctrl><Right Arrow> a few times and <Del> a bunch to remove everything in the string before you start typing the new one. In vim, you would simply:

f"ci"

And you'd be ready to start typing the new string. Or if you wanted to capitalize 'test':

WgUe

It's difficult to understand the power of modal editing until you experience it
As a Yahoo contractor, I did this daily. Filled in a wiki page which was emailed to the project manager at a set time. I loved it, basically a public TODO list that makes your workload clearly visible.

The manager could see you were keeping productive, and you could push back on extra work if you were already 100% busy.
Well, not necessarily. We went from 20MB HDs in the early '90s to 4GB RAM now, with not much change to most things.

Busses et al would be redesigned, sure, but contemporary databases, software, virtual memory techniques etc, not so much. You can just tune their "magic numbers" accordingly.
I was trying to say what if this person, who happens to be older, get's fired for "not fitting in with the company culture". What is there to stop the person from saying "My age is the reason I didn't fit in and that's why they fired me".
Because mozilla has given it some thought https://wiki.mozilla.org/Gecko:FullScreenAPI
I will second this. I originally deployed chatfor.us with tornadio and then moved to sockjs-tornado and found both extremely easy to implement. I use ha proxy for that app. Unscatter.com doesn't use web sockets and I use nginx as the proxy load balancer for it.
Bitmap Marking GC for Ruby Improves Memory Usage
I suppose fitting a decaying function would be better than flat-out ARPU?

Or even a moving weighted average?
Macworld|iWorld 2012 completes post-Apple transition to "iFan event"
Lego ZX81
Jailbreaking the Internet: For freedom's sake
You too might be intressted in the link I posted above. Its about building safe hardware (and software), but I don't think its completly safe to anykind of random bit-flips.
MPAA's number two admits industry "not comfortable" with the Internet
> Honest question: have you actually tried working with modules and dependencies in Node? It's better now, but it's still not pleasant and often installing a module starts with debugging.

Yes. And you're right, but then it's not often that much better than other languages. Personally I'd rather they get the core language finished first (though their concept of "finished" and mine seem to differ).

> And what's the core missing, would you say? Personally, I thought the cluster stuff was already getting heavy.

There's no way to lock a file (making file writes completely fragile). There's no way to seek() in a file. There's no way to open a file with O_EXCL set (meaning lockless file writing is impossible). There's no temp file functionality in core, and without O_EXCL the solutions available for this on npm are utterly broken. There's still major bugs in the Crypto routines (they take Strings instead of Buffers in various places)... Honestly I could go on.
Churn also goes down in retail. If you look at retail cohort analysis, you will say that 10% of users are active three months after their first transaction, and then 5% are still active six months later. So you lose 90% in the first three months, and then only 50% in the next three months.

This is particularly important in the RLV calculations, as assuming a constant churn rate will undervalue your existing customer base.

Sounds like you are taking the right factors into account. What sort of accuracy are you getting with your calculations?
"A view's events hash may now also contain direct function values as well as the string names of existing view methods."

Nice! I've always been wondering why I couldn't pass a function there.

Thanks
NEA Creates Harvard Seed Fund To Back Students' Big Ideas
This guide about using Pig with Mongo goes well with this post: http://datasyndrome.com/post/14631249157/mongodb-is-web-scal...
Downvotes, really? I don't hate on Node - I develop a very popular open source server in it. But it has some fundamental weaknesses in terms of how finished it is, and most of the core developers don't think those missing things need adding before calling it 1.0 and the API gets set in stone.
Isaac is awesome. I have no fear about the continual deft shepherding of Node.
And just like that, we're on the cusp of reinventing batch scheduling! :D

In all seriousness though, I think that a look at OS scheduling would provide useful inspiration for test scheduling.
Add this for an idea: "Like Apple but 5 years ahead."
Pretzel
Getting started with a Mocking Framework
While this may be a nice idea, I don't know if it improves the situation. Improving the situation means tackling the entire problem, top-to-bottom.

http://thread.gmane.org/gmane.comp.version-control.git/18582...

http://thread.gmane.org/gmane.comp.version-control.git/17506...

Quoting Junio, the git maintainer:

"""Rc or not rc, just repeating a fuzzy and uncooked "idea" around phoney ref-looking names that will end up confusing the users, and selling that as if it is a logical conclusion to "we want to give an easier to understand UI", without presenting a solid user experience design that is
convincing enough that the "idea" will reduce confusion will not get us anywhere"""

Here's the first example from the blog post:

# Why not replace things like: git reset HEAD -- file with:
> git unstage

What the author fails to realize is that you could have just said, "git reset file", which makes this `unstage` example much less convincing.

We actually do not recommend `git reset --hard` very often these days. `git checkout -f` is nicer alternative and is semantically related to `git checkout file`.

The 'stage' alias that adds and also understands deletions is a nice addition. It can be implemented as an alias. `git config --global alias.stage 'add -u --'`.
Codecademy Becomes A Platform: Now Anyone Can Write Programming Tutorials
Super. My gentoo boxes are 1.8.2, and are broken as expected.

$ ln -s /usr/bin/sudo ./%s
$ ./%s -D9
[some debug output with garbage]
Segmentation fault
$

Bug is here:

https://bugs.gentoo.org/show_bug.cgi?id=401533

Looks like it's patched on x86/amd64 already.

OpenIndiana looks unaffected. It's using 1.7.4p4.
The release notes format is quite "pretty" but very simplified and I can't seem to find a more detailed version?
Yeah, that's what I'm doing now. Sorry, I realize I was being silly; the reason I needed this behavior is that I've overridden Backbone.sync to sync to the server in batches (every six seconds), rather than send off a new sync every time there's a change. I'd forgotten that I was doing something nonstandard there...
Elsevier apparently looking for a new icon
I guess all the fees that they charge can't cover the cost of an in-house designer.
down from what?
You'd want to look at where the spammers and malware pushers host or are located, mostly china, russia and a few eastern european countries. Of course you're trading one set of problems for another: depending on the location you'll likely lack most IP protection, be subject to constant surveillance, extortion and organized crime.
Being open source doesn't change that. Lots of open source project have gone stale or abandoned after one or more key developers lost interest.

Unless people are going to step up and take the lead, being open source means nothing. If you want some assurance in this area it should be:

1) project is open source
AND
2) project has a HUGE community
AND
3) there are > 2-3 key developers

(I added (2) because even hugely successful open source projects where abandoned and left in the cold when most members of the core team decided to try something different. Like, how, D (the language) was abandoned for D2 (the second, different implementation).
It looks like a nice service but you really need a privacy policy. What data are you storing, what are you going to do with that data and what can I do to opt-in or out?

I can't imagine many organizations getting clearance to use this without that.
What kinds of negative opinions about Microsoft and Open Source are really outdated?
Apparently with no scripting, the middle of the page does not load.
Ask HN: Website management for non-web startups
I know quite a lot of people here are working on products where the company/product web site is of crucial importance. Often, the web site is the product.

But there are some of us who are trying to bring up non-web businesses. Our core business is embedded systems development. Our web page, although important, is not our core business. So we would like to spend minimal resources for updates/maintenance.

So far, we have been using Wordpress with a custom designed theme. The administration interface is great, it takes a few minutes to add a new post, etc. We were also relying on some plugins, most importantly WPML, for multi-language support, and some less important ones such as CAPTCHA tool, contact forms, etc.

Lately, we are getting frustrated with our setup. Every once in a while, there's an update to the core and when this update is pushed because of a security vulnerability, we would like to update our installation immediately. But then there is the issue of plugin compatibility. By using plugins, (either public/free ones or commercial ones), we essentially tie ourselves to a certain Wordpress revision, since plugins never update as quickly as the core and often they are incompatible with the latest Wordpress release.

Our experience has been with Wordpress, but we think this problem might be common with other CMSs. I'm not trying to make Wordpress look bad here, I think Wordpress is great and served us well so far, but it feels like we need to move on.

So the question to fellow HNers is: What solution you recommend for maintaining a web site to non-web startups? After our experience with Wordpress, we are even considering writing all our pages in plain HTML!

(Some stats/info if it helps: Our site has approximately 300 pages so far. We are adding about 6-7 per month. Soon we'll have a shopping cart and order processing system up. Traffic is not a concern, we simply don't have and probably never have a lot of traffic)
Cross the dating game with the recruitment game
Sign-up now for our beta, launching soon at http://www.tapajob.com, follow us on Twitter @tapajob and on Facebook
I will not be, its definitely overvalued in my opinion and I'd rather not risk selling too late in the big stock dump.

Overvaluing in this case is a no brainer, everyone knows what Facebook is and there will be buyers regardless of what price is set, in this case all the investors, angels, VC's etc can cash out on their investments and lock in profits. Later they can re-buy when the bubble pops if they have long term interests...
Yes. I'm not disputing the usefulness of shared hosting, in fact I called out the fact that it had originally been omitted from the list.
HTML5 multitrack mixing in Chrome
The company with the most developers attending Clojure/West is... Apple
The mercedes benz hunter x6
> MegaUpload links were not public unless the uploader published them somewhere.

They were publically accessible (as in no authentication was required) regardless of how you want to spin it. But if that's not good enough for you...

It's my understanding that megaupload (and it's other sites) links were of the form:
http://www.megaupload.com/?d=XXXXXXXX

I could be wrong, but the links I've found so far all have 8 characters.

Notice it's a somewhat easily searchable space. You can enumerate all links starting from point1 to point2 (I think they assigned sequential numbers so no need to search the entire space).

Hence the slew of public MegaUpload-search websites that you could go to and search for every file in the index.

The point of the response was that if you needed private backups of your Amazon MP3 you should use a service that is a true lockerbox, and not a pseudo sharing site thats designed for sharing content. Otherwise, you need to take the blame for 1) losing access to your backups, and 2) knowingly sharing it even if you did not give the link out.

A lockerbox service that requires some authentication, or a very large GUID type link that can't be enumerated.

MegaUpload was designed for sharing.

The case of someone losing their legitimate Amazon MP3 upload is an edge-case that inconveniences one person, but takes down the sharing of hundreds, or thousands, of copies of illegitimate copies.
We're going to explore some of those approaches in upcoming posts!
Even from a practical perspective I would respectfully disagree with you. I think someone with a lifetime of "traditional" programming experience would have a much easier time getting up to speed with a modern programming language than someone starting with a blank slate. Of course, I am assuming that by "blank slate" you mean: no experience at all.
It is really easy to write bad tests. That doesn't mean that you shouldn't write any, but just "writing good tests" can be really hard.
No one wins on average?
You say he doesn't fit into the culture, and you leave out the other stuff about having ideas too old to matter.

Google screwed up here, and I don't believe for a second that the plaintiff would object if they admitted they did and apologized for it.

And if they have a sense that the PR is working against them on this, perhaps they will do exactly that.
What a nice surprise! I started using Backbone this week, and this fixes six real issues I had with it:

- collection.fetch() now correctly calls model.parse() (I patched Backbone.Collection.prototype.parse(), but their fix is nicer)

- 'add' and 'remove' events now include the index (I had to work it out from scratch with sortedIndex())

- event 'bind' is now called 'on' (sensible as _.bind is already used for partial application)

- confusion over this.el and $()-wrapping is now cleared up

- events hash can now include functions (I like to avoid reflection where possible - even in JS)

- collection.create() now fires 'add' before the server replies (this makes writing a responsive UI much easier)

The last one is quite a significant change! Luckily my app is easy to fix, as I've only spent a few days on it.
A better Photoshop grid for responsive web design
I hate the way idiots refer to you as 'my team' or worse, 'your team'.
Exactly. If you look at the sources, you'll see that the arguments are all joined into a single string with spaces, then split back into separate words using shlex.split().

So cat("filename with spaces in it") will fail, but cat("'filename with spaces in it') ought to succeed.

It's a neat experiment, but using this module in production would not be a great idea.
They Came, they saw, they conquered - VeloCity Venture Fund Winners
Hi! Author here, there are a few ways to use it, including your suggestion (did you make your suggestion up or were you pulling from the docs?):

# magical, designed only for single shell scripts
from pbs import *
ffmpeg()

# less magical
from pbs import ffmpeg
ffmpeg()

# or
import pbs
pbs.ffmpeg()

# no magic
import pbs
ffmpeg = pbs.Command(pbs.which("ffmpeg")) # command takes full path
ffmpeg()

I tried to cover the main use cases adequately. My goal was to ease a pain point myself and others have experienced, that other popular packages don't address well unfortunately.

If it's helped anyone like it's helped me, I'm happy and glad to share!
Two Things
While you may not think much of the distinction, it wasn't the FBI that decided to shut them down - it was the judge that decided there was probable cause and thus signed the seizure warrants. So the judicial branch made the decision - this is the same branch that can imprison you before you're found guilty if they believe you're dangerous or a flight risk.

If you allowed all organizations to continue to operate until they were proven to be breaking the law you'd have something very closely resembling anarchy. Imagine if ever pump and dump boiler room operation had 1-3 years advanced notice before being subject to asset seizures.
If there was a single incident in 2004, then there isn't a problem. But I'd very surprised if that were true.
The plaintiff in this case was not a hardware engineer. He was an award-winning software developer.
Some day, the new <bdi> tag is going to save me a huge headache. Hear this prophecy, and know it to be true: weird hairy Unicode problems always happen, though usually not immediately.