skysight-inc/HackerNews huggingface dataset:
For the lazy, here's the Capsicum project Colin mentioned: http://www.cl.cam.ac.uk/research/security/capsicum/

Also, for those who don't know, Colin sometimes takes consulting gigs. I worked with him earlier this year; easily the best thousand Canadian dollars I've ever spent.
Simple tweakable protocol obfuscator (protoobfs)
Really? I thought the first Iron Man movie was a great depiction of iterating on a product design.

I guess it isn't quite as much an engineer's movie as Apollo 13 or October Sky, but I definitely view it as one.
The authenticity of the dialogue depending on other aspects of the character (and which hacker stereotype) you're going for and of course.. depending on what hacker means to you
I'd use that. It would also be nice to be able to suggest better versions of products to replace the products in some people's lists.
While Contact may be inspirational, for me, it's also one of the saddest movies I've watched more than once.
I agree, I wonder why they decided to end it the way they did.
...isn't also basically using a table?
Your understanding of the domain changes considerably as you implement an application in that domain, reducing your ability to approach the domain as a beginner.
SpaceX Grasshopper takes off and lands vertically in successful test
I heard Google does that. I work for Microsoft and am based in China, so obviously this is not an option for me. It turns out not to be a problem in practice, everything is encrypted well enough, the only annoying thing are GFW-instigated DOS attacks on secure connections.
What you are calling for is http://www.wix.com/.
In the Obvious architecture, it would be something more like..

class CreateContact
def initialize contact_jack, email_jack
@contact_jack = contact_jack
@email_jack = email_jack
end

def do input
# validate input

contact = Contact.new
contact.populate input

contact_jack.save contact.to_hash

email = ContactEmail.new
email.populate contact.to_hash

email_jack.send email.to_hash

contact.to_hash
end
end

With that structure you can call CreateContact with:

action = CreateContact.new
result = action.do ContactJack.new, EmailJack.new

In that structure you can totally test the action and logic without hitting the db or the mail system at all. Your ContactJack and EmailJack can be easily swapped out for various pluggable data stores. Fileystem, MySQL, Mongo, Postgres, Cassandra, could be swapped out for the ContactJack. EmailJack could send through standard mail servers, SendGrid, Amazon AWS, Mandrill, etc.

Obvious is on github, you can read more at http://obvious.retromocha.com
E-Bike Sales to Shift into High Gear for 2013
Giving useful services over giftcards: Your suggestions?
Hi all,
Looking for recommendations for useful services to gift rather than gift cards this year. Any good or even odd ball ideas?

Thanks,
Mike
Where OS X security stands after a volatile 2012
I think this is worth mentioning: The best way, of course, is to BECOME a hacker (yourself). The 'speak' should come naturally.

Now, if you only have a day to spare for the project, that's a different story altogether.

Good luck!
More specifically, OS X and iOS run what is essentially a fork of Mach 2.5, a version of Mach that came out before the BSD code was split out of the kernel into userspace (that happened in Mach 3).

A few "merges" (to use source control terminology) of newer Mach stuff into xnu (the OS X kernel), but the BSD-in-userspace stuff never came over.
Yep, this is the stackoverflow I know. They have practically killed all the meaningful C++ activity on the website by closing duplicate questions. Maybe some easy questions have already been answered but they don't let junior members contribute by answering them.
By the way Wikipedia is worse. In English anyway, in French it's cool.
Just because people aren't shopping in the Windows/Microsoft store doesn't mean nobody is buying Windows 8. 40 million sales in a month is nothing to sneeze at. I haven't tried the tablet version yet, but I have it dual booting on my iMac and it runs just fine.

Also, FWIW, I just got a Windows 8 phone (HTC 8x) and have been porting a few of my iPhone apps just as a test of the market. I switched from my iPhone 5 for a week just to test it out and I really liked it. There are still a few apps missing, but for the most part everything I wanted was there. Overall I think I like Windows 8 better than Android though it's close. I'm sticking with my iPhone as I like it just a bit better than both, but they are all pretty close, (and so freaking awesome compared to just a few years ago). To someone who doesn't already have a lock in to one of the platforms I think Windows 8 could be a good competitor.
Surface has none of that, but then it doesn't go through OEMs.
French Quebecer here. I've been trying to learn more about why the perception from English Canada is the way it is and posts like yours help a lot.

likely the most racist law passed anywhere in North America

In what ways? Do you feel that it was specifically intended to kick out English Canadians?

It didn't help that the value of my Canadian sourced scholarship dropped sharply due to

I don't follow - how did that happen?

built on land given under the condition that they take good care of the natives, with natives who voted 99.7% that if Quebec left Canada, they would leave Quebec

