skysight-inc/HackerNews huggingface dataset:
{"is_fb_employee":"maybe soon? https://www.facebook.com/careers/department.php?dept=enginee...}

Maybe soon ... Engineering department .. I HOPE SO!

..im actually an engineer
I think you're also missing idea of "fundamentals" as essential thing that article means by "stupid shit" - fundamentals meaning habits and not just instructions.

Not all "bad stuff" is "stupid shit" in this approach. The "joel test" really doesn't relate.

Just about all Chess players know to avoid hanging pieces - the article described going from there to making that understanding habitual. Essentially, the article, if it was consistent, would be looking for some equivalent to musical scales that a software engineer could do practice before actually programming. It is not a matter of knowing best practices but a way of systematically developing the habits to put them into practice.

It is the difference someone telling you not to make a mistake and going over and over doing things to actually get in the habit of not making mistakes... A person can learn theoretically how to play music in a week and if producing keystrokes at the proper time didn't matter, people wouldn't spend more than a week learning the skill. As it is, a lot more practice is required.

But really, I'm pretty sure there isn't a software equivalent of musical scale because software isn't as specific a skill as reading or performing music. Software involves a large variety of logical skills which most adults already have to some degree. It is so complicated on some levels that mistakes are sort-of inevitable on other levels.
Ask HN: Logic Gates (in javascript and F#)
in javascript:

var logicGates = {
nand: function (a, b) {
return !(a && b);
},
not: function (a) {
return this.nand(a, a);
},
and: function (a, b) {
return this.not(this.nand(a, b));
},
or: function (a, b) {
return this.nand(this.not(a), logicGates.not(b));
},
nor: function (a, b) {
return this.not(this.or(a, b));
},
xor: function (a, b) {
return this.and(this.nand(a, b), logicGates.or(a, b));
},
xnor: function (a, b) {
return this.not(this.xor(a, b));
}
};

[
{a: false, b: false},
{a: false, b: true},
{a: true, b: false},
{a: true, b: true},
].map(function (x) { return logicGates.nand(x.a, x.b); });

in F#:

type LogicGate =
| ON
| OFF
| NAND of LogicGate * LogicGate
| NOT of LogicGate
| AND of LogicGate * LogicGate
| OR of LogicGate * LogicGate
| NOR of LogicGate * LogicGate
| XOR of LogicGate * LogicGate
| XNOR of LogicGate * LogicGate

let rec evaluate input =
match input with
| ON -> true
| OFF -> false
| NAND(a, b) -> not ((evaluate a) && (evaluate b))
| NOT(a) -> (evaluate (NAND(a, a)))
| AND(a, b) -> (evaluate (NOT(NAND(a, b))))
| OR(a, b) -> (evaluate (NAND(NOT(a), NOT(b))))
| NOR(a, b) -> (evaluate (NOT(OR(a, b))))
| XOR(a, b) -> (evaluate (AND(NAND(a, b), OR(a, b))))
| XNOR(a, b) -> (evaluate (NOT(XOR(a, b))))

[
NAND(OFF, OFF);
NAND(OFF, ON);
NAND(ON, OFF);
NAND(ON, ON)
] |> List.map (fun x -> printfn (evaluate x))

Questions: .

1.) can 'or' and 'xor' be simpler? .

2.) why is it called 'xor'? .

3.) can you add other implementations? .
> There's nothing objectionable about obtaining a patent--it's all about how you use it.

I disagree violently. You have to consider the enormous total mass of patents in effect. The fear, uncertainty and doubt resulting from a patent being on the books is the primary drag on entrepreneurship and individual programmer freedom. Even if the current patent holder has a history of non-enforcement, I cannot assume that policy will continue in the future, or that its patents won't be bought up by the Nathan Myhrvolds of the world when the company defaults. Now, if the patent was held by a non-profit organization with an ironclad charter that grants free and unrestricted licenses to all comers, that's much better than the alternative. But it's still far from ideal. Assuming such a trojan horse strategy actually worked on a large scale, it could deter real patent reform. Stopgap measures have a way of doing that. That's what happened with the patent cross-licensing between large companies; they're only starting to complain because cross-licensing is useless with patent trolls.
You can use it for any task which takes too long to fit into a web request.

