skysight-inc/HackerNews huggingface dataset:
Simple question your front page should answer: does it work with web apps? As this is targeted at developers, I surely don't assume Mac OS and Windows 8 includes web apps.
I wouldn't hold my breath, but it's a nice idea.
No, because that'll select any post that contains any of those three tags, not the posts that contain all three tags. AND vs OR.

It's worth noting that I threw the SQL query a bone by denormalizing post_tags into one table. In a properly relational DB, you'd have a tags table, a posts table, and a post_tags join table, so the query gets even hairier (or you have to do two queries).

SELECT posts.* FROM posts
INNER JOIN post_tags pt1 ON pt1.post_id = posts.id
INNER JOIN tags t1 ON t1.tag = "foo" and pt1.tag_id = t1.id
INNER JOIN post_tags pt2 ON pt2.post_id = posts.id
INNER JOIN tags t2 ON t3.tag = "bar" and pt2.tag_id = t2.id
INNER JOIN post_tags pt3 ON pt3.post_id = posts.id
INNER JOIN tags t3 ON t3.tag = "baz" and pt3.tag_id = t3.id
WHERE posts.author = "Joe" or post.author = "Jane"
ORDER BY post_date DESC;

Yikes.

It's also worth noting that this generates a massive temp table to be sorted, which is very likely going to end up causing you to have to do a filesort. In practice, you'd probably break this down into 3 queries (forgive my mixing languages):

$tag_ids = SELECT id FROM tags WHERE tag IN ("foo", "bar", "baz")

$post_ids = SELECT posts.id FROM posts
INNER JOIN post_tags pt1 ON pt1.post_id = posts.id and pt1.tag_id = $tag_ids[0]
INNER JOIN post_tags pt2 ON pt2.post_id = posts.id and pt2.tag_id = $tag_ids[1]
INNER JOIN post_tags pt3 ON pt3.post_id = posts.id and pt3.tag_id = $tag_ids[2]
WHERE posts.author = "Joe" or posts.author = "Jane"

$posts = SELECT posts.* FROM posts WHERE id IN ($post_ids) ORDER BY post_date DESC;

Easily doable in both languages, but Mongo's denormalized structure makes this sort of use case a ton simpler.
The horrendous prose of U.S. Attorney Carmen Ortiz
Putting a great business card to good use from Jay Baer.
I assume someone at Google reviews and approves each one of these parameters that gets added, and each one of them has a good reason for existing (even if we don't know what it is or believe its a good reason).

As a thought experiment I figured if I worked at Google how would I quantify the expense of a query parameter. Users don't really know or care what URLs look like anymore as long as the page is fast, so apart from measuring the gallons of tears generated on Hacker News, I guess resource usage would be the first logical thing to look at right?

Assuming every search is exactly like the one provided in the linked article, and using some public numbers from 2011 on searches/day, these are the top 5 parameters in terms of bandwidth used just transmitting the key and value to the server.

gs_l	42.3 Mbps
bav	11.7 Mbps
bvm	9.1 Mbps
fp	8.7 Mbps
sclient 6.1 Mbps

For just the top 5 thats almost 78 Mb of inbound data per second. Being sent over end users pipes (which are often limited by upload), hitting my transit and peering links, passing through my routers, hitting my front end load balancers, being turned into GoogleInternalProtocolX and fanned out to dozens of servers inside the datacenter over switches and internal routers, and being logged on durable storage for 18 months (assuming they dump this extra data when they strip personal information from the search record). Wow.

A general rule of thumb would be for every 20 bytes you add to URLs by way of keys or values, you've increased the overhead of almost every part of the Google infrastructure by 1 MB per second. (Note I did switch from bits to bytes in the final conversion, and this number is sourced from shaky data to start with)
I suspect Nursie is being sarcastic.
This is a great question.

Pro Motion is a Pro Tool. I capitalize that because the Pro Tools can charge higher prices for a license to use their software, and nobody complains because professionals make that investment back right away.

Here are some other examples of Pro Tools: Adobe Creative Suite, Avid, Visual Studio and Xylinx ISE.

I picked the last two examples on purpose because Visual Studio and ISE are compilers. Visual Studio does a lot of languages but for simplicity let's assume it's just Visual C# and ISE does several languages but Verilog is arguably the most important.

The only way compilers can charge top dollar is by cheating: the open source compilers have demonstrated a higher quality, broader support, faster bug fixes and more features than their competition. Pro Tool Compilers can only exist on a closed system. For Visual C# it's Windows. For ISE it's the Xylinx patented chip architecture. It might seem impossible that enough professionals would be interested in an open source project that they would rather spend their time developing the tool they need rather than buying it, but that's what happened for C compilers. Even Apple releases XCode for free.

It may take years for other Pro Tools to become open source. The Gimp is not going to replace Adobe CS anytime soon. But it will happen eventually because as a professional I would rather have a tool I can customize to my needs. Adobe's move to always-online products is a huge turn-off for example.

So in the meantime there's a lot of money to be made by selling Pro Tools – but that's not where the market is going.

Selling a service may never be a money maker for Pro Tools; but professionals have to climb the learning curve anyway, even if they paid Adobe first. It might make more sense to look at how most professionals learn Adobe's products in the first place: they either pirate the software or learn it using someone else's copy (such as at school). They only really pay once they've entered the business world.

In the business world suddenly a service contract makes total sense! It might not be a service contract for the Gimp (hah! lol) but would it be nice if there was a company that offered enterprise training and support? Oh wait, Red hat, IBM, SAS, the list goes on and on.

Where open source would really make a difference is that anyone, anywhere in the world, could download the software for free (and not need to feel guilty about it). In fact, the feedback from professionals all over the world would be worth 100x what Adobe gets now from licensing fees.
"And if it were steel why would they bother painting the cartridge blue"

Do distinguished them from other rounds. When I was in the Norwegian military we had at list bullets painted:

Red: Blanks.

Blu: Plastic bullets for training. Cheap and less pollution then lead.

Yellow: Tracer rounds.
HBO comedy “Silicon Valley” – pilot script leaked
they called it the "glock 7"
If you want to share a Google search, you can always use the short and sweet: google.com/#q=keywords
We gotta do some soul searching if this is hitting the HN frontpage.
How else do you do it? Select the entire table and filter it at the application layer?
Alright then, I'm one of the authors of this book.

There are chapter and section headers in the book, but we've had a couple people using PDF readers on Linux who don't see them. Can you email me at pydanny@cartwheelweb.com and let me know which PDF reader you are using so we can test and hopefully fix the issue?

Thanks!
For me, SF and NYC have a huge advantage over Chicago and that is mild winters. New York gets cold, but not that cold and you can wait inside for the subway.

I spent two years in Minneapolis insisting I could take it, but the simple fact is that long, bitterly cold winters mean you end up inactive, indoors, cooped up at home more often than not. At least I did. It felt like wasted time, and Chicago is only marginally better.

It would take more than affordable rent and good restaurants to lure me back to a place with so many sub-20F days.
I am really interested in this, any tips for automation on chrome so I can use the omni bar and don't have to type !g ?
This comment is so facile someone could have written a script to generate it.
This doesn't have to be this way. The underlying machine friendly API can be hidden under a human friendly API abstraction.
A carne asada burrito can have anything on it. If america has proved anything its that we can take anything in your culture, completely change it, and still call it by your name.
FYI, the plugins are to remove the redirects Google splices into the actual search results in an on-click handler. So an upvote for you for actually reading the article!

It's certainly nice that DDG knows the minimum required to do a google search, and 'ddg.gg !g testing' saves ~5 keystrokes on 'googl.com/#q=testing', though you do have to wait for the redirects/form submissions.
So are you saying that "drug-addicted homeless person" is doublespeak whereas "shambling crackhead zombie" is neutral language? Because I think those are the phrases we are talking about, and I think the first is much more neutral.

I am confused as to how my attempt to assert the use of neutral language is coercive or being used for social engineering or how it is strong arming anyone here. I certainly don't want to be doing these things, so if I am I would appreciate being told how I am.

I would say that "economically disadvantaged sporadically sheltered substance abuser" is a lot more... Orwellian.
That's definitely a good take on things. However there's all types of data being published out there that can be used to try and derive sales.
I agree with you, but this should not be the #1 comment on HN.

There's a lot of interesting things going on here. But, specifically, I want to comment on the disconnect between legislators and reality caused by isolation from various aspects of everyday life due to the nature of specialization.

A lot of folks complain about lobbyist, but this a critically important role they play. They don't buy their votes as many suspect, they instead educate the congressmen they work with into believing what they believe. Or, a slightly more realistic phrasing is that they provide congressmen with the ideological ammunition they use on the floor and in the press to push their agenda.

In this case it's rather trivial, because currently 3d printed all plastic guns and magazines are mostly non-viable which explains why there are no lobbyist to help correct congress when they go astray. But the next time you call lobbying bad, just remember that lobbying is an important part of having informed legislatures.
How to Not Suck at Meetings
@rprasad:

1. You're hellbanned. By the looks of it, starting from a comment that shouldn't even have been that inflammatory (email pg. really.).

2. As to your comment and profile message:

I think a lot of what pushed the conversation towards "mob justice" instead of "whether his actions should even have been a crime" is that idealistic hackers have been making the argument to get rid of the CFAA and all other open-ended "unauthorized access" laws for quite some time, and are generally dismissed as unreasonable trolls. So rather than bringing up that same point again (which will still get dismissed out of hand by most people - I mean most people think that "identity theft" is actually a real thing!), "we" have to proceed on the assumption that those terrible laws are here to stay until digital natives become the majority, and can only hope to punish the prosecutorial bullying that made the threat of a three decade incarceration the price for a jury trial.
Good point - it's aimed at mobile and desktop apps. Web apps can do all sorts of tracking already via cookies, while native apps are completely sandboxed.
Met pydanny and audrey last pycon PH. I'll be buying this book in support for their awesome work. By the way, can we buy the ebook via paypal?
Not sure if this is related but I started using this goo.gl extension and it has been great to paste links in emails. I use it all day long especially for Google docs links.

http://goo.gl/Ya1kC
Maybe I missed it, but where are you getting this data from? It looks quite interesting, and I'd love to see more. Would you be willing/able to share?
Completely off topic, but this is literally the worst presentation software I've ever seen and I hate it when it pops up. It didn't fit in my screen, so I zoomed out (or whatever the pinch movement does), at which point horizontal scrolling stopped working, even when I zoomed back in. IIRC it didn't work at all on the ipad.

Is it really so hard to have forward/back buttons on the slide somewhere?
There was also a composite gun used in 'In the Line of Fire', a Clint Eastwood movie from 1993.
I'm just finishing off a project that was built using Mongo and I've run into this as well.

Other gotchas too, like feeling like you can store any old json structure in your db when you can't.

Dots are reserved because they're part of the query syntax. Fair enough, but it's pretty crappy to have to unpick a whole data structure because it was fine until a random bit of UGC was entered (that's where my last fews hours just went).

It does feel like the data and the query syntax are too crossed over to me.
It doesn't matter if they have runnable code if I can't get to it.
Concejos y Trucos para Android 4.0
Do you have a source for how it can "lead to broken data?" It's my understanding that autocommit simply makes postgresql commit a statement automatically after it's submitted, unless it's wrapped in a transaction.
Go is a language for young programmers who were perhaps brought up on Java or Python, but have discovered the "cat -v" mentality and are drawn toward it.

Or alternatively, for old C programmers who are well versed in the 'cat -v' mentality who have tasted a bit of Java and Python but simply cannot buy into those.
Hashes are very handy and that a strength of mongo.
However as someone using mongo on a daily basis (and often from within the console), i need to admit that performing query is hard. However if you are using it from a app you are building there are many library that make it easier.
No, it's just an immature website. I'm one of the creators. The site is just a hobby now among friends, and since we all have families, it's slow going. Thanks for the feedback everyone!
Markov Dustin Curtis hater strikes again!
Thanks, Sara! Yep - send me an email; I'm peter at getyog.com.
This is an interesting statement to me. My goal in retrieving data is normally to reduce the result set as fast as possible. If I only need a subset of the data, I would do the bare amount of joining, aggregation, etc. before paginating.

I assume the alternative is paginating server-side, which wastes some network bandwidth and processing time on the server.
Hacker News "Compromised?"
For 2-3 years now I've noticed that the submissions and top articles on Hacker News are really strange. The titles of each submission seem especially odd and depressing. Has someone been trolling Hacker News?
How about any cases where you don't want to transfer all the rows you're skipping over the wire? As in, nearly all cases?
I think conditional probability is more informative than number of examples
This is actually a feature we're currently working on. Thanks for reinforcing the need.
Indeed, C++ does neither have a comprehensible established paradigm of coding style, nor a consistent coding culture, as e.g. Java or C# do. It is very sensitive to the professional and personal qualities of a particular developer.
Why, because Kennedy's secret plan to stage false-flag military attacks on gulf coast cities is germane, but graphic design isn't?
I think you should read what that case was about (and that the US won and on appeal).

If I go on TV and make threats, then sure, the prosecution would have to meet that standard. If I meet you in dark alley with what you believe to be a gun (but aren't sure) and I make implied remarks about what might happen to you if you get caught wearing that watch, and maybe you can leave it with me and I'll be sure to return it to you when you're safe, then I'm going to jail. I don't have to say "Give me that watch or I will shoot you". If I imply that sleeping with me might get you that promotion, even without saying so, and I'm in a position to make it happen, then I'm guilty of sexual harassment. I don't have to say "If you fuck me I'll promote you".

Lets be clear. I'm not expecting Ortiz to be drawn up on extortion or racketeering charges. The examples were to demonstrate that a "true threat" does not require the defendant to say "I intend to X on date Y" for it to be taken as a threat or proof of intent.
Whenever I see one of these retirement calculators I don't understand how people save enough to actually retire. Are most people really socking away 25%+ of their gross income every year?? I certainly enjoy motorcycles and exotic travel far too much for that to ever become a reality (not to mention pay rent in the Bay Area and try to maintain an organic/local-sourced diet which costs about double a typical grocery store).

Now you know why everyone out here wants to do startups: it's the only way to ever retire!
http://site.icu-project.org/
What was wrong with ROW_NUMBER()? It worked just fine for me, and partitioning was frequently useful.
It isn't. He asked if the guy was OK having his mail published. The guy said yes. Anyone who says Curtis got him fired is saying a lot more about their biases than about anything that happened.
For the record I was not "trashing" C++, I like it more than most languages and write it every day. The code I work with is mostly at Google where we have a style guide that defines a pretty nice C++ subset: http://google-styleguide.googlecode.com/svn/trunk/cppguide.x...

I was just saying that some of the complicated designs you can express in C++ are a bad idea.
It's probably fair to compare 7.62x39 with .30-30 (very similar ballistics) .30-30 seemed to have played a core role in the Mexican Revolution. Pancho Villa is almost always depicted with a Winchester 1894 and bandoliers full of .30-30 cartridges. Seemed to work fine when going up against Federales who were armed with machine guns and armoured cars.
I agree that using data as templete is great. This is a typical example of "The value of value"(Rich Hickey's speech).

And I think client side have a bit different requirement compared to server side.
At client side, I often need to manipulate specific element instead of root element which crate and dommy return.
So I forked crate in order to get a collection of created elements as a hashmap.
https://github.com/hozumi/crate-bind
This is useful. I will create dommy version of this.
That depends upon the definition of "entire table". Most situations have already pre-filtered data to some reasonably small quantities -- e.g. category, genre, exchange date, etc. Yes, caching and working on that set is almost always the superior option.
[edit] I realize there is a lot of buzz around being "NoSQL", but seeing how you support similar concepts: join, count, group, where - why not provide at least a partial SQL interface for the features you do support? Even mysql originally did not provide "all" features of SQL e.g. no foreign key constraints and probably still multiple features are unsupported in mysql but at least with a sql interface it is easy for anyone to quickly pick up the DB and start integrating it... plus SQL is actually a really nice "Query language"... IMO... and perhaps many others too...

- p.s. love the demo video looks awesome how easy it is to use and I like the query language you created looks nice too.
> Obviously nowhere else in the U.S. is going to rival the weather experience of the CA coast.

Did you not read the article? :-) Seriously, summers in the city (of San Francisco) can be miserable, at least insofar as your definition of summer includes wearing fewer clothes and dining outdoors. In general the coast of California north of say, Seal Beach, is not an enjoyable place to be after sunset, anywhere. Even in LA it's usually about 60 at the beach in July at night. I've never understood the massive gap between marketing and reality when it comes to the weather in coastal California, despite having spent half my life here.

Medellín, Colombia is the place I have been that comes closest to achieving what California peddles.
If I was an artist considering this, I would want to see a video of the reviewing artist as they listened to my song. I would want to see their facial expression, and see that the reviewer seems like they know what they are talking about. Also, if I could listen to the music of the reviewing artist, I could judge if the review has any merit.
Coming as an Australian, where our brand of English is inherently lazy and involves skipping syllables wherever possible, the idea that you would frown upon a simple shortening of the name is ridiculous. Frisco does sound pretty lame though, I can understand that one.
Don't get me wrong, I'm not at all a fan of the system setup by Elsevier et al. There's a lot that can and should be done to overhaul and scale back our system of copyright and other "intellectual property" to work better for the progress of society. I'm just also not a fan of the concept of "the ends justify the means".
You might like coffeescript.

db.orders.aggregate [
$group:
_id:
cust_id: "$cust_id"
ord_date: "$ord_date"

total:
$sum: "$price"
,
$match:
total:
$gt: 250
]
From his Google+ post

"Yesterday (as reported by the Wall Street Journal and elsewhere):

"At no time did this office ever seek – or ever tell Mr. Swartz’s attorneys that it intended to seek – maximum penalties under the law."

And July 2011 (as posted by justice.gov itself):

"SWARTZ faces up to 35 years in prison, to be followed by three years of supervised release, restitution, forfeiture and a fine of up to $1 million""

Stating that a person faces x amount of years is not the same as saying we are seeking to put you in jail for this many years.

Correct me if I am wrong, but this is how anyone who allegedly broke the law would be treated. The law you broke states you can face up to x, y, and z for breaking it, but hardly anyone gets that maximum sentencing. Hell, even murderers rarely get the maximum sentencing.
How is a query not data?
Mongodb queries are much easier to dynamically build than SQL. And this is so because Mongodb uses JSON for queries.
Well the original post was about the results pages. These urls are the redirects when you click on one of the results.

This seems like a bug in Safari though and not an issue with Google's URLs although I admit they are not too pretty.

An alternative to trying every link would be to try a different browser.
It does bring up an interesting ethical scenario with respect to 3D printing. You can ban the sale of high-capacity magazines all you want, but if it's simple to just make one with a 3D printer the point of the law is completely moot. Since the law won't ban making these magazines (to not conflict with US manufacturers exporting these) and the law won't outlaw the existing magazines, this is a huge loophole.

And magazines aren't anything special, definitely something that is perfect for 3D printing. Simple designs punctuated by slight one-offs - depending on cartridge size, cartridge count, and weapon fit.
I Quit Email and Email is Broken (Shoot me in the face)