skysight-inc/HackerNews huggingface dataset:
Hacker puts a video cam on an RC truck and saves the lives of 6 soldiers
Martin Fowler is a well-respected thinker and leader in this field ... Software patents are treated as an asset class that can easily be bought and sold, like a stock or bond. There's a big market for them. And that's a big problem. The acquisition of these assets generally means that the inventor -- the entity that patent laws exist to protect -- is out of the picture, leaving those with big money the ammunition to sue, but perhaps not the ambition to innovate. Patent law is long-overdue for fundamental change.
How basic are those questions if you don't mind me asking for details?
Prolog also has syntax for if-then, so

x(A, C), x(A, B), x(B, C); not(x(A, C)).

can essentially be re-written as

x(A, C) -> x(A, B), x(B, C); true.

(This saves testing `x(A, C)` twice. Also, `->` implicitly cuts, presenting backtracking over `x(A, C)`; but that shouldn't matter here.) However, this set-up mistakenly has `x(A, C)` as the antecedent; I think you actually want it as the consequent.
It depends on the environment and personal preference. If I remember correctly, Linus Torvalds never works with a debugger either. A few years ago, when I was still doing desktop software, I used the Delphi and MSVC debuggers regularly. Now I do mostly web-based stuff and I find that unit tests and logging have largely made a debugger obsolete for me.
I find analyzing trace statements to be far faster than setting conditional break points and stepping through a debugger.

I can quickly run a test, grep/skim through the trace output and ignore/drill down into detailed minutia that are irrelevant/relevant to the problem being investigated.

I also tend to write my trace statements in an easily parsible format so if I need to I can write another program to analyze what happened and find the problem. Writing a full on program to process log files happens less often than chaining several unix commands to find the needle in the haystack (usually the program happens when I need to thread together several widely separated trace lines).
Would you trust your life on a computer not being able to count from one to ten billion? From one to ten million? From one to a thousand?

Computers can, in fact, trivially do all of these things. Counting to large numbers quickly is what they do best. Accordingly, if "Guess my large number" is sufficient to remote control the machine, then that's a pretty critical finding.

And there is no work that the attacker can do which will make his life more difficult. Trivial inspection of any machine establishes the upper bound of how hard it will be to compromise. Any attack he can use to reduce entropy only makes that number shrink, potentially radically. We would worry if you could shrink a 2048 bit keys even by a bit, because it suggests a hidden systemic weakness. The second serial number examined is likely to shrink the keyspace - which will not be 2048 bits to begin with - by tens of bits.

There are classes of attackers for whom killing a single named individual is not a goal. "Oh drats, we were only able to kill fifteen people chosen at random from this hospital, Superdome, or session of Congress" would not br a failure condition for them or a victory condition for the public.
If your mother doesn't have skype installed she wouldn't get this message. If she does, I would presume she knows what skype is for.

Additionally for the big system-level intents there is an "always use this action" which is useful so you don't have to repeatedly tell it to use the phone app to place phone calls.
A large list of misused words and historical explanations
The problem is that transitive builds up a relationship between a functor and it's variables by trying to unify them with already known facts.
But no new fact is generated.

transitive(Functor) :-
Rel1 =.. [Functor,A,B],
Rel2 =.. [Functor,B,C],
Rel3 =.. [Functor,A,C],
call(Rel1),call(Rel2),call(Rel3).

descendant(a,b). #fact1
descendant(b,c). #fact2
transitive(descendant) ;; says 'no'
descendant(a,c).
transitive(descendant) ;; says 'yes'

This functor only tells us if the database has a transitive relationship recorded.

If one wants the truth to be derived from the first two facts one would have to say

transitive(F,A,B,C) :-
R1 =.. [F,A,B],
R2 =.. [F,B,C],
call(R1),call(R2).

which derives transitivity from the first two facts, the last relationship (R3) is what we want to conclude, not what we want to find in the database.

Neither call though, will derive from fact1 and fact2 that "descendant(a,c)." is true. To arrive there you would have to "assert" these (new) facts explicitly in the transitive(...) definition.

But Prolog is not my comfort zone, there might be (and probably is) a way out of that dilemma.
I want to accept this advice, but it does go against the basics of risk taking. Also, not to pick on you, the article seems to fall for this too.

I'd say 90% of the stupid things I do are because I wanted to do something new or risky and as such I have a neophytes mind. Sure, when I start to hit an intermediate level I can then self-analyze and make that jump from average to 'sometimes good' but I can't do it all the time and I sure as hell can't do it in the beginning.

So lets look at interviews. I've been on a few. I've played the ultra-conservative role of being super-careful and treating them like I'm on trial. That approach doesn't seem to work. I've recently played the role of someone who is very socialable and even tells a joke or two and other "stupid" behaviors

Hey, you know what? It turns out most humans are far, far from these rational logical creatures. They aren't thinking "Lets fill this position" they're thinking "Lets hire someone I can work with who doesn't seem like an overserious ass or a nut and has at least the basic competency to understand the job and learn more." Geeks of the world need to understand the great importance in social skills, risk taking, socialization, understanding social culture, etc. The idea that we can just solve everything by being super careful and super critical of ourselves is not a smart strategy.
Recent progress in Debian/kFreeBSD
But I would hope that even Teenage Sociopath is smart enough to figure out that this is equivalent to just shooting up the clinic with a gun.

Or, even if you think he's less likely to get caught, the world is full of undetectable opportunities to kill random people. Poison the fruit at the supermarket. Sabotage the train line. It doesn't happen very often.
I agree. I liked his post and I mostly agreed with his views, except that one that patents enabled the industrial revolution. I don't think that's true at all. I think progress in technology (and in other fields as well) happens by building something and then allowing others to build upon it. Having a patent is not the main reason someone wants to build something or to bring it to market - not even close.

This is a good video on this (about how the steam engine, the light bulb, Ford automobiles, and other breakthrough inventions came to life):

http://vimeo.com/25380454
Why would anyone try to figure something like this out? I don't think any real hackers are going around trying to figure out how to kill people, they want money or something else of value (not to say a life doesn't have value).

Why as a community are we allowing things like this to happen, even worse, publicizing them and acting like its 733t and impressive. If something like this happened at anything other than the 'Black hat' security conference this wouldn't be alright.
Don't people get paid to look for security vulnerabilities in pretty much any engineering field? There are people who work full-time on thinking up ways that a terrorist could potentially rig a chemical plant to release deadly gases, for example.
Show HN: Weekend project - Give some Propz
A different problem to the 'non-first-class-ness' of clauses that others have mentioned is that Prolog is really just a unification engine, not a reasoning engine. Thus, even a manual definition

x(A, C) :- x(A, B), x(B, C).

is not always a good idea. For example, if you put this clause first (in the definition of `x`), it'll always try to reason by transitivity, rather than ever checking directly. The sub-clauses will then be checked by transitivity, &c. This is easy to fix by not putting this clause first; but then you run into further problems if `x` is reflexive; consider

le(1, 1).
le(A, C) :- le(A, B), le(B, C).

Now

?- le(1, 0).

will unify with `le(A, C)` by `A = 1`, `C = 0`, and then search for `B` such that `le(A, B)`. It'll put `B = 1`, and then try to solve `le(B, C)`, i.e., just `le(1, 0)` --and you're at the first stage of an infinite loop.
Congrats Aaron!
Antiproton ring found around Earth
The example in the blog was good enough and made me understand it quite well, but you nailed it in two lines. Very nice man, thanks.
>you'll probably need a license for something to build a printer in private

Absolutely not. That's half the point of patents, research and personal use are absolutely allowed. Commercial use is disallowed without a license and [sensible] licensing can be forced by recourse to the courts in most jurisdictions.

You can build the printer in private, you can't use it commercially or sell it.
I picked up a Brother laser printer for ~$70, and it'll print thousands of pages on a single cartridge.
Linus has a good take on IP in general in his book http://en.wikipedia.org/wiki/Just_for_Fun

Wonder if he's changed his mind since?
Huh? require is used quite a bit: exercises 12, 25, 43, 47, 48, 50, 52. Some exercises depend on sinatra, some depend on test/unit, some depend on stuff you write yourself.
"Why? Because these things are awesome, and form the foundation of our culture." -mechanical_fish
Show HN: How long will it take me to make a million dollars?
Autoupdating is not possible on any mobile OS I'm aware of, for security reasons. What should happen is Google (and Apple and Microsoft, etc.) need to implement autoupdating at the OS level. With user permission, of course.

And I mean true, silent autoupdating. When a developer publishes a new version of the app it should download the package, then apply the update the next time that application is closed.

As for your cynical observation, I doubt there is any conspiratorial reason for this. I think it has more to do with Android operating more or less like an independent startup inside Google. I think the Android browser would be much better if the Chrome team was behind it.
sexist title (and the use of a COOKING METAPHOR for chrissakes). surely this is why there are so few women in computer science.
". It's not uncommon for programmers to talk about patents they've been involved in getting and how they know how absurd they are. I know it's easy to get on a high horse here, but I do think that any programmer who cooperates in getting a baseless patent should be ashamed of themselves."

Patents are a mark of prestige. Even if for something silly.
Forget WiFi, It's LiFi: Internet Through Lightbulbs - Technology - GOOD
Try embedded systems programming, speed is usually pretty crucial there.

I've met a guy who runs a company of about 6 programmers doing this, has more work than he can handle and has difficulty finding good enough programmers. I think they're mainly C++ but were recently trying to find a C# guy.

So it's in demand, but you've got to know where to look.
Headline: "Google Researcher Exposes Flaws In Sophos Software, Slams Antivirus Industry"

Inside: "Ormandy works by day as a security engineer at Google but said he was representing only himself at the conference and that his research had been done on his own time, without the company’s knowledge or support." (my emphasis)

I sense...Bullshit Title Tacked on by Asshole Managing Editor.
I do agree that it is confusing and wrong of the police to just ignore it, but what can they do? What evidence does the police have that would indicate that this is not his (the taxi drivers) phone?
Note that there's another flaw: `transitive` as defined only checks if there's one instance of transitivity that works. If you wanted to check (rather than assert) transitivity, you'd need something more like

transitive(Functor) :-
not(
call(Functor,A,B),
call(Functor,B,C),
not(call(Functor,A,C))
).

(It's been a while since I've Prologged, so I may be forgetting something subtle about why you'd need to use the dribble `=..` to build something callable; but that's not the point, of course!)
I suppose there are, but I'm not so sure they have fancy open conferences devoted to chemical plant terrorism.

Like I said, I don't know where I stand.
8 ways to network with Twitter and Google+
It's majority rule — even if only 10% believe it
From scarcity to abundance
Sophail: A Critical Analysis of Sophos Antivirus
Coding in French
I think by stop doing 'stupid shit', you mean learn the fundamentals properly.

That's what your piano teacher beat into you (not out of you). That's what those chess drills taught you.

Fundamentals.

Fundamentals are never taught properly for anything.

I say this a programmer, a former music student (university level) and someone who's learned alot of shit.
"You are missing the point, if the entropy is sufficiently low then it is feasible to guess."

not really - if entropy is low in a lot of things - it's feasible to implement a disaster scenario. wireless systems across lots of things are not encrypted and so the same logic applies.

"you might know a bit about them"

we'll you really 'would' have to know 'a lot' about them if these devices had high entropy. which - if a person was indeed killed by this method - an autopsy would show either a spike or lapse in delivery of insulin. such a lapse would immediately lead to an investigation as to why the unit did not respond ?

evidentiary burden then progresses.

i'm not disagreeing with you in the seriousness of the discovery - i just think that these devices live in a nano-constrained world. implementing increased data encryption increases cost, power usage and the like - it's a difficult balance. now this has world attention - even 'basic' encryption is really useless since even it could be hammered.

so do you implement serious encryption - but in doing so - reduce the utility of the device so that it lacks the means to do what it is designed to do ? deliver insulin.

On the basis of a huge number of "if's" involved. i'm not convinced.
Ah, finally an explanation of why marketing material is total crap and I have to talk to a clueless idiot who doesn't know any technical details, or will make incorrect technical promises.

Thanks "funnel". I hate you.

Sincerely,
Every Sysadmin who ever had to buy anything.
Win 10 Books From Sitepoint, Learn how to Design and Market WordPress Themes 
Hey Freebie Friday fans, we’re back! Teamed up again with our friends from AppSumo to give away a new ebook from Sitepoint that will rock your socks off! The book will teach you how to develop your own custom WordPress themes and how to sell them for passive income. Scroll down to see how 10 of you will be able to read the book over the weekend for free! Attention: it’s a 24h flash contest!
I don't know how it would be handled but something has to be done about such blatant abuse of the legal system. If any company files suit but offers to settle for lower than the cost of defending and states it that way in the offer, then I fail to see how that is not extortion. It would seem that you should be able to go before a judge and show the settlement offer to have it ruled so. To me, with this case the defendant's legal fees shouldn't have been as high since the judge should have tossed it almost immediately.

This type of thing is going on across the country and not just in patent infringement cases. You have people all over the place clogging up the courts with suits that are essentially extortion using the law in unintended ways. This has got to stop before we've all lost total confidence in our legal system.

Of course, it's almost a joke now as it is...
Research like this is really important. For all we know this type of hacking may already have been used to assasinate someone.

Now that this is public there will be a huge pressure on the manufacturer to secure their devices as quickly as possible. If this hadn't been released, there would have been no pressure on the manufacturer to fix it and the assasins could theoretically proceed undetected for a long time.
I'm not really

﻿

a fan of the padding

﻿

on these "new looks".﻿

Also, I liked the little headers that said earlier this week, earlier this month, etc.; why did those have to go?
KataFour, regarding data munging, makes me smile...I've had to do this so many times while wondering, "Is this hard just because I'm doing it the wrong way?"...but it's good to see it's worth a brainteaser exercise.

The weather.dat file in particular is like a vexing issue I've come across when converting PDF tables to text and then writing a script to delimit them. You can't just use a regex because some rows are entirely blank for some fields.

I wrote a solution here for PDFs I had to munge for work:
http://www.propublica.org/nerds/item/turning-pdfs-to-text-do...

Basically, you start with some regex pattern as a delimiter and loop through every line and record the left-most position of each value. Then you compare it to a global array that stores the left-most position so far found in the document for a particular column. If the current row has a column x that starts farther to the left than the global array's column x, then that must mean there is a column between x and x-1.

There's some tinkering that has to be done with that, especially if the PDF to text conversion was ugly. But it would work pretty well for this particular set of data.
is it me or this is confusing?

"Define a function named generate that takes one argument, a function f. It should return an array that consists of the function f and another function that doubles its input."
Forbes.com Vulnerable to XSS injection
You also could have gone to the card catalog and measured the number of cards in feet with a tape measure. That's indexing your database.
It's not notable that he was able to explain it to his wife because she's a woman, it's notable because she's not in the field. This is really pretty obvious (and explicitly stated in the article).
I agree with all your points, but just want to add that I've seen very ugly code from EE-types (I'm a EE). An outstanding board design and audio/video engineer I worked with avoided loops whenever possible cost because they "made the code confusing." However, his FPGA code was immaculate. I chalked it up to a parallel versus sequential thought process that mirrors the differences between hardware and software.
Microsoft offers 'mad loot' Bluehat prize to entice security developers
Can anyone confirm that there are toner cartridges that stop working after a set number of pages? I thought this only applied to inkjets. My (10 year old) laser printer will happily print until the pages become unreadable - and then some more and some more after shaking the toner cartridge.

I think an open source laser printer would be an insanely cool hardware project. Although probably not cost effective due to the complexity, at least you would know exactly why the paper jams occur!

But you never know, the IP0X open source hardware project has had great success with getting chinese manufacturers to produce affordable hardware: http://www.rowetel.com/blog/?page_id=440 some of which can compete with very expensive "mainstream" offerings.
Securing Mobile Devices May Be an Impossible Task
Home server build, part two – assembly
People like this author and the people whose complaints he propagated convinced Socrates that the Oracle was right--because he was the only person who was aware of his own ignorance.
I don't think you are propagating that others should follow the path you chose to take, but your theory does sound flawed to me. Here is a better way to put why a company should promote egalitarian work culture:

Men and women generally (not always) bring different perspectives in approaching similar problems. If you are a startup launching new products, this provides you an ability to take in different view points and collaborate to figure out the best path. Therefore, its in best advantage to have top notch women on your team, not just because it creates a 'pleasant' workplace environment, but it will help you succeed.

To answer the top-performers behavior question, I am sure there is a difference in behavior in mixed vs. single gender environment and I think the reason for that is they now have a set of individuals amongst them with different perspectives, thats it :)
The author of this paper seems to have a reputation for irresponsible disclosure (just google his name) and was called out on it by, you guessed it, Sophos:
http://nakedsecurity.sophos.com/2010/06/15/tavis-ormandy-ple...
I'm definitely not "programming famous." My boss, Joel Spolsky, is though (I work for Fog Creek Software).

I don't know Zed personally either. He was a bit skeptical about me doing this at first, but he was ultimately really cool about it because I respected his terms, and if at any time he told me to ditch the book, I would have.
Ask HN: Apps that are Made in Israel?
I am writing an article about popular iPhone/Android apps that are gaining worldwide attention for a popular Israeli startup/vc blog.

I'm looking for names of apps that were made in Israel (or by Israelis). I have found top 10 lists, but am finding it hard to search for apps by the location of the company that has made them.

Hopefully the Israelis here will be able to help. :)

Feel free to shoot me an email.
Agreed. It's like saying "Hollywood hits 1 million films; YouTube does this in 3 minutes."

Facebook allows photo uploads; Flickr is a photography site. A world of difference.
New iPhone App Aims to Offer a Glimpse Beyond the Still Photo
The Weekly World News once reported that a new, deadly computer virus could make your computer explode. Seems sort of prophetic now, given the media frenzy. http://books.google.com/books?id=9ewDAAAAMBAJ&pg=PA40...
HTML5 Feature Support Detection
Saw Eric speak at a DC Lean Startup Circle meetup event... excellent presenter, highly recommend watching the video or seeing him in person if possible.
Me too. I am actually reasearching heuristic engines and I can assure you that there isn't a research field so mysterious and jealously protected as antivirus technologies.
How You Can Nake Legally $1000 In One Night In NYC
The blog post asserts that these standards should exist, lists some non-obvious things that will need to be developed by someone, and makes a case for their potential profitability, albeit a weak one I'll grant you.

I don't understand why you're taking such a negative attitude with the suggestion. Not every blog post on the world-wide web is written with the intention of outlining the solution to the described problem, unless that's really what you're taking issue with.
You beat me to it. David K. Levine is a highly regarded economist and game theorist. Boldwin and Levine state that Watt, like many inventors who obtain patents for inventions that were conceived by several people around the same time, was able to take advantage of the legal system because he was well connected. Watts' case illustrates a pattern that was to repeat itself endlessly: a moneyed inventor makes a minor modification to an existing design, and deploys his superior legal and financial resources to obtain a patent. Nice work if you can get it. James Watt spent more than half of his time litigating against other inventors with superior steam engine designs while he held the patent. When Watts' patent expired, he went into business consulting on steam engine operation--a business model similar to open source software consulting today. Marconi had the legal and financial resources to wrest the patent for radio from Tesla. Marconi's innovation was the addition of a ground wire. Tesla was posthumously awarded the patent by the US Supreme Court when Marconi's company sued the United States for the wartime use of radio.
Unemployment rate slipped a notch to 9.1 percent in July