A simplistic example: You have a web form where a new user can choose a bunch of his/her interests or hobbies from a big list. The user clicks submit and then sees a list of other users on your site with similar interests.

For small numbers of users and a simplistic algorithm, this could probably be done right in the web request (i.e. in your Django view), but with millions of users and a complex recommendation algorithm, you could have Celery do the task in a thread separate from the web request.

You could then immediately forward the user to a page that says "Your recommendations are being calculated." The user can come back later and see if his/her recommendations are done yet. I assume you could even do some AJAX checks that would load in the recommendations once the Celery task is done, or even display a progress bar.
Patent System Gone Mad: Google Doodles patented by Google (March 2011)
This blew my mind. It makes sense that light will be more controllable (think lamps projecting photos onto a wall), but the light itself being an internet source is trippy.
We’re not going to have a jobless recovery. We’re going to have a jobless future
The police can also look for someone with a motive to kill you, and filter that by who might have the hacking expertise. Do a search of this guy's premises for such a transmitter or equipment to build it, and you have a prime suspect.
API Terms of Service Predict an Unsure Future
How come so many people, especially in this business, seem to forget that most of us live in a democracy, and not a corporate free-for-all?

We, the people, eventually decide which policies, including policies created by private companies, are socially acceptable. If the policies of powerful companies like Google or Facebook have a negative impact on society as a whole, we can decide to stop them.

We are not just consumers.

Corporations are not allowed to set policy as they see fit. Never have been, and hopefully never will be.
Yahoo cloud chief quits, now EIR at Battery Ventures
Completely correct. This is not a new idea at all. However TalkingLights had a huge bandwidth limit because they used flourescent lighting.

LEDs can go to much higher speeds - but even still, this isn't new. Researchers in Japan and Boston University have been producing demos for years:

http://www.bu.edu/smartlighting/research/smart-light-prototy...

http://www.naka-lab.jp/index_e.html
Closure Mode for CoffeeScript
The concept of transmitting data through light has been around forever. For my undergrad physics lab class in college, my team used a laser to transmit audio. Another team did a similar thing except they hooked it up to computers and sent jpeg's. This was probably seven years ago, and this wasn't the first time that projects like this had been done for this class.
Did you read the OP? It mentions a lot of people who go by handles precisely to avoid stalking, harassment, etc.
Recruiters: get involved.
I think what he meant is that your phrase implies that Africa is a country.
I won't be naive and say they don't want it for that exact reason. I am not Google's customer and I realize this. I am getting a good service from them for free for their ability to use the information I am providing.

We don't walk around giving everyone we see a brochure of all that information because most people don't want it. Heck even your friends don't want a lot of it.

I'll give my name out to anyone who asks, my address and pictures out to those I trust.

I see the Internet as a untrusted source. I don't post my address online (although I'm sure it is available somehow i.e. yellow pages or through some government service) and all the pictures and ideas I share are targeted primarily at my friends but I realize that once it is out there I shouldn't be afraid of someone else getting their hands on it.
Why I Like Twitter More Than Facebook
Who cares? Getting excited over some random graph value used internally... okay?

I mean, I already assumed FB had a staging server. Why does this interest people so much?
2. "xor" is "eXclusive OR": a XOR b is true when a or b but not both are true.
I know people who first thought it meant that you're publicly announcing that you're interested in (seeing other) men/women even if you're in a relationship or married. "No honey, being interested in women just means I'm not gay."
Many Africans (esp. people who can read and hence use the internet) speak English fluently. In some countries many schools teach entirely in English. There are dozens of languages in Africa, software aimed at the western market is rarely translated to African languages, hence many Africans would use Facebook in English.
It is unlikely that FB was given free reign to the original hardware. A more likely case is that they were given a duped version of the drives.
I have no idea what I'm supposed to do in problem 12. Everything else was fairly obvious. I just can't comprehend what's going on in number 12.
Gruber's posts shouldn't be read in isolation -- and that applies to this post and his stance on software patents; agree with him or disagree with him, he has a narrative that is consistent[1] through DF and The Talk Show.

