skysight-inc/HackerNews huggingface dataset:
Laziness. It, like all other non-public services, should be hidden behind a VPN that reduces the attack surface to the absolute minimum.

Ideally you should use something like OpenVPN's PSK HMAC support, which reduces the total code surface visible to external attackers to only the HMAC validation code paths. If the HMAC does not validate, OpenVPN doesn't even try to interpret the contents of the packet (including authentication/authorization).

Couple that with setuid+chroot of the OpenVPN server, and you've further reduced your attack surface.

If you're actually serious about running a larger secure infrastructure, you also shouldn't be using passwords at all. Your servers shouldn't support them, and password authentication should be disabled in the SSHd configuration. You should use SSH keys.

You also shouldn't be sending plaintext passwords to random servers, and you should prefer alternatives such as x509 auth to the VPN, coupled with SSH key auth (or kerberos) to the actual servers.

If you can't use x509/pke/kerberos for VPN/server authentication, then you should restrict the surface of the machines that handle plaintext passwords to just the VPN and web SSO hosts, rather than exposing user passwords to every single server in your deployment.

The goal is to compartmentalize access to sensitive data, such that you 1) reduce the overall attack surface (including by reducing the visibility of centralized hosts managing sensitive data) and 2) reduce the damage that can be done by compromising a hosts, especially hosts that are visible via the internet (and similarly in a large enterprise, visible company-wide).
More reasons, and ones that are even more clear-cut. But the silly "I'd rather die young and happy than old and miserable" argument will never die.
Indeed! We've rarely had a confused customer thankfully.
clickable link for the plan : http://i.imgur.com/nHFoQip.png
I think you need to consider more options, most likely some further outside of your comfort zone.

Are you madly in love with this woman? If so, be willing to consider leaving your job, and going to live in another country where you can both get residency status.

It may also be an option for you two to spend blocks of time in each others countries so that you stay under the visa-free travel requirements. For example, my girlfriend is from a Schengen country and I'm a California native. We can both spend 90 days out of every 6 months in each others' country, and do a bit of travel together in other countries. This has enabled us to let the relationship progress at a natural pace, and not rush into marriage for visa/citizenship reasons. I think that's really important. Some years ago I was dating a woman from New Caledonia whose ability to stay legally in the US was approaching a deadline. She suggested marriage as a workaround, but it really made me doubt the sincerity of her intentions.

If you're totally and completely in love with this woman, then you'll find a way. Asking around on HN can be one part of that, but more likely, you'll need to step your game up, hustle, maybe work some extra projects to cover travel/legal expenses, and possibly make some real sacrifices. If you love her with a real fire inside you, then the most important thing to both of you will be that you two are together and you'll find/make a way.

Sounds like it's time for you to go hard in the paint. Good luck.
Your government (I'm assuming you live in the USA || Canada) supports "Houses of Worship" through tax exemptions. I'd feel like I was finally getting some value out of a church if a conference was held there.

edit: Added Canada; we do the same.
If it's a compass, then why is it 20 degrees off?
This is definitely not news, and it's a general interest article that's not particularly related to hackers in any way.
Top spot on Hacker News right now.

Admins, the community is telling you something: this site has become a Reddit clone with a more highbrow tone.

Edit: if you downvote, please reply too.
Heh well you know actually I do have PMS! I'm due to start maybe tomorrow or Tuesday. Wow and to think my epiphany was just hormones. Man those things are useful!
"Unable to display content. Adobe Flash is required."

I had a small chuckle--I hope that's not the future of signup pages.

Here's a description of the video, for those on their phones or flash-impaired devices:

When requiring an account, have only two fields, username and password. Auto-generate both randomly and show them both in plain text. If the user changes the password, save that -- it's their new password. They can enter it on another device. Likewise, if they change the username, save that change.

If they change both username and password to an existing and valid combo, consider that switching users, and I suppose you perform a logout and log in with the new credentials. (This is where it gets a little muddy, in my opinion.)
The Rocket War in Village Must See
Is this test pattern in use in other known research?

Most of the test patterns I've encountered in using 'OpenCV' [1], 'laser scanning'[2], and 'structured light scanning' [3] have used equal sized geometric shapes. Not increasing in scale, so maybe that's useful.

[1] http://graphics.stanford.edu/~vaibhav/projects/calib-cs205/c...

[2] http://www.david-laserscanner.com/wiki/_media/user_manual/sc...

http://www.sciencedirect.com/science/article/pii/S0143816607...

[3] http://opticalengineering.spiedigitallibrary.org/data/Journa...
Once you declutter, I really suggest painting if you are allowed to. It is really nice to have painted rooms, and you can take the small "apparent size" hit
There's a really pernicious attitude of permissiveness, even encouragement, towards theft and evasion of payment for digital goods in many of pockets of online culture. It is disheartening.
A colleague of mine worked in the fab, (South building on the Richardson campus), that developed TI's Lisp chip. Years later we found a complete Explorer system including documentation in a local surplus warehouse, bought it and sold it to a collector the next week. Yet another indirect benefit of the whole Lisp system era...
Tragectory of meteor with Google earth
Exactly, poetry has enough structure that unlike regular English prose, it seem plausible that you could get meaningful output from a computer program.

Then again, meaningful output isn't exactly necessary.[0]

[0]: http://www.ubu.com/historical/racter/index.html
I was one of those designers. I'll try to get more designers to change their approach. :)
April's fools aside,

"m[NaN] = 1 always creates a new hash table element (since the key is unequal to any existing entry), reading m[NaN] never finds any data (same reason), and iterating over the hash table yields each of the inserted NaN entries."

This suggests to me an ADT that special-cases insert on the key: if it's not NaN, put it in a hash table, but if it is, tack it onto (say) a plain linked list. Lookup NaN fails, traversing the structure traverses both the hash table and linked list.

Might be a bit more code than a straight-up hash table, but definitely less weird than calling rand in the hash function. (To me.)
Permit me to disagree with the distinguished Mr. Thompson. There wasn't quite "no reason".

First off, the notion of a personal workstation was just getting started back then. It was entirely reasonable for the MIT AI lab to want to build some workstations for its researchers, who had previously been sharing a PDP-10. There wasn't, in 1979, any off-the-shelf machine with virtual memory and bitmapped graphics that you could just buy. The original PDP-11 had a completely inadequate 16-bit address space. The first VAX model, the 11/780, was too expensive to be a single-user workstation. The 11/750, released in October 1980, was cheaper, but I think still too expensive for the purpose (though a lot of them were sold as timesharing systems, of course).

In any case, workstations started to be big business in the 1980s, and through the 1990s. Apollo, Silicon Graphics (SGI), and of course Sun Microsystems all enjoyed substantial success. The fact that DEC didn't own this market speaks clearly to the unsuitability of the 11/750 for this purpose.

Also, the extreme standardization of CPU architectures that we now observe -- with x86 and ARM being practically the only significant players left -- hadn't occurred yet at that time. It was much more common then than now for someone building a computer to design their own CPU and instruction set.

None of that has to do with Lisp specifically, but it does put some context around the AI Lab's decision to design and build their own workstation. If they wanted workstations in 1980, they really had no choice.

And the tagged architecture did have some interesting and useful properties. One of them was incremental garbage collection, made possible by hardware and microcode support. We still don't have a true equivalent on conventional architectures, though machines are so fast nowadays that GC pauses are rarely onerous for interactive applications.

Another consequence was a remarkable level of system robustness. It soon became routine for Lisp machines to stay up for weeks on end, despite the fact that they ran entirely in a single address space -- like running in a single process on a conventional machine -- and were being used for software, even OS software, development. The tagging essentially made it impossible for an incorrect piece of code to scribble over regions of memory it wasn't supposed to have access to.

Obviously Lisp Machines didn't take over the world, but it wasn't really until the introduction of the Sun 4/110 in 1987 (IIRC) that there was something overwhelmingly superior available.

If Thompson had said simply that it was clear from the trends in VLSI that there would eventually be a conventional machine that was so much faster and cheaper than it would be possible to make Lisp Machines -- simply because conventional machines would be sold in much greater volume -- that Lisp Machines would be unviable, I would be forced to agree with him. But that had not yet happened in 1979.

EDITED to add:

One more point. The first CPU that was cheap enough to use in a workstation and powerful enough that you would have wanted to run Lisp on it was the 68020; and that didn't come out until 1984.
PlayApi.

Click 'Get Started'. Yeah!

Obligatory signup form, to 'request an audience^H^H^H^H^Hdemo'.

See ya.
why is this on HN?
-1 for language,
-1 for content (google translate did a good job for me)
Heh. Thanks. Glad someone thinks it is cool!
“Human” Automation
The Public Spoke, Maker's Mark Listened - Returning To Original Formula
But the political pressure from the wealthy overrides the pressure from the average person. Hence taxes go up as wages fall in response to labor automation.
You read way more into that comment than I put. I, in no way, implied (nor even thought) of any party. I'm still trying to understand the worldview that turned my statement into "Liberal democrats are the source of all that is wrong." I can only think of one, and it is so heavily biased against everything not liberal Democrat that I hope I'm wrong.
Note that eliding the middle of some long words also
avoids making a choice of Websterian or British spelling,
giving us, for instance, p13n for personali{s,z}ation
without having to locali{s,z}e the terminology, or to
have a {flame war,frank and open discussion} over the spelling.
The issue here is not reverse-engineering a technology or purchasing it and replicating it. Many people would argue that it's inevitable.

What encompasses IP is not just technology though.

The concern is that there are foreign actors attacking businesses and doing much more than looking at technology. They are looking through financials for current accounts, revenue streams, customer lists, and pending contracts. They are taking the source code from software companies and schematics from hardware companies. They are effectively acquiring all the information necessary to replace those businesses, often without knowing what they have, and selling it higher up the food chain.

This particular actor in the article looks like really low hanging fruit compared to what other companies are warning they are being attacked by.
What it's like to uncover a $1 billion fraud
Idea: remember the EURion constellation?
http://en.wikipedia.org/wiki/EURion_constellation

It's a pattern of circles that's printed on money, and when printers detect it in a file they will refuse to print that file. I wonder what would happen if we similarly embedded this pattern in landscapes. Would it prevent printing aereal photo's?
IP is just a made up way for incumbent producers to squash competition.

You are just saying that. Remember IP is not just patents.
You seem to confusing different forms of stealing IP.

Do you feel that stealing source code is justifiable too?

http://www.wired.com/threatlevel/2010/01/google-hack-attack/

If so, then where do you draw the line?
JavaScript is this generations Perl.
Too Many Office Meetings, and How to Fight Back
Thanks so much for your reply! Just sent you an email.
When I see some of these HN self posts, I feel like I'm reading a 70's bulletin board.[0]

[0]: https://news.ycombinator.com/item?id=5076106
Sometimes a single nice email makes a free service worth it all
Don't think spatial calibration, think eye chart: https://www.google.com/search?q=eye+chart
That's amazing! I snipe at link to a post which happens to be written by a woman, and you conclude that I'm sexist and a racist to boot.

Do you also read tea leaves?
I've been reading Hacker News since 2007. This is the single most worthless post to ever grace the frontpage.

Everyone here should think long and hard about what can be done to prevent a community from degenerating to the point where it is colonized by trivial attention whoring.

In fact, whoever thinks hardest might just make the next billion dollars.
Its a leap, but perhaps the appeal to hackers is the same as journalists, transparency and sunlight are the enemy to those that which to oppress, control and dominate.

Perhaps hackers are the few technorati that can effect transparent information sharing without journalists and editors being threatened and murdered.

just a thought
Well, it's hard to find a job that's <40 hours a week for one.
I believe MicroMint, (aka Steve Ciarcia's hardware company), offers Lua on a few ARM boards.
To quickly spot the important error/warning etc. log messages from log files full of verbose debug messages, try the Prism log colouring app I wrote in Python for this purpose:
https://github.com/peterhil/prism

I use this at work, usually combined with tail:
tail -f /some/logs/*.log | prism

There is also a -w option if you have watchdog library installed. Works only when given directories for now, because of the design of watchdog. (This should be fixed to work properly when given individual files.)
Thanks logn. Much appreciated. Just to clarify a couple of points if you don't mind:

"(although I can still tell it's a 5)" - that is - on the original? or only the python version? If you are able to see (almost) all numbers on the original, then perhaps your colour-blindness is not as strong? or the test isn't great to start with??

"However, I believe if given this test, my answers on the Ruby version would only deviate from the original...". Deviate meaning you won't be able to tell the difference?

Would it be possible to contact you via email/skype to follow-up on this if necessary?
I am not the biggest fan of SourceTree's UI, but the killer feature that makes it really useful for me is that it makes it pretty easy to stage specific lines of a file or to discard some lines. They've done a pretty good job with that and I use those features all the time now.
I'm also in the industry and I second this.

Speak plain English and explain in a nustshell what you do for whom.

Investors and brands are busy, make it easy for them.
Here is a link to the post you guys were asking for. Hope it is helpful.

http://news.ycombinator.com/item?id=5236372
Washington Post Lays Off Entire Mobile Team
Chasing VC money is becoming an increasingly stupid thing to do with your business. The sooner everyone realizes this and start to build businesses that actually reflect need, the better off we'll be.

I cannot imagine how many people's 20's have been wasted in the last decade chasing some mythical social web 2.0 dollar. We need to understand that most of the Instagrams of the world got lucky simply because of the bubble and the confusion over what's a viable business on the Internet not because they've actually created billions in value.

They won a damn lottery, they aren't creating models for new business.
Related: Protecting sshd using spiped http://www.daemonology.net/blog/2012-08-30-protecting-sshd-u...
This is something I've been thinking about in the good old USA too. Throughout most of history elderly relied on family to take care of them, but modern society often has families spread out over great distances and children not prepared or expecting to have to care for their parents, and with people living longer than ever it becomes much more of a job to care for your parents. Combine that with the fact that pensions are becoming increasingly rare and social security benefits are likely to be cut at some point in the future, and you have the potential for a massive increase in elderly living below the poverty line with no one to care for them.

Even if you prepare and save, that's no guarantee as the recent economic troubles demonstrated, with many people nearing retirement seeing massive decreases in their investments. Not to mention, with the skyrocketing costs of college tuition and wages that have not kept up with inflation, adequately saving for retirement has become increasingly difficult as well.

I'm not sure what's going to happen but I don't see the future as being that promising as we age and quite frankly, I can see a lot of seniors turning to suicide when whatever meager savings they have run out. I hope I'm wrong, but it looks quite bleak...
I've heard the uncensored version in Canada.
Could you expand on this? I was on the assumption that with Stripe you could circumvent PCI compliance almost completely. I thought that you only need to comply with PCI if your SERVER touched the credit card data in any way - i.e. capturing the info from your frontend and sending to your payment gateway - and as with Stripe your server never sees it - their JS sends the info to Stripe servers directly - you are ok.

In fact in their site https://support.stripe.com/questions/what-exactly-do-i-need-... they state

"As for the explicit requirements you need to meet PCI compliance requirements:

* When accepting payments using Stripe, you have to use Stripe.js
* Serve your payment page over SSL"
The resolutions seem off. The most common xhdpi resolution is correct (720x1280), however the hdpi one is 480x800 and mdpi is 320x480. Might be my mistake though, is there a clearer explanation why you chose those resolutions? Edit: This is in the case of phone sizes (tablets are another story). And even in the case of phones, you have varying resolutions inside those buckets. Yeah, explaining this to iPhone designers is always fun :).

Custom fonts are a problem, but there's a nice way to implement them (backwards compatible and all), and when you do it once, it will always be very easy. I don't have a code example nearby, shoot me an e-mail (in the profile) if you are interested, and I'll make sure to get a proper answer to you.
I didn't even understand what he meant by device specific, personally. Every app I've ever seen that uses a custom font just includes it in the app and it works on every device. I suppose I've seen OTF fonts not work on very old Android versions, like 1.6 and lower or something, but I've never seen a TTF not work.
360 auto rotate app on iphone
i18n would cover a lot of things like the following:

- Using Unicode for UI-visible string functions (to make it possible at all for your app to show non-Latin characters). Other some other means of selecting arbitrary charsets but Unicode is hard enough as it is.

- On that note, using language-specific instead of byte-specific functions. This itself has its own large pitfalls (e.g. even something as simple as using foo.toUppercase() instead of foo.tr('a-z', 'A-Z') simply doesn't make sense in all languages, but at least it's better than what you had before).

- Having hooks for displaying dates in the user's preferred format.

- Advanced mode: Having hooks for operating on dates in a non-Gregorian calendar!

- Having hooks for proper currency handling and display.

- Having hooks for properly translating pluralized words. This is way worse than it sounds. In English you generally have "1 of", "none of", and "2+ of" that you might have to worry about, but other languages may have significantly more options, or entirely different ways of binning which categories an ordinal phrase falls into.

- Having hooks to supply "context" to a translator. E.g. talking about an "elevator" in the context of choosing an I/O scheduler may give an entire sentence a far different structure than using the same word "elevator" in the context of vertical transportation.

- Speaking of context, there's the problem of properly handling placeholder text in printf-style format strings. The translators may have to re-order the placeholders entirely to get it to translate right.

Even this is just kind of scratching the surface, I haven't talked about things like graphics, audio, etc.

Now, l10n is the process of actually going through and making the changes needed for a given locale. This doesn't just mean language, it can also include regional aspects. E.g. Brazilian Portuguese (pt_BR) may end up with a different appearance than Portugal's Portuguese (pt_PT) [1].

Even American English (en_US) and British English (en_GB) have famous differences which go into far more than just s/truck/lorry/, but into things such as units (even gallons are not the same). All of which must be handled to have a proper localization.

In code terms you might say that i18n is refactoring to have a proper interface for usage by subclasses, while l10n is the art of making a specific subclass for that i18n interface for a given regional locale.

[1] http://lists.debian.org/debian-i18n/2005/10/msg00077.html
Taking a look to https://support.stripe.com/questions/what-exactly-do-i-need-... it looks like you only need to use stripe.js and SSL and you're ok.
First Round Capital Year In Review
Show HN: Meet Ausobot, your first personal robot.
It says it's listed on a blacklist of domains involved in spam. But it's not clear if all the folks pointing at the one blacklist are examples of it being relisted multiple times or just people rereporting that it's on that list. It's not listed in the last 30 days of additions at http://www.joewein.net/bl-log/bl-log.htm so I'd suspect that 2013-02-07 'event' listed on WOT is meaningless.

Considering the time of its first listing was right around the time of the domain's registration, and that the blacklist is apparently a list of domains /mentioned/ in spam, I wouldn't be too sure it's not just a case of some spammer copy/pasting a list of 'recently expired / created domain names' in a pitch for domain registration or something like that. Seeing as it's just the one blacklist, the current owner might be completely unaware of it.

Hard to guess, though. His MXs aren't listed on any of the usual blacklists, though that's not necessarily where spam would be coming from. On the other hand, spammers don't usually list their name and employer on the front page of their site.