Both of those facts are new to me. Do you have any source/link? Which territory and treaty are you referring to?
Rust's macros are generally Scheme-like (macro-by-example), although it's not exactly the same since Rust obviously doesn't use S-expressions. See http://static.rust-lang.org/doc/0.5/tutorial-macros.html for a little more info on Rust's macros system.
It really depends on what the system needs and how you are reusing functionality. Creating a user on the front end of the site with a new user sign up makes sense to send an email, but if you have a back-end admin area, creating a new user there probably wouldn't be a good idea to send out an email in many cases.

In short, use your head. There is nothing wrong with breaking out this functionality into two actions.
very little money / person is fine as long as you have enough scale to back it up.

@parentcomment. I see that you seem to have a lot of traffic from India. You might want to check out http://vserv.mobi/
IIRC, they do have this payment processor which can pull money from your mobile prepaid balance. I don't think a lot of people here use credit cards.
First of all, one person's opinion does not make a truth. Second, and more importantly, many of these desegregation programs do not achieve true integration. Sure the black students are in the same school as the white students, but they're not in the same classrooms as the white students who are doing well in their studies. This is exactly what I experienced.

You also have to ask questions like "Are these students receiving extra help to make up for what they aren't getting at home? Do they feel isolated because they're the only poor black student in the class, or do they feel motivated to find a way to fit in with the high-achieving white students?" That is the difference between desegregation and integration.
Definitely go ahead and ask for a raise. You've been working for a year and from your post, have big responsibilities. Hesitation is a bitch.
printed in any other way...
would want their shell output
I never understood why anyone

Yes, what a great innovation!
With Christmas a few days away, check out how the world is spending it
Lost interest half way..
Colin sometimes takes consulting gigs

Key word being "sometimes". I do consulting more for the exposure to interesting new ideas than for the money, so my availability depends a lot on who is asking and what they're doing.
And imaginary numbers, and four-vectors, and spinors...
Yeah, it's been a while since I saw the movie, but I left it off because I remember it being more action scenes than a dramatization of engineering. It's partly why I made the collection, because it's so hard to find movies that do it well.
The tl;dr version: The net is a gun that we will shoot ourselves with.
As a recent vim uptaker, vim is an entirely separate subject matter on it's own and should not be used as a distraction to learning a programming language.
Lately I've noticed an increase in companies that are trying to deal with the real world, instead of selling software strictly as a virtual good. TaskRabbit, YourMechanic, Uber, Instacart, Cherry - I love all of them. But dealing with the logistics of a physical world is really really tough. I don't envy any of them. Cherry was a great idea, but a tough one to pull off. Good luck to the Cherry guys in whatever they do next.
My current employment contract says that even IP /related/ to my employer's business, as long as it is done on my own equipment and my own time, is mine.

It's an enlightened place.

I expect to have to prove it, to some extent, if it ever came up. Which is one of the reasons I have a private github account; commit logs on machines not controlled by me might be useful.
I liked the article. Just to let you know, when you zoom on an iPhone the background covers the text for a ~ second: https://www.dropbox.com/s/95f8ivqxodh2qnc/Photo%20Dec%2023%2...
Oh, right. Dunno.
Money Moves To Make in 2013
And it is very stupid to let valuation decide which startups you invest in

This is only true if the math is hard. If the math were trivial, people would just do the math. The math is hard. Therefore math is of no use/irrelevant/stupid. Does the last sentence follow? Not obviously.

PG wrote a nice essay on why the math is hard.

There is some argument that the complexity can be simplified at higher levels of abstraction. There is another argument that the goal of a VC is to make the math work at a higher level of abstraction. There is empirical evidence that both arguments are pretty good.

So, its not unreasonable to (1) agree with PG that the maths are hard; but (2) disagree we should dis-regard maths altogether...so we don't throw the baby out with the bathwater.

[Addendum: YC invests at a fixed valuation in its companies, wich are selected via a competitive admission process. This is a logical approach if you believe the math is hard on a granular basis, but is more tractavle at higher level of abstraction. The co-hort is thus the unit of investment, not the company.]
Incidentally to your incidentalism, I'm looking forward to the day when we can run Rust directly in a browser via Emscripten:

https://github.com/mozilla/rust/issues/2235
Recursion is the key to enlightenment. There are may ways to achieve this recursion, and contemplation of finite automata is one of them. The point of recursion happens when you realize that the thought process which is considering finite automata is itself composed of finite automata. The subjective experience of recursion leads to enlightenment.
Crap, well I just updated this and didn't rewrite the README. Let me fix that real quick.
Going from java to ruby these functions were the most obvious improvement for my day to day coding.
Thanks for the head's up. I'm beginning to think the background image is more trouble than it's worth :(
I mean "rarely occurs" in the sense that folks rarely post things with really long lines. Most of us have better sense than that.
Read this: http://www.vanseodesign.com/css/tables/
Sorry for submitting to HN with it not quite ready! Just stumbled across it today and thought it was really fascinating. I'm working on a "learn to code" product myself. Just watched your talk at Oredev in Sweden yesterday. Thank you so much for sharing what you're learning!
I'm also fairly interested in Haskell but I think that studying data structures and algorithms extensively will make me a better programmer. Not learning a whole other way to program... That will not work.
I am already very comfortable in C++/Java/D and other imperative languages. I can do the same work faster because I can use global state to get easier solutions to problems.
If I want pure functions, I'll write a pure function. If I want shorter, more readable code I'll write a macro. Or maybe not.
Just 1?

What happens when you want the associated .net or .org?
Trademark rights been checked?

You could've gotten a .com, net, .org and like 10 years registration for each and been in a good position. And been in a position where you'd still have a lot of cash in the bank.
Websites Vary Prices, Deals Based on Users' Information
An Intro to AI student's attempt to conceptualize Machine-Learning
You still create FSM's in functional languages though. Consider:

data Light = On | Off

toggle :: Light -> Light

toggle On = Off

toggle Off = On

So, the data structures represent the possible states, and the associated functions the transitions.
Yudkowsky has some very good writings, but this isn't among them.

I would be very thankful if you could point me towards his better writings!
Here is another set of lectures from IIT Madras India which helped me understand what Automata is all about.

http://www.nptel.iitm.ac.in/courses/106106049/
True, illegal isn't the correct word.
San Diego Airport Limo - Call Now - 858-224-5474
If only the NSA did more sensible stuff like this, and less spying on American citizens.
So the NSA is spending taxpayers money on contracting with Raytheon (who else) so they can hire people that will then use nmap, nessus and netcat.

What is the NSA being paid to do?!
Seems to me, what would happen is:

1) Banks would determine they need to replace the revenue from all the fees. This means either lowering interest rates, eliminating services, charging a monthly fee for all formerly free accounts, or hiring less people. (We're already seeing a lot of this under the Dodd-Frank legislation).

2) ...forget option 2. Initially I was going to say the small-claims courts would have a backlog of claims filed by banks against those who aren't paying the fees...but the filing fees would likely be more than a bank wanted to pay, unless someone had quite a few overdrafts.

Simple thing is, a checking account is not a credit card account. If you have one, you should know enough to know how money works.

Are overdraft fees annoying? Yes. We've all had to pay them. But under the current system, we all have a choice as to whether or not we pay them. The simple choice is: balance your checking account. Punishing the banks for an individual not taking responsibility for his or her own money is shortsighted at best, and unsustainable at worst.
Like text somehow.... :)
If you've never taught beginners how to program, then you should obsessively follow Zed's advice...I just cringe whenever I see even a mention of "git" or any other development tool in the context of beginners coding.

I can only say that it is nearly impossible to underestimate the technical unfamiliarity of this audience. Opening the command line terminal is bewildering to them. Not understanding why 'ls' worked a minute ago but not now (it's because they're in the interactive interpreter) causes rage.

You may think you're enticing the beginner by teasing all the cool things they'll eventually get into, but it ends up being a disservice. They're already entering a world of confusion and frustration, no need to add orthogonal concepts to the mix.
So you're back to your layout being entirely dependent on your markup? wasn't this what CSS layouts were supposed to get away from?
Sachin Tendulkar retires from One Day International Cricket
Posting from Egypt. On a good day I might be able to download 100kB/s, usually during evenings it's more like 10kB/s with high packet loss & latency.

I often use Opera Mini, because most browsers and sites are just unbearably slow or do not work at all.
Numb3rs fits with the genre of the list, but it's kind of meh as a show. If you're looking for something to watch that's actually good, try The Newsroom. I think the entire first season is available on HBO on demand.
The article's subtitle calls Lanier the "visionary behind virtual reality" and tempers that slightly in the body text calling him "...a pioneer and publicizer of virtual-reality technology..." and stating "...he helped make virtual reality a reality..."

Yet most of the Timeline section of Wikipedia's entry for VR predates Lanier. [1]

From the article:

> Lanier is still in the game in part because virtual reality has become, virtually, reality these days. "If you look out the window," he says pointing to the traffic flowing around Union Square, "there’s no vehicle that wasn’t designed in a virtual-reality system first. And every vehicle of every kind built—plane, train—is first put in a virtual-reality machine and people experience driving it [as if it were real] first."

No, they were designed in a Computer-aided design (CAD) system first. The 20 year history of CAD prior to 1985 is omitted and CAD is subsumed into VR.

Automakers were leading users of high-end graphics systems and CAD prior to Lanier's involvement:

> ...probably the most important work on polynomial curves and sculptured surface was done by Pierre Bézier (Renault), Paul de Casteljau (Citroen), Steven Anson Coons (MIT, Ford), James Ferguson (Boeing), Carl de Boor (GM), Birkhoff (GM) and Garibedian (GM) in the 1960s and W. Gordon (GM) and R. Riesenfeld in the 1970s. [2]

Designs are now tested with VR, but that's really just an extension of the CAD process.

Another issue is that navigating through virtual 3D environments was being done long before 1985 in the form of high-end flight simulators delivered to the military [3] and projects such as the Aspen Movie Map. [4] First person games existed but were severely limited by the capability of the hardware of the time. [5]

Head-mounted displays also predate 1985. [6]

[1] http://en.wikipedia.org/wiki/Virtual_reality#Timeline
[2] http://en.wikipedia.org/wiki/Computer-aided_design#History
[3] http://en.wikipedia.org/wiki/Flight_simulator#Computing_in_f...
[4] http://en.wikipedia.org/wiki/Aspen_Movie_Map
[5] http://en.wikipedia.org/wiki/First_person_%28video_games%29#...
[6] http://en.wikipedia.org/wiki/Helmet_mounted_display#History
Facebook paid £2.9m tax on £840m profits made outside US
Timid. Questions you really shouldn't ask a grad student:

1. So how come you don't just get a job?

2. When you graduate how long will it take for you to pay off your student loans?
Betterific – Share and discover ideas
The other half of the dragon book... figures :)
How to win friends and influence people... or something like that. FB is already in hot water in the EU over its privacy policies (or lack thereof). One of these days they will pay the price for all this sleazy and greedy behaviour.
Even for me, as a South African considering my options overseas, the comments were extremely useful.

Remote work sounds like a good idea. I plan on trying that out in the new year before committing to immigration.
Lawyers see a "mistake" and go for a landgrab. FB/Instagram TOS update was probably a similar dynamic. Legal likes to err on the side of over-reach, all other things equal.
Replying to myself since I can't edit: I see two replies suggesting that what I want is a multi-city trip, but that's not the same thing. Flights will happily let me do the same search I can do on Orbitz, with my start/end city being "SF metro area, any airport". But unlike Orbitz, when I use that I can't book an itinerary that goes SFO-BOS-SJC, for example. (I don't want to search it as multi-city, because then I have to _manually_ try every combination of SFO/SJC/OAK until I find what's cheapest.)
See my self-reply.
The NSA has a history of keeping very serious faults in security to themselves [1].

It's like the government detected a structural problem in bridges and then decides not to fix it because that could make it harder to destroy other countries' bridges.

1: http://en.wikipedia.org/wiki/Differential_cryptanalysis
drive up attendant-less coffee kiosk
Hey, I'm not the OP, but I have some thoughts based on my experience creating the Obvious Architecture.

1) Hiding persistance from the programmer by tying it to your models is a bad idea. It's where a lot of problems start. First, how do you test without hitting the database? How long do your tests take? Minutes? Hours? Or do you skip them?

I don't think your models should do persistance at all. They should model your data for you. Do validation against your business rules. That sort of thing.

Would you tie your models to the filesystem? If not, then why would you tie them to the database?

Pulling your persistance mechanism out of your models is the first step to writing fast, maintainable, highly testable code, even if you are still using rails.

2) Rails conventions want you to tie your DB to your objects, which is a bad idea. Rails does a lot of things well, like it gives you a nice structure for controllers, views, routing, asset management, so use it for those things. Rails is a delivery mechanism. Use it as one and leave data modeling and persistance to something else.

3) I think the name issue could be solved by treating it as "action" object. Think of actions as more like actors. They do things. They integrate models/entities and persistance mechanisms along with minor amounts of logic that don't fit inside of entities.

As an action object, you could all it CreateContact and it would be called create_contact.rb in the app/actions folder. Then, when you look in the app/actions folder, the file name communicates what it does - it creates a contact.

4) Actually, it helps a lot with testing. Creating a new class makes dependency injection super easy, making testing super easy and fast. Also, it can help with clarity and glance factor. Imagine you have an app/actions folder with files like create_contact.rb, remove_contact.rb, send_email.rb, get_contact.rb, compose_email.rb and so on. You look at that folder and you can see that it is probably an contact management and email app. Maybe an contact or newsletter management app?

That kind of glance factor you can't get with a bunch of higher level controller or service containers. It also avoids the problem of "what controller/module/service does this method belong to?"

5) I actually agree that the code that the OP did was not the best in that the persistence and email sending mechanisms aren't passed in to the action, so that you don't know what it is going to try and save and where. If the code explicitly passed in the persistence and email mechanisms it would be more apparent that an email is going to be sent as part of the CreateContact action. That being said, I would probably make those two separate actions for clarity's sake.

I've written some apps using the Obvious Architecture and it really does help solve a lot of the problems that default Rails MVC creates.