If you only read Gruber's posts that make it to HN, you're missing context because he may have made other posts that provide background (and, while Gruber's fairly good about linking back to what he's said in the past, he's not perfect).

If you only read Gruber's posts, you miss context that may have been building in comments he makes in his linked list entries. In fact, Gruber has mostly avoided saying anything about Lodsys because he has been linking to others that he feels have said what he believes more eloquently, adding a small paragraph of commentary.

I'm not claiming that Gruber's "perfect" by any means. I'm simply saying that Gruber has a narrative to what he writes that shouldn't be subjected to soundbite treatment.

With respect to Google, we must simply agree to disagree that they have a moral high ground on this and other matters. Gruber contends (and I mostly agree) that they do not for various reasons.

[1] I'd originally said remarkably consistent, but the only thing remarkable about that is that so many other journalists/bloggers aren't. This consistency, by the by, is also ignored by anyone who suggests that Gruber is an "uncritical fanboy". Over the last year, I can think of a number of posts where Gruber has criticized Apple fairly harshly over decisions that have been made, including the removal of "store" buttons from the Kindle and Kobo apps, etc.
Here's one: Objective-C's "forwardInvocation:" functionality (or "method_missing" in Ruby). http://en.wikipedia.org/wiki/Objective-C#Forwarding

This could be implemented in a JS-to-JS compiler (which is what you're describing) but it would incur an overhead for every JavaScript method call. Since Objective-J has it's own syntax for method dispatching the overhead is only incurred for Objective-J methods, leaving JS methods untouched.
So are Bethesda's lawyers taking a page from Monster Cable's play book, even up to the point of attacking a small indy developer who's games would never be mistaken for any of Bethesda's games?

Hopefully this is just lawyers being lawyers, and the Internet backlash gets someone's attention at Bethesda quickly.
Most, if not all, cab drivers cannot take possession of items left in the cab. New York, for example, says:

§54-18(a) Inspection Following Trips from Airports. Immediately after completing a trip to Kennedy, La Guardia or Newark Airports, the Driver must inspect the interior of the Taxicab and the trunk compartment, if used, to ensure that Passengers have collected their property.

§54-18(b) Handling of Lost Property. Property found by a Driver in a Taxicab must be returned to the Passenger if possible; otherwise, it must be taken without delay to the police precinct closest to where the Passenger was discharged.

§54-18(c) Notifying Commission Regarding Lost Property. If the property is not returned to the Passenger, the Driver must promptly inform the Commission of the details regarding the found property and the police precinct where it is held.

Note that 54-18(b) is not inclusive of (a), but only when transporting passengers to the listed airports is an inspection of the passenger area for lost or misplaced items required. If any items are found outside of those conditions, they still must be taken to the closest precinct, and the Taxi commission must be notified of the property and to which precinct it is located.

It is not the responsibility of the cab driver to track you down, outside of yelling at you while you are walking away from the cab. After that, it is your responsibility as a passenger with a lost item to track it down.
It's bad for them, because it breaks the whole concept. The concept is that if you start with requiring real name, you prime people to give you the "real" things you like, your "real" preferences etc. It sets the tone, you are not longer spontaneous, you are "serious". Of course, it's all scaremongering: social networks don't have real informative comment, most people share jokes, mindless pleasantries and play games.
You aren't required to use Facebook, you're free to use alternatives, but it's become so ubiquitous that having a Facebook profile has become necessary to participate fully in online life. (Think of the Facebook like buttons and "login with Facebook" options you see scattered all over the web, or TechCrunch comments, for that matter.)

To put it another way, why should people with legitimate reasons for using pseudonyms be forced into a ghetto? What kind of freedom is that?
One of the (many) issues with IrDa is that there are severe restrictions on the power output, since the radiation is invisible. Using visible light, especially in the context of general purpose lighting, allows you to achieve much higher SNR.
problems with virtual goods are same as problems in stock exchanges witch is also some form of computer game.
You're right! I'll make the change.
But isn't this also a statement that the skill of a poker player and the skill of a programmer are utterly different.

Two skill types:

A. Doing something fairly simple perfectly, plugging even the smallest mistakes.

B. Doing something that is very, very difficult as well as you can - ie, doing it at all. Doing your best to simplify situations that have a potential to become even more complex while still managing great complexity and accepting that you will make mistakes (and guarding against and finding those mistakes).

Notice, the difference between a very good programmer and very bad programmer is absolutely not a few percentage points. Poke and music are each more like skill A whereas programming is more like skill B (though these classifications are of course quite rough).

It seems like if we aren't distinguishing the skill type here, we will wind-up just tossing out vague cliches. "Don't mistakes, dude".
Do you have one you'd recommend? I'm thinking about doing that.
I would think that playing with real money online would have more complicated legal issues, since you're not just a game, you're effectively an online casino.

For instance, you wouldn't be able to market your game in the states, since it's illegal to have transactions with online gambling services.
Combat Samba, as in, rhythmically beating each other in the face to the sound of a conga with scantily-clad ladies shaking it in the background ;) ?

(yes I realize you mean Sambo ;) )
Would it work with a black light?
First local PS3 jailbreak raid and arrest in Johannesburg, South Africa
What kind of work do you do on autonomous vehicles? I agree with all points, I just find this stuff fascinating :)
If it sounded like I was saying that anything someone wants to share anonymously is not worth being shared then I apologize.

I see the need to be able to say something controversial and not fear reprisal. My main argument was that services like Facebook and Google+ are not geared towards that. It is a personal opinion but it is just how I see these sites being used.

Things like EA Spouse definitely need to have the ability to exist on the internet. I just don't think that this woman would need to be able to share it on her Google+ account.
They DRM'ed the game? I thought they didn't mind piracy.
Nvidia drivers giving 2010 MacBook Pro owners Lion upgrade headaches
That's cute but it's not accurate. I interviewed there over two years ago and I appear to be blacklisted, since whenever I look at any of their job descriptions I get this:

"Hey, we have reviewed your application and unfortunately don't have an opening for you."

I can't really square that with "Maybe soon?"
Good video. I'm working on arranging a bachelor's party, so I decided to try. (I probably wouldn't have otherwise.) When I login with facebook, I get:

"We're sorry, but something went wrong."

Mainly, I just wanted to see what sort of offers you had in the area. I think you'd probably get a better conversion if you had a handful of offers pop up on the homepage based on the person's ip.
At this point, the project is nothing more than a proof of concept with no expectation of earning any revenue.
While the LoS aspect is potentially desirable in specific applications, I agree that initially it can be perceived as a limiting factor. Researchers at Boston University,Rensselaer Polytechnic Institute, and Nakagawa Lab in Japan are working with software tools to characterize non LoS applications using reflective and refractive surfaces found indoors. A powerful system can be envisioned if someone managed to utilize these principles with a device that contains a receiver with a wide view.
Skynet: A Scalable, Distributed Service Mesh in Go
Many banks in the UK do require the use of a card reader or a device that generates one time passcodes in order to use online banking. Ironically, a lot of people complain about the inconvenience of having to use them. I wonder if banks have greater liability in the case of fraud than elsewhere.
You'd network your light sockets to get around the room-to-room issue. Each room would have a light bulb "port". Some simple communication could then figure out which room your in (similar to access-point hopping used in large wifi distributions)

I can see this as a potential technology for sideband data: stream the video over the light, but the control data would still go through WiFi (and then you wouldn't bog down your wifi with torrent downloads)
You need to work on the language around what you're doing. When I read about "tiers" and getting a percentage of people I recruit, I think about pyramid schemes.
I can see that happening if they've gotten sick of all the crappy en-to-* translations on the web. Even if your English isn't very good, it's probably easier to read English than a crappy translation. (Not FB in particular, just as a general habit.)
I'm not even on facebook and I get a maybe soon.
Would it be possible to trademark the world scrolls alone?
The name should be short. A long name will be tedious to type, so don’t call you version control program my-awesome-version-control-program. Call it something short, such as avc (Awesome Version Control).

$ my-aw<TAB> # yay!

Personally, I am not a big fan of everyone using two or three-letter linux names for everything. We have a lot of options now for autocompletion and seeing what is available, so long names are no longer a talking point.
Besides the technical details, there are good practices which should be followed, but I don't know of any document which lists them. This is a pity, because though text-based interfaces are often designed in a much more efficient way than GUI interfaces, they are seldom consistent between themselves, and often get something wrong. A few common ones:

- Don't make the user reach for distant keys like escape or pagedown/pageup (also support ^N/^P or ^B/^F) or the arrow keys (also support hjkl), unless you really need to.

- For one-line text entry, support readline bindings (^W, ^U, ^Y, ^B, ^F, etc.)

- If you show a list, provide a way to search for an item rather than moving through the list item by item or page by page.

- Unless there is a good reason not to, spawn $PAGER to show text and $EDITOR to edit text.

- If there is a finite set of actions to choose from, provide one-key hotkeys for each one. Don't require unnecessary use of the control key. Optionally show the list of possible or common actions, but have an option to hide it and save screen space for users who don't need it anymore (like mutt does). Likewise, if there are several items that can get focus, provide hotkeys, don't require the user to Tab their way through all of them.

Obviously, there are more.
How about we stop supporting Google and Facebook? That's the best way to make your point.

You can also MAKE UP A NAME. It's like nobody has the basic critical thinking skills to just use a fake name.
Facebook petitioned the court and obtained permission to contract a forensics firm to inspect Ceglia's hard drive. My understanding is that the firm Facebook is working with is Stroz Friedberg, which has an exceedingly good reputation. As a result of the investigation, Facebook has now filed a motion saying they have obtained what amounts to clear evidence that Ceglia forged the contract he claims proves his ownership stake in Facebook.

Facebook cannot publicly disclose the evidence their firm found, because they are bound by a confidentiality order that accompanied their access to Ceglia's personal computers.

What more do you want Bloomberg to report? This is clearly a big deal. I see how they aren't fully satisfying your curiosity, but currency and accuracy are probably more important in a news org than "most satisfying writing".
You are right. I didn't mean to downplay these edge cases as much as I did.

Is the concern that Facebook and Google's decisions are going to permeate so far it will become common place or that because these two social networks are the big dogs that it is unfair (for lack of a better word) for the edges cases to not be able to participate?
the important thing about pseudonymity is that it is transient. if, an hour from now, i decide i want to be sex_girl_69, i can do that and you're not going to know that's the same person as me. i can always come back to being notatoad again tomorrow.

you only have one real identity, and it is forever. a pseudonym might be a completely functional identity and just as real as your legal name, but the point is that it has a degree of freedom that you will never have with an identity built around a legal name.
A response to statements such as:

> it shouldn't be that damn hard to send some RC cars to Iraq to save lives

Actually, efficient resource allocation is usually a NP hard problem! It's very computationally complex, and the US Department of Defense is one the largest bureaucracies in the world. From that perspective, and depending on one's expected value for bureaucratic efficiency in relation to size, one could also argue that the efficiency of the DoD is surprisingly good.

What could possibly help the Department of Defense's resource allocation problems for such infantry equipment, and to open up the possibility for more off-the-shelf solutions, is to push acquisition demand down to the squad level as much as possible. You would more or less be giving squad commanders equipment purchasing credits to allocate independently of one another. This would simulate one the best tools currently available for resource allocation, markets.
The analysis was conducted by an independent forensics firm. There are many of those; Facebook is apparently working with Stroz, one of the best.
Or you have a "networked" light socket in each room and a discovery protocol to figure out what room to route the data to. More work on the initial infrastructure side, but then you don't have to worry about mesh- your room is covered.