HNHacker News
TopNewBestAskShowJobs

t3mp3st

524 karma · joined September 13, 2009

submissionscomments
t3mp3st··on Image Similarity and Duplicate Detection at Picturelife
Really great write up! Did you guys run into any issues with artifacts from image compression?
t3mp3st··on How do TechStars & YC teams find co-founders?
Ban this link. The author ("CoFoundersLab") spammed their entire mailing list to beg for upvotes... twice.

From one email:

"Tomorrow morning, we'll be listing the article on Hacker News, Y Combinator's social news network about startups. We need your help to upvote the article to the top of the list so it gets noticed by other entrepreneurs. The more upvotes the article receives, the more this valuable research gets shared with the entrepreneur community."

t3mp3st··on Designer News censors posts criticizing LayerVault
Happens on YC all the time. Just try to criticize PG- I dare you.
t3mp3st··on Why LayerVault and DesignModo battle over profit while others build open-source
Great point. Seems like designers are missing out on the whole "rising tide lifts all boats" thing.
t3mp3st··on HackTheLine: Monitize your product before it exists
ssh http://(HACKTHELINE (car pg rules (cons (hack `the line`))) --+ scala.node(Js) + import ruby.gems %% equals = HACK THE LINE
t3mp3st··on Failing with MongoDB
Disclosure: I hack on MongoDB.

I'm a little surprised to see all of the MongoDB hate in this thread.

There seems to be quite a bit of misinformation out there: lots of folks seem focused on the global R/W lock and how it must lead to lousy performance.

In practice, the global R/W isn't optimal -- but it's really not a big deal.

First, MongoDB is designed to be run on a machine with sufficient primary memory to hold the working set. In this case, writes finish extremely quickly and therefore lock contention is quite low. Optimizing for this data pattern is a fundamental design decision.

Second, long running operations (i.e., just before a pageout) cause the MongoDB kernel to yield. This prevents slow operations from screwing the pooch, so to speak. Not perfect, but smooths over many problematic cases.

Third, the MongoDB developer community is EXTREMELY passionate about the project. Fine-grained locking and concurrency are areas of active development. The allegation that features or patches are withheld from the broader community is total bunk; the team at 10gen is dedicated, community-focused, and honest. Take a look at the Google Group, JIRA, or disqus if you don't believe me: "free" tickets and questions get resolved very, very quickly.

Other criticisms of MongoDB concerning in-place updates and durability are worth looking at a bit more closely. MongoDB is designed to scale very well for applications where a single master (and/or sharding) makes sense. Thus, the "idiomatic" way of achieving durability in MongoDB is through replication -- journaling comes at a cost that can, in a properly replicated environment, be safely factored out. This is merely a design decision.

Next, in-place updates allow for extremely fast writes provided a correctly designed schema and an aversion to document-growing updates (i.e., $push). If you meet these requirements-- or select an appropriate padding factor-- you'll enjoy high performance without having to garbage collect old versions of data or store more data than you need. Again, this is a design decision.

Finally, it is worth stressing the convenience and flexibility of a schemaless document-oriented datastore. Migrations are greatly simplified and generic models (i.e., product or profile) no longer require a zillion joins. In many regards, working with a schemaless store is a lot like working with an interpreted language: you don't have to mess with "compilation" and you enjoy a bit more flexibility (though you'll need to be more careful at runtime). It's worth noting that MongoDB provides support for dynamic querying of this schemaless data -- you're free to ask whatever you like, indices be damned. Many other schemaless stores do not provide this functionality.

Regardless of the above, if you're looking to scale writes and can tolerate data conflicts (due to outages or network partitions), you might be better served by Cassandra, CouchDB, or another master-master/NoSQL/fill-in-the-blank datastore. It's really up to the developer to select the right tool for the job and to use that tool the way it's designed to be used.

I've written a bit more than I intended to but I hope that what I've said has added to the discussion. MongoDB is a neat piece of software that's really useful for a particular set of applications. Does it always work perfectly? No. Is it the best for everything? Not at all. Do the developers care? You better believe they do.

t3mp3st··on How to (Fucking) Hire Developers
Hells yes. The worst is when they ask you to build something for their product. For free. On your own time. And then don't give you the job.

WTF?

t3mp3st··on How to (Fucking) Hire Developers
Amen. I utterly despise riddles.
t3mp3st··on I built reddit + 4chan + yelp. Thoughts?
Interesting idea. I'm not sure how I'd go about recruiting celebs to try the dang thing out.

Honestly, I built this thing primarily for fun -- not sure if it really makes a whole lot of sense from a business perspective.

t3mp3st··on I built reddit + 4chan + yelp. Thoughts?
It was broken as of... a minute ago. And/or the app has become sentient and is expressing its opinion of Portland.
t3mp3st··on Please Help: Launching Community Aggregator Like Hacker News in NYC (non-profit)
Hey, thanks!
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
You, sir/madam, have been quoted. I'll throw that one up on the about page later tonight.
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
I wasn't sure which would be more fun. I decided to just post things as is and then evolve as people started giving me feedback. Speaking of which, thanks for your suggestion!
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
I'm really sorry to hear that :( I hope that this isn't too grand a gesture though I'd be very excited were it to become one! Computer hackery is how I've always "expressed" myself. I didn't really know else how to do something extra special for her than to code up something sweet and so I went with my gut. That stinks that things soured between you two :(
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
Thanks! I wanted to keep the site as simple as possible; sign up is a pain in the butt and typically totally unnecessary.

It should be possible to let you recycle your cupidco.de (so as to switch out the crush name, etc). Is that what you mean? I'll look into that tonight.

t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
There is ABSOLUTELY NO WAY that I would ever do this whatsoever. That's so sleazy. I'm not looking to exploit people -- just to channel my cheesiness into something productive and possibly make my own crush (cupidco.de/a) smile :)
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
too true :P I'm working on a bit.ly-esque "your recent cupidco.des" list that'll help you keep track of your most recent (per-computer) codes. I'll also throw the name up on the monitoring page, too, for good measure.
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
That is absolutely amazing. Any chance that you might share, or was it (unsurprisingly) very personal?
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
Thanks for your excellent idea. I added a number of words hint to the guess page -- let me know if you think this'll do it :D
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
Added a number of words in name hint on the guessing page! Hope this works!
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
Haha, getting uber hate there:

http://www.reddit.com/r/programming/comments/a2zr1/dear_prog...

t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
Definitely a great idea... I'll try to throw this in ASAP. Perhaps I'll have it update the prompt as you've described instead of increasing the flexibility of the comparison.
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
I think I prefer the latter :P. I was a little taken aback by the instant negativity I got there. Oh well.
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
I tried posting it to reddit (my leisure time goes to: YC, reddit, and embarassing projects like cupidco.de :), but they went into attack mode on me. I figured that was probably because the link was more of a YC sorta thing so I pretended reddit didn't happen and posted it here.

http://www.reddit.com/r/reddit.com/comments/a2z0t/dear_reddi...

t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
yeah -- that's definitely true. I would have silently swept the project under the rug/archive.org if things hadn't worked out, but we've really started to connect, especially about our respective geekitude-- so I'm pretty confident that she'll think this sweet and not weird.
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
Thanks so much, especially for your ideas. I wanted to avoid any sort of sign up, so I don't actually collect the "crusher"'s name (just the "crushee"). The system will tolerate names within an edit-distance of 2, so many common spelling errors will be ignored (not to mention the added layer of plausible deniability). I also recently added a "really close"/"close"/"sorta close"/"way off" hinting system -- so when you guess, you'll see that the prompt reflects how similar your guess is to the actual crushee.

One thing I'm going to add is a little cookie-based cache of your recent cupidco.de tracking pages, as they start to get difficult to juggle after some time.

t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
I'm flattered that you think that! As embarrassing as it is, I'm really as dorky as described.
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
haha -- a veeeeeeeery valid point. we're both comfortable and open with one another right now, so I'm very confident that this would fall into the "sweet" category and not the "creepy" category. I'll tread veeeery carefully though :)
t3mp3st··on I fell in love with a girl, so I built a web app to dedicate to her.
I fell head over heals for a girl. I thought about her way too often, missed her way more than a normal person ought to, and was pretty much in a constant state of love-induced sugar shock. I didn't want to seem overzealous or desperate, so I tried to play it cool -- and yet, the impulse to post embarrassing, saccharine love quotes to Facebook was overwhelming (I am but only a dork, after all).

So I did what any self-respecting geek would do in my position: I computed a SHA-2 hash of her name and put it in that weird little box thingy on the left hand side of my Facebook profile. It provided just the right balance of self expression and social tact. I was happy.

I liked the idea so much that I decided I would wrap it in a small application and dedicate it to the object of my dorkitude. As I knew it would take a few weeks to flesh out and things were (shockingly) starting to work out between this lovely individual and myself, I thought that the final product might make for a cute little way of sharing my feelings. The idea of tiny "cupidcode" links spreading across facebook and the twitters -- each rooted in my nerdy affection for this particular young lady -- seemed like a terribly powerful way to say "I really think you're great". And because I suck at music and writing, it was pretty much my only option.

Fast forward a few weeks, and cupidco.de is done. It's probably not well suited for the sorts of folks that read YC so I hope you don't mind me sharing my link with you. My hope is that this post will kick-start the spread of a few cupidcodes 'cross the nets so that my crush (who I've been seeing now for about two weeks!) may casually stumble upon one while checking her facebook or reading a blog and discover just how special she is to me.

tl;dr -- fell in love with a chick, wanted to do something special for her, suck at everything else, so I built her a webapp.