Show HN: Hacker News Simulator
news.ycombniator.com
news.ycombniator.com
The way to beat a Turing Test is through hiding in plain sight.
1. https://www.reddit.com/r/SubredditSimMeta/comments/3fnkni/9g...
2. https://www.reddit.com/r/SubredditSimMeta/comments/3kwmnj/9g...
What comes to mind for this Hacker News Simulator is the modern equivalent of da Vinci's sponges: an ink blot which you can use to come up with completely new and novel ideas by forcing unexpected connections. And because the topics here are in some way related to hacker news the result could be filling in enough blanks to produce something newsworthy (i.e. an actual good idea instead of a garbled markov chain.)
To make the most sense of this, it helps to read Richard Wilhelm's translation and annotations of the I Ching. If you don't read German, then Cary Banes's translation of Wilhelm's translation is pretty much the only one out there. Unfortunately still under copyright (ha ha... on 5000 year old document). But it is widely pirated on the web.
I often wonder if the random "predictions" of the I Ching were originally just a way of studying. There are 4096 different transitions to look at, and approaching them systematically would be painful in the extreme.
I've spend some time to see if the transitions actually make sense and from what I can tell, they do (modulus my ability to fool myself into seeing reason in things that have no actual reason). I wish I had enough patience to actually study it ;-)
Hopefully you are real. :)
Took me a while to figure out that this was actually a fake :-(
"Wait, how did Hacker News get opened twice?"
...
"Eh, I'll just close this one." (You can guess which one I closed. :P)
[One pile of middle-clicking later]
"Wait, ycombinator is defaulting to opening comments now?!"
I noticed the "ycombniator" shortly after that.
I wish those links were real :(
- http://news.ycombniator.com/comments/comments_198.html: "Git 2.0 changes push default to using only CSS3 - No more remote work work: An adventure in civic hacking (scienceblogs.com)"
- http://news.ycombniator.com/comments/comments_210.html: "Show HN: Farmly – find anyone for anything you want and keep the Olympic germs away. (nowthenapp.com)"
- http://news.ycombniator.com/comments/comments_208.html: "Twitter will pay for anything [Product] (skullsinthestars.com)"
- http://news.ycombniator.com/comments/comments_184.html: "Ask HN: Angry/hardcore rock music to code the summer away, stuck for ideas to practice/exercice a new UI designer/programmer (NYC)"
- http://news.ycombniator.com/comments/comments_190.html: "Is GTK+ the real reason people are startups using? (blog.cto.hiv)"
My responses ranged from "they're doing what to Linux now?" to "that one sounds cool..." to "that's true..." to "...of course I'm clicking that" to to "hm... well they must be going for an Indian motif".
And somewhere in there I was like "wow, /r/titlegore meets HN."
I'm very dense though. This was really well-made! :D
I still wish that 4th link was real. Like, I have a different taste in music, but I'd so reply to that. lol
That is a CI solution I'd love to see :)
You may return to your life simulation.
Or maybe "Swift Language Will Instantly Know Everything About the Origin of 'The World's Dumbest Idea': Milton Friedman".
Perhaps a future enhancement might be to partition comments by the submission domain, i.e use only comments for github.com stories for fake github submissions, might generate very different text than a munge of every comment.
Or if you want to get more complex, find the reddit comments for every link that was submitted to HN and use that (but you have to be careful that you use "hacker" related reddits or it will sound too "reddity")
As well as keeping comments by submitted domain.
LOL
https://news.ycombinator.com/item?id=9453454
Edit: To be fair, this version generates plausible comments and has subjectively funnier titles. :)
some of my favorite so far:
> Debunking Myths About Growth Hacking Goes Bad (infoq.com)
> First Firefox OS developer to come (businessmandi.com)
> Modern science and art go to jail? The law is dead in cinema (techcrunch.com)
> A Browser Package Manager Command Line Client Written in Lua
> TweetDeck taken offline after bug allows malicious code execution on Android - eBook
> True hacker resume: CV as Python objects to/from Amazon S3 price cut for all your OK Google searches predict market moves
Hahahaha!
> Ask HN: Optimal number of sets with high IQ users?
> TweetDeck taken offline after bug allows malicious code execution on Android - eBook (spinejs.com)
> Docker Swarm on Raspberry Pi Units Available In GNOME 3 Released (spectrum.ieee.org)
> Show HN: nnmm – A feed of your print or paper books
Isn't this just a pile of books?
>Small Utah ISP firm stands up to the Faces of Facebook popularity, I quit.
>UI7Kit: Add one-line to enable AirPlay video for your startup on Product Hunt
lol.
> You don’t need any HTML theme/template into your murder trial (ft.com)
> A&E's 'Duck Dynasty' Stunt is a user is Steve Jobs’ Unfortunate Contribution to Computing
> You're trying to solve bugs or problems. >> It's like chess, or gymnastics, or baseball, or anything, just that it vanished overnight. > I've also seen discussions of how your data structures without hunting down some raster graphics, I fire up Uber first. > Your love of Pete, don't just repeat it with your keystrokes. FWIW I had never thought those 30 servers would be classified as unlawful combatants, removing their legal protections then go for them.
Google wins 15 days in orbit! Whee!
The comments are pretty great, too.
> Hang in there, say "Pizza" and it certainly has a lot of leverage because they're frustrated. Worst case: Someone sees your duck and you've got a new revenue model was (otherwise it was something I loved it, and they LIVE here.
Just hang in there, say "pizza", and make sure no one sees your duck.
I just ..
> Protesting with a python port of ZFS on Linux
> Ten Rules for Web 2.0 sites and URL obfuscation
> From 0 to 8-figure revenue in spite of flat UI design and email
> How can I get asked how I thought we were wrong.
And the most HN one I've seen so far:
> Entrepreneur crowdsources decision to quit Silicon Valley
Brilliant work. Truly monads in backport VM scandal-worthy.
Well played.
edit: lol, seems I'm not the only one.
That was a real "smack my head" moment.
EDIT: I have a cached version of the exercise if anyone feels like looking at it:
https://github.com/AdmiralAsshat/learn_python/blob/master/go...
There should be an "alice.txt" in the same directory as a sample file to throw at it.
10 I am to tired
20 Just read one more story
30 Goto 10This is so real
> Google wins the Book Search settlement gives Google 15 days in orbit (bostonglobe.com)
> Pussy Riot members jailed for posting photos to raise your hourly freelance rate (arabcrunch.com)
> Microsoft launches Bing Booster program for exploiting weakness in smart phone (blog.geeksphere.net)
> Tell HN: Rejected from App Store due to a charitable project, continue in 2012 (askgolang.com)
This is perfect. Well done.
http://thedoomthatcametopuppet.tumblr.com/
HP Lovecraft + Puppet Documentation
EDIT: Looks like the garbled characters were fixed.
That's a weird auto-generated comment[1]. I wonder how much of it is random selection and how much is seeded text. What were the units that combined to form this?
[1] "Ask HN: Pure client-side PadMapper would be great as jobs? What a senior Rails dev?" post).
> We had an inkling that something that someone is logged in to a traditional incandescent bulb
FYI, cicking on the "<#> Comments" link from within a comments page leads you to a 404.
http://news.ycombniator.com/comments/comments_286.html#
And some of the Ask HN actually make sense too :) , I mean "Ask HN: Are there any good MOOCS/Online resources for learning TDD?"
But others are almost but not quite there: "I'm an 18 year-old front end GUI development?".
>I miss Google wave invites going for $26 a month (srikarg.github.io)
>Ask HN: Is there a good, standard capped convertible note paperwork?
>NSA leaks: David Cameron cracks down on Apache Quitting JCP: 'Oracle Is the Fear of Macros (techcrunch.com)
>RSS.gd: the RSS icon was mistaken for the end of the Union at CoreOS Fest 2015 – Call for New Startup BitcoinDeals is Launching its Own URLs? (technokyle.com)
I wonder why he stopped then?
I increased the zoom of this site (the original font size is just too small for me), so when I opened this link and noticed that the zoom was restarted I immediately became suspicious.
> I've pulled every comment and story from HN through the API and make a bunch of Markov chains to produce story titles and comments.
Can't make up my mind . . .
[1] https://truongtx.me/2014/02/28/tree-structure-query-with-pos... [2] http://stackoverflow.com/questions/603894/is-postgresqls-ltr...
It works a treat as you can query the whole tree in one SQL statement but preserve the nesting for formatting.
EDIT: I've been thinking some more about this. Another possibility would be to limit the depth of the tree to, say, 8 (which should be reasonable) and then make 8 fields, one for each ancestor (parent, grandparent, and so on). Changing the tree will become a nightmare but all queries for subtrees will be blazingly fast.
Query performance obviously matters, but with a HN like site, it's probably not going to be so critical that limiting the depth of threads is even worth the effort.
I find that you don't even have to worry about treating the data as a tree in most cases until the very end. What you want to actually deal with is a flat array with the ids (root,parent,id) arranged in rendering order, and to have the tree built in the HTML. The data set from the DB doesn't even have to represent the tree structure directly, as long as you can sort it elsewhere.
You can even have two arrays - one (say, an associative array) with the data, and another basic array with the ids. Sort just the array with the ids, then use those as keys to iterate the data array when building the html, so you can avoid ever having to sort the larger array (which as luck has it just happens to be optimized for non-linear access anyway.)
I should probably mention, I thought this was terribly clever when I did it in PHP, before I was aware that all arrays in PHP are basically the same, so it was mostly pointless overoptimization.
Building something like an unordered list in HTML from that array then becomes a matter of adding or removing <UL> elements based on the relative change in depth for each subsequent id. Depth is easy to find by checking if an item's parent is (or isn't) the same as the id of the previous element. The actual tree never exists in code until the unordered list is rendered in the browser.
Also here's a good reference on Stack Overflow of different methods to do the same thing: https://stackoverflow.com/questions/2175882/how-to-represent...
If you actually know what you're doing beforehand, probably ignore everything I just said and go with nested sets. My method is, admittedly, naive and better programmers are probably chuckling at it over the beverage of their choice, but it does work and it seems to be decently fast.
Is "deep learning" more than statistics and randomization?
Correct. It is a perfect simulation of HN.
And to add just a slight bit more substance to my comment, while I was reading through all the comments here my wife asked why I was laughing so hard. I found it really difficult to convey why, but I guess that's the nature of this type of humor.
{"text": "The article was in client 70, or a Denmark, is common captured - and I very well needed to be when they picked out time reports, all the reader or warning detectors and tools and proxchit matters. It also comes up with all levels of me using legality as it is that.<p>That helps a fly of Intel companies through it, but I'm importantly convinced the UI book the impression of orderly research on this afternoon. Personally, it also has a hash but mass measure all the Web working issued and leased across the question of my commercial group of interfaces. The various currents, others avoid their BitCoin better than one game (which is obvious, and form my position for hours at the software itself).", "author": "nostrademons"}
{"text": "Neither care to censor other people (\"infrastructure\" type by development! Neuroscience, flying migrations.)<p>Relevant comment was not finished at the moment. If that appears to be the case that, but ones are a real body.", "author": "pavel_liah"}
{"text": "<i>But just surely this should simply escruble him critically though I laudf. </i><p>It's taken as a more extreme shark to manage hcpm-infolves. However, I'm great, laser mortality, one of the aight payment.", "author": "jacquesm"}
{"text": "FtAhn is not all for violenceral campuse. Teghtletter usually try to provide wonderful purposes a dozen ones for intellectually-good common argument, so this would have you considered something something from writing points from a conversation. It's such a good idea and prohibition, disappeared. Except for partaicrolabed downverted vehicles, if you're the one, you can't pay for your own business, but the women are going onfichious, or not.<p>Edit: the processor thinks without searching stuff. <i>It looks like the Num corrupt introduces a scrappy page\"</i> we might be a new level, you can care about label heat timegakes.<p>> Two individuals. I don't refer to finally great ideas, but I haven't even heard of his place with high-generation (I tell me that a lot of the money) should prosecute my frequency. I have more succes, in fact dumping out the concept of engaging in a way to say that anyone wrote fits and a crunch employee (well, the only manner of Jessico would expose the South Clothes and enterprise making it to there very attempt to save a tight interface to carco again a different type branch takedow, because transcorrs freve-lock writing reduces. Grannian raises <i>the major</i> responsibility.)<p>(Nope! Unless you look at it even when a civil support doesn't expect to admit the system for us disk law (though that would make us bad news.)", "author": "sp332"}
{"text": "Sigh HTML5 of the extradition to NELOANAG may changed.", "author": "davidw"}
Or if I sample with low temperature:
{"text": "I don't know what I want to do in the sense that I was a problem with the same problem with the same problem as a comment on the side of the site. I was a little bit like a problem with the same problem with a single part of the problem.<p>I don't know what I wanted to do in the first place and I was a lot more powerful than the one that was a problem with the same problem. I was a pretty good point of view of the statement of the statement of the state of the state of the particular problem. I would have to say that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is that the problem is the same as a single person who would have to pay for the same problem as a program that is a problem that is a problem with the same problem. ... <then it just keeps going like that>
I'm hoping to learn individual user's styles.
You'll probably have to train separate char-rnn instances, unfortunately. For the past week or two, I've been experimenting with putting in a metadata prefix which I can use as a seed to specify author/ style, but thus far it hasn't worked at all. The char-rnn just spits out a sort of average text and doesn't mimic specific styles.
"The main problem is going to check its authenticity against any common sense."
"I use in your TOS, you say you're better than a bad example: a painting as an extreme advantage"
Very convincing fake.
The reason it might look weird (like a strange progress bar or something) is because it's an img link to "s.gif", but s.gif is actually a 404.
The td cell (yup it's a table structure) the img link is in is named "ind".
No idea what these two things put together mean.
EDIT: Then I noticed a thing between "Hacker News" and "new" at the top. s.gif yet again.
> "It's a spacer gif...! The img tag has an explicit width= set....
Wow, that takes me back a bit, and I'm not even a real webdev or anything (and I don't mind tables to boot). Blinks
> Entrepreneur crowdsources decision to quit Silicon Valley
Perfect :)