skysight-inc/HackerNews huggingface dataset:
I've done quite a bit of work with dictionaries going as far back as 8-bit machines with tight memory constraints. Bear with me here as it will get interesting.

A Bloom filter is a great data structure but probably not the best choice for this problem. It's not as memory efficient as you think.

Here's why: Think of a Bloom filter as a collection of hash values where each individual hash value is expanded by 44%. The cost of maintaining the same false positive rate of an explicit log2(n) hash is to use 1.44log2(n) bits (see http://en.wikipedia.org/wiki/Bloom_filter for more detail.) So, if you want a false positive rate of 1 in 64k you could store a 16-bit hash in an array or a 23-bit hash in a Bloom filter. That's a significant tax to pay when memory is tight.

In this case it's better to keep a bit array of explicit hashes than to use a Bloom filter.

An array of hashes gives you some options to make it smaller:

1. Sort the array by hash value and store only the differences using a delta coding scheme. The downside is you have to search the entire array (or maintain some indexes into it) to look up a single word.

2. Break the array up into sub-arrays where each sub-array is chosen so the first N bits of the hash are the same (and discarded.) Each sub-array uses a smaller hash value and can still be binary searched.

Of course, strip prefixes and suffixes from the words so the number of hashes that must be stored is reduced.

1.5 bytes per word is easy and with some work you can approach one byte per word with a low error rate.

If you're allowed to do off-line preprocessing on the word list you can do better.

Look up the history of Doug McIlroy's Unix spell checker. He got 75,000 words to fit in about 52k (going from memory here and my copy of Bentley's "Programming Pearls" is at home.) McIlroy traded away random access and had a fairly high error rate to get that much compression. Essentially, what he did was to create a large 1-bit Bloom filter and delta-encoded the differences between set bits (similar to option #1 above.)

If you want to maintain fast random access for individual words you can do this with a Directed Acyclic Word Graph (DAWG). A simple DAWG with fixed node sizes and no stemming of any kind will get two bytes per word on English. Add variable node sizes, stemming and a few other tricks and you can have fast lookup with a near-zero error rate at a cost of about one byte per word.
This is hilarious! Thanks for putting it up, I'm laughing my arse off at what it's generating!
From the News Guidelines ...

On-Topic: Anything that good hackers would find interesting. That includes more than hacking and startups. If you had to reduce it to a sentence, the answer might be: anything that gratifies one's intellectual curiosity.

In response to your comment, you might want to see this in the News Guidelines ...

http://ycombinator.com/newsguidelines.html

Please don't submit comments complaining that a submission is inappropriate for the site. If you think something is spam or offtopic, flag it by going to its page and clicking on the "flag" link. (Not all users will see this; there is a karma threshold.) If you flag something, please don't also comment that you did.
So giving suicidal people lots of opportunities to harm themselves? Something doesn't add up there.
It's indeed because they're flush on fill.

Games that don't optimize and use more data on the wire actually feel more responsive than games that are wasteful with data.
I wrote something longer, but I'll condense it to: I'd be very cautious of moving from development into a QC/testing role. Those roles are often treated as second-class citizens within a development environment. And even when development treats them well and allows them to really do their job, more general and senior management still sees them as second class citizens.

I'd ask for a detailed description of the types of work you will be doing, and seek your own self-assurance (whatever they tell you) that your development skills won't atrophy.

Moving from a QC/testing role to development can also be a hard sell. Don't get stuck/typecast.

I suspect that, the larger the organization, the more true a lot of this is. For one thing, QC/testing changes from being a few individual roles to its own entity, depending on the organizational structure.

If you can, spend some time networking with people in and about this kind of role. If you can make some safe connections to people at the potential employer, all the better. But also try to ascertain whether the move will have any negative career implications. (I'm just one introverted bloke, and my experience is likely biased.)
how would you get the geocoordinates of hacker news users? I don't see it in the about profile, do you mean asking them for it?
Been a pretty big fan of Things for a while. I have one database that sits on Dropbox and automatically syncs between two Macs. Would like to see better mobile syncing (would rather have desktop database replace what's on an iOS device instead of merging the two). All in all, though, it's a great app with a polished interface.
Not when you are a certificate authority that is already trusted by the browsers.

Modern browsers today accept a large number of "self-signed" certificates. The key is that the signer paid the browser makers money for that privilege. SSL assumes that those companies are all trustworthy, but is any company trustworthy when the government shows up with guns and asks for the master password to your key signer?

If no, then SSL fails.

Let me summarize because you seem to be misunderstanding: a lot of untrustworthy parties are trusted by browsers. This makes SSL somewhat useful against having a coffee shop steal your Facebook password, but almost certainly useless against having a government steal your password.
First of all, let me say this is a significantly better question than many I've seen. However, It disturbs me when someone is interviewing me and they are looking for a particular answer and they consider everything else wrong. Even when I find more efficient answers, if it's not theirs, it's wrong.

Think about it like those little kid riddles: "A man is found dead with a noose around his neck and a puddle of water at his feet. How is it he was killed?" Put on a stool and the stool was removed? Then add the restriction "There are no stools." He was lifted with the rope? "The rope was tied to a bar on the ceiling and couldn't be raised higher." Raised in the air by some strong people and then let hang? "No one raised him from the air." You can make guesses all day long and I can make up excuses about why you're wrong until you finally guess what I wanted you to guess -- that he was standing on a block of ice.

More specific to your question: when I read it the first thing that came to mind was just to have an array of booleans and for each word in the table set H(word) to true and then when looking up a word check if H(word) is true. I don't know what bloom filters are, so I'm not saying this answer is better than them -- but after I suggest that instead of imposing some other restriction, ask me to think about what is wrong with my answer. Talk to me about the false-positives/false-negatives [or lack thereof]. Talk to me about what hash function I could use. Or about why I picked that way. Or what problems could happen if the hash function wasn't perfectly uniform.
Where are the openings for 2?
There is a valuable argument to rooming together (though that's the case for a lot of people in New York too). The difference is that in New York, you may also be more likely to room with someone who's not a geek. And if you don't get out (though you're bound to if for no other reason than to go and get basic substenance like food), that person could bring some influences that may help you code something new from a social standpoint.

And while it's true that Williamsburg isn't very appealing to geeks, I can warrant that other parts of town are (eg. DUMBO)
> Maple says nlognlogn, which could solve NP party?

And you are all invited.
So you're saying this interview question is a probabilistic (with the potential for false positives) tool for detecting membership in the set of people who are equipped to understand the concept? Sounds like a Bloom Filter to me.
Best economic use you ask? Well the whole point of the Economist article is that in most academic fields there's an incredible oversupply of PhDs. What's the use of a 1,000 houses in a town of 100 people?

Here's the source of the problem as I see it. The PhDs I know are largely risk intolerant and stay in academia because it's a comfortable way to pursue their passion. They're used to asking for permission and people evaluating them along very specific guidelines. When they enter the real or corporate world, they're used to this attitude of asking for permission to do things. They expect universities or corporations to find a use for their talent instead of architecting one themselves.

So what is their economic use? They need to figure that out. One solution would be to design a system that prepares them better for a world that's a lot more dynamic than their specific area of expertise might be.
With a TiVo (as with an iPod, a VCR, a PlayStation) you are either pretty much happy with what it does or royally screwed (with non-standard screws).

If you are happy with your TiVo, then good for you. If you are not, you cannot bend it to your will. It would be much better if users could do that, but, unfortunately, we are not that lucky.

You can always sell your TiVo and build your own DVR.
I believe it is David Hilbert you are thinking of, not Bertrand Russell. He found that Euclid's traditional 5 axioms needed to be 20. See http://en.wikipedia.org/wiki/Hilbert%27s_axioms for more.
All 637,000 followers of Wikileaks Subject to US Government Subpoena
In your reality, do all smartphones have touch interfaces? That's pretty much the definition of a revolution: when you can clearly point to a before and an after.
Hilarious 1-star app reviews
Write novels or do something related to history?
Toshiba Liberto W100 Dual Display Laptop Features | TECHGADGETSITE
Instead of making it probabilistic, I would rather add more memory to the system. The idea of making it probabilistic seems to me to be entirely for leading the interview candidate to the solution you have in mind.
I noticed http://news.ycombinator.com/submit said submit on the button too.
4) I'm sorry, but this has been my impression as a toolchain integrator and distribution vendor. LLVM, which only even supports two platforms (although having seriously broken semi-support for ARM) is often stated to be "catching up" in correctness to gcc, but is not there yet. The opinion that LLVM is somehow epic is something you only hear from incredibly pro-Apple developers. I mean, even Apple's port of gcc explicitly chooses incorrect results occasionally for performance (an interesting specific case being ___divdc3).

In order to keep their user-base on Actionscript/Flash, Adobe was banking on LLVM to get Flash to work on iOS devices before they were legally restricted from doing so. With the lifting of the ban, Adobe can now deploy Flash-based code on iOS devices[1]. LLVM is also used in many other commercial software project, so your argument doesn't hold.

[1] http://www.adobe.com/devnet/logged_in/abansod_iphone.html
You can simulate <pre>

by
indenting
four spaces in
Direct link to subpoena:

http://www.salon.com/news/opinion/glenn_greenwald/2011/01/07...
How is this different from Cygwin? Cygwin's software repositories are free so it seems superior, at least in that respect. Everything else the article describes sounds exactly like Cygwin.
Think tanks, if the degree is at all applicable.
Agreed. It was something the iOS app store needed as well. Obviously it's in the works, I'm sure it won't be too long.
How To Stop Your Computer From Freezing
"I think the problem arises for PhDs when they refuse to leave their narrow field of specialty"

Amen, we have a friend who spent 12 years getting a PhD in Russian History only to get out and face no job prospects. Depressingly, every year he gets ready for the one History Job fair that happens in January, flies down there and presents himself at interviews. 3 years later he still actually believes that he has a chance at getting a job after being out of the game a while. He has no sense to pivot, no sense that maybe he needs to find a new calling in life and utilize his skills in another fashion.

Contrastingly, we knew another PhD in Chemistry from Cornell. He got out and hated academia, but still loved teaching. He decided to teach chem and physics at some fancy prep high school and is doing well for himself.

To me these people need to understand that if they can't find their place quickly to scale that pyramid need to find a more general use for their skills.

There's perseverance and then theres a false sense of hope.
Sure, when everybody has connections of 20-40ms this prediction is not much of a feature. But back in the days when everybody were on modem connections with 120ms latency, this was important. It means you don't have to physically aim 'in front' of where the target is moving towards, this may not be an issue with automatic or AOE weapons, but if you're trying to use a sniper rifle this can be pretty hard.
Anything with that many spelling/grammar mistakes in the first paragraphs can't be all that thoughtful...
Ion's Book Saver personal scanner converts your books to digital
I beg to differ on your point. I honestly believe that what made Zuckerberg successful was his "exposure" to the social components. Wherever you are, if you're a geek, you're going to be a geek. But if you're in a city, you, as a programmer, will be impacted in small ways, allowing you to create apps that are more "social".

The article covers a number of aspects and business is one. Maybe it ought to be clearer on the point of techies. My view is that techies are still essential to building solid apps but as we move in the "social" phase of the web, pure tech is not the only ingredient. There needs to be more in terms of user experience and in terms of understanding what social can be (as far as its potential). In order to do so, you need to be proactive about understanding the "normals". And opportunities to do so are higher in New York than they are in the valley.

If you're surrounded by hackers, you will get a good understanding of hacker culture. But it will make it that much more difficult to understand what a secretary or banker or model are interested in. So it makes it that much more difficult to create products that are appealing outside of hacker circles.

In New York, there isn't a choice in terms of learning about those other groups or not. We're all on top of each other so something as common as a subway ride creates some of that exposure.

The fallacy I'm trying to break through is that New York doesn't have hackers. It does and the number of hackers is growing. And that's the reason for the warning I'm sounding (because end of day, the article is not a triumphant call but rather a call for both sides to bring their best game).

NYC has a lot to learn from the valley in terms of fostering an engineering culture (its own engineering culture is just nascent) but the valley has a lot to learn about sectors outside of tech.

I respectfully disagree that the next Google or Facebook will come from a top tech school. In fact, I'd warrant that the founders of that next big deal company are currently at work in some place none of us could imagine (like who would think that a kid from the midwest would come up with a successful web browser. Well, ask Marc Andreesen and I'm sure he'd be willing to make that bet :) ). The question is whether those kids will move to NYC or the valley and I'd venture that, in the future, NYC may be more attractive than the valley.
Bright year for career planning BUT..
Try http://www.teamlab.com/Features.aspx

They seem like they're as high quality and feature rich as base camp, but free.
Um...I guess "decent" is subjective :)
There was something cool you could do in older version of counterstrike, you can tweak the ex_interp parameter from 1.0 to something lower like 0.5, in this way you have to aim 'behind' where the person was and hit. The advantage of this is with sniper rifles, when someone moving through a narrow gap the time is so short that your response time is not fast enough to click the instant they move through. But with ex_interp you can fire after they've gone through and still hit, not so fun for the target though, they get to safety then die :D
It certainly would be incumbent upon Apple to do it. It's just early days for the Mac App Store. Next 6 months should be interesting!
I think CS is somewhat unique. Most of my professors got their MS, worked for a decade or two, then went back for their PhD and taught from there. In a way, it's great: most of my professors have fairly extensive real-world experience. Last semester my SENG prof was sick, so he got one of the CS profs to come in and talk to us about industry for a day. Here's a guy who was a software architect for some fairly large companies talking about his fuckups, and the stupid things he learned in school that he had to unlearn in the real world. I find having that kind of experience on tap to be eminently useful.
Kinect: Star Wars Trailer
it's amazing how many project management tools allow you to rate your priorities...but what does that really accomplish when you end up with 90% high priorities?

you need to go a step further to differentiate the priorities. that's where listing (AKA ranking) can really come in handy.

we actually took a hard look at leveraging our ranking software from http://gorankem.com towards a PM play...but the space is just too saturated. one of the existing players needs to add a feature to prioritize within the (high) priorities

anybody know of a PM tool that may do the job?
PowerPoint powers more than 95% Slide decks
Wow Egg Directory | Directory Daily
Do Programmers Need Seat Belts? (1996)
This approach is higher performance, officially supported by Microsoft and comes with all Ultimate Vista/7 installations. Cygwin runs as a user-mode app that emulates the POSIX environment using the underlying Windows APIs. SUA is an integrated subsystem that is on the same level in the kernel stack as the Windows subsystem (that's being used by every Windows app out there). By being so close to the kernel, SUA is able to use undocumented APIs within the kernel to achieve greater performance than Cygwin.
Dupe.
http://news.ycombinator.com/item?id=2081211
I think I see where we're misunderstanding each other. The freedoms the GPL ensures aren't for the developer of the software; but, for the users of that software.

The point is that, from the perspective of your users-- your "audience"-- they're running software somewhere out in the Internet. Where the GPL ensured (amongst other things) that they'd have access to the source of their local programs, the AGPL ensures they have access to the source of their remote programs.

From your perspective, this decreases your freedom as a developer because you're required to distribute your source code to your "audience." But, you have a simple recourse: don't use the AGPL!

wrt. the clickwrap EULA, I think the GPL and its variants have always been a set of terms and conditions. I don't know Stallman's arguments or what you're railing against; but, I will guess that his problem with clickwrap EULAs were that they limited how a user could personally use the software... or, worse, made other at-best tangentially related demands of them. The GPL and its variants do not limit your personal use, but rather constrain your ability to re-distribute the software.

wrt. the AGPL making users any less beholden due to the data silo effect, my position is that a program isn't intrinsically useless without a user's data... or even the developer's own custom data.

Consider a site like Facebook, where the primary value is in its network effects: anyone could open a competitor site that had feature parity. If the original site (Facebook) changed its policies in a way the userbase disliked, they could move to a competitor knowing the functionality would be the same.

Or, consider the GPL release of id software's old games. None of the assets are free. However, that didn't stop a huge ecosystem from springing up. Derivatives, alternate games, and the many thousands of people gaining an understanding of how to make a Real Game.
Anybody got any good sources of material to read?
Well, maybe I was wrong after all:

http://www.theatlantic.com/business/archive/2011/01/you-know...
Aren't large portions of Webkit under the LGPL?

Though, perhaps the differences in innovation in the BSD kernels vs. Linux is demonstrative?
People who think Facebook has peaked or would want Facebook to peak are retards

That's like saying you want the universe to go back in technological physics. The social graph must not peak and it's interactions on it. Virality on the social graph and on the internet from news providers must not peak. All 10 billion must be on the social graph and accessible. It's very simple because the internet without the social graph is just a more boring internet
He told me to stop insulting Lulu—which I wasn't even doing

Yeah, that bit of cognitive dissonance stood out to me as well.
Am I missing something? It seems like they're asking for specific users' accounts. I don't see where they are requesting 637,000 users' information.
Show HN: My Weekend Project - Multiplayer TicTacToe
Link: http://xoxo.cm

The idea here was to build a multiplayer game with the lowest possible barrier to entry to get started. That is, no registration, no game setup, as few steps as possible to actually start playing.

There's not much substance here right now and there's still a few bugs that need to be hammered out. I'm also thinking of expanding on the idea with some other simple games down the road. Any feedback or suggestions on the concept in general would be much appreciated.
This is the first thing that came to mind.
Clickable: http://xoxo.cm
OT: Out of curiosity / my own interest, does your Comcast business class plan have volume (aka "bandwidth) caps?
Is it truly so black and white that one might say those in the humanities do not go into "industrial jobs"?
The LGPL is much different than the GPL.
Comparing electricity to a gallon of gasoline
One thing I like about this solution is that you can easily trade memory for accuracy by tweaking the hashcode space.
> It seems to me that the GPL is used more as a weapon than a shield.

I think that's because it's news when it's a weapon but when it's a shield it just works. The majority of developers aren't trying to subvert the license; they work within the terms. You only hear about the license when somebody has broken the terms.
In general, Westerners don't colloquially classify rough ethnic groups by strict continent. Asian means East Asian and South East Asian (people with slanty eyes)

India, Pakistan, Sri Lanka etc. possess "Indians" or national identity (Pakistani, etc.)

Iran, Iraq, Jordan, etc. possess "Middle-Easterners"

Other areas are usually called by national affiliation (Kyrgistan, Tajikistan, etc.) are currently undecided and usually just called by national identity.

(I always found it unusual that folks from India wanted to be identified as "Asian" when that's not the colloquial meaning of the classification).

Oh...and Siberians are Russian.
Random Matchup mode would be fantastic.. no one is online right now that I'd like to play with.
always
wondered
how that worked
> yeah, but being on probation or parole means you're almost in jail, doesn't it

No.

Note that you can end up on probation without ever being in jail.
Cool, who wants to play :)

http://xoxo.cm/7fe54
My 1993 Saturn SC2 is my favorite of the cars I've owned. (Granted I'm not much of a car person.) I was a bit sad at their passing, though I gather they were no longer the company they were founded as when they finally hung it up.
whats your share link?
TeamBox

I just love it's simplicity.