skysight-inc/HackerNews huggingface dataset:
Ask HN: Which libraries, components or API's slowed you down when building MVP?
Hi,

I figured if there's anywhere I can get a sharp list it would be here.

I'm looking for input / feedback / braindumps of any tasks that you tried to complete using libraries, components or APIs that took you more time than expected to deal with when building your MVP, or any web based project, really.

Programming language is no barrier to this question, and I'm not looking for any lanugage/framework/library bashing. Just things you wish existed that didn't. It doesn't matter to me whether you wish a special GEM existed, or a library in another language was missing, or if you had a manual hack to make it all work.. I'd like to know all of the above.

I'd like to collect a list of them to see if there's something I might be able to tackle in a language I know, or a new one I can pick up.

The kinds of things popping in:

- sending / receiving email through a mail service
- reliably creating PDFs
- editing images easily
- user/session/role management
- payment
- reporting
- notifications
- application monitoring

Thanks in advance,
Double Fine’s Tim Schafer on Kickstarter success: It can happen again
Same, the only thing I can think of is doing something with the pointers in the fns variable in main, but I can't quite figure out what to do.
Usually when someone says "-foo- aside", they're referring to the immediately previous text. Add in to this that the terms in the immediately previous sentence were exaggerated, and it should at least give a hint at where the sarcasm lay.
It is new to me, and probably more relevant now than it was in 2007. If anything, noticing the date only amplifies Cory's apparent foresight at the time.
I've loved this video for years. And here someone has gone and built the thing. Amazing.

Also, a procedural question: HN guidelines say to mark links to video in the post title. This is a link to a blog post whose primary content is video. Should it be so marked?
the description of the error appears just too vague in my ears. due to "bad connection between a fiber optic cable that connects to the GPS receiver" seems unlikely, since it's first of all a very systematic error and secondly I can't fathom how a fiber optic cable can have a bad connection - at least not in this setting... unless they would've unintentionally bent the cable, resulting in a higher error rate in the transmission of the signal but shouldn't that show up in some network diagnostic tool?!
JoomForest
Otoh, one of the early tests for general relativity was a minor deviation in Mercury's orbit from what was predicted by classical mechanics. My rough intuition is that inconsistencies can show up initially as faint flickers, but once you investigate more closely, one can find interesting and prominent counter examples.
Microsoft targets Motorola Mobility, claims patent abuse
There is also a modern php implementation of HAML at https://github.com/arnaud-lb/MtHaml

I believe it's much faster too.
Identity at Mozilla
You're only looking at one side of the coin. If you look at it from a FB stand point, FB connect is effective whatever the market.

See you can make money in a casino, some games offer better chances than other but in the end it's always the casino who makes the real money.
Why I Hire People, Not Skills
Show HN: Faucet better drip marketing for Rails
Spoke too soon, there's a non-brute-force solution.
Here are 4: switch, backup battery, mini engine, solar panel.
Visual programming tool for Android, iOS, Flash, Python and HTML5 is updated
anyone have any good resources for understanding the basics of all of this?
Better title: How many ads are you willing to look at? A test.
I'm hoping the http://graphlab.org/ approach may help bridge the gap a bit here...
It looks like they trade the ability to scan ranges of keys for the ability to get single objects via multiple attributes. The value-dependent stuff is also a neat way of solving the consistency issues with multiple node updates. Interesting stuff.

If you were to swap this with your Cassandra cluster, you'd be losing multi-datacenter replication. Although partitions within a data center are pretty rare, you'd also lose some availability there as well. However, Cassandra is usually hash-partitioned so it needs to do broadcast for a scan (AFAICT, it even needs to do a broadcast for a lookup on a single secondary attribute), so you'd probably gain quite a bit of performance with HyperDex.

I can't tell if it's possible to dynamically change the set of secondary attributes being indexed without rebuilding the entire data set. Or how value-chaining works with missing attributes.

Also, apparently consistency has some... gaps... when you search via a secondary attribute:

"The searches are not strongly consistent with concurrently
modified objects because there is a small window of time
during which a client may observe inconsistency."
I'm getting the following (no source/binary file... is it part of the challenge or is there something wrong?):

level01@ctf:~$ pwd;ls -al
/home/level01
total 24
dr-x------ 2 level01 root 4096 2012-02-22 13:28 .
drwxr-xr-x 9 root root 4096 2012-02-22 13:28 ..
-rw-r--r-- 1 level01 level01 220 2010-04-19 02:15 .bash_logout
-rw-r--r-- 1 level01 level01 3103 2010-04-19 02:15 .bashrc
-rw------- 1 level01 root 11 2012-02-22 13:28 .password
-rw-r--r-- 1 level01 level01 675 2010-04-19 02:15 .profile
Top 5 things Skyrim should learn from Dragon Age II (and vice versa)
Architecture of Open Source Applications: Graphite
Show HN: Single Page Apps - a lightweight plugin for jQuery
While Etherpad is somewhat research-y, it is a product. The difference between Etherpad and what SPJ does is about as big as between a mathematician working on car collision simulation and one working on abstract algebra.
How does it compare to elasticsearch?
Clickable Link

http://itunes.apple.com/us/app/hackernode/id473882597
What sort of experiment could test the hypothesis "x > c" in a binary way without depending on a precise measurement in a complex system?

"x > c" is a binary test, BTW.
So quote them. Xurinos is rightly pointing out the lack of referencing.

By the way, I worked in sleep medicine, first as a medical tech, and then in technical support for the medical equipment. I never came across the idea that split sleep sessions was right or healthy, and never heard the sleep physicians or clinical specialists mention such a thing. It is far from "well accepted and known for decades", at least up until I left the industry in 2009 (though I spent less time with the specialists from about 2006).

Xurinos is presenting the correct scientific position; you are presenting the antithesis of science: "Yeah, you're wrong, everyone knows it and has always known it, I'm sure there's some research somewhere".
Ask HN: How do you perform penetration testing on your webapp?
Is there a browser plugin or app that can help me reveal security holes in my web app? Something like a Metasploit for the web.

So far I've been writing my own tests, but there is no question someone smarter than me will find a vulnerability. There are a number of great resources on the different types of exploits and how to fix them, but I havent found anything to tell me if I've implemented the solution correctly.
that's the home directory, i think you want /levels
Nice work guys! Congratulations.
I think like you that the fact that this company makes money from users rather than receiving from rich benefactors, is not sufficient for disliking it.
As yurylifshits points out, their ads make me feel like their product is awesome, and maybe it really is.
Only that I would not know, till some users points out what are the pros and cons, with Khan Academy as second term of comparison.
I, as eu universitary students, cannot afford to pay 400$, only to see if their products fits my needs.
It's a pity I bet.
They do, however that is as much to do with the need for frequent feeding given their tiny stomachs!
As it turns out, he did elaborate (as did others):

https://www.w3.org/Bugs/Public/show_bug.cgi?id=10902

There's some vitriol from various parties in there as well, and all the points you would expect from people trying to create an open, accessible, and compatible presentation standard. Standards at its finest!
How many people over 100 years old helped spark the agricultural revolution, the industrial revolution, the computer revolution. If we cure aging, 90% of customers will be this group, voting, writing legislation, these people don't need no stinkin inter tube or whatever you call it. Im not talking about 50 to 80 old. Im talking about the entire world consisting of people who have the mental age of over 100, with no ability or desire to replace the slide rule with a calculator, or a calculator with a computer program. If we cure aging, hopefully we can motivate the elderly to start startups on tech that came out 5 years ago.
We're already well on the road to disconnecting it in an even more fundamental sense. Our computing is moving to "the cloud", and our local systems are turning into windows into this cloud.

The backend is already being disconnected from the UI used to manipulate it.
Toews’s 'child pornographers' gaffe aside, Bill C-30 has real dangers (Canada)
Here is a group working on muscle with 3D printers. As I wrote in previous comment, building simple organs (hardly eyes) seems to move quite fast.

http://www.technologyreview.com/biomedicine/39687/?%3C
The comparison with Redis is a bit strange at a first glance, what I mean is, if in Redis I replace the actual fetching of data with "return 'foo'" at every query it still returns 150k/requests per second for every operation. The same will do memcached per single core. So either in your code there is some good trick to improve speed in the networking layer, or you are comparing multiple cores/nodes to single core/node.

About benchmark "E", this is a primitive that Redis lacks, so it is in my opinion a bit misleading.

Another question is, in the benchmarks with Redis, does the data set fits inside Ram also in HyperDex DB (or OS cache)? In such a case you are comparing two in memory databases in practical terms, but at the same time you say that HyperDex is suitable for datasets bigger than RAM (in a portion of text near the Redis benchmark), but the numbers that the users will experiment in actual production setups will be different if the data set does not fit in RAM.

Finally, in the benchmark it is not clear that Redis can perform a lot of work in a single operation, for example a variadic LPUSH can insert 10 elements inside a list in the same time an LPUSH does this with 1 elmenet, more or less. If you multiply this for N cores in a stand alone Linux box you get 1 billion operations per second or alike, but I would be not comfortable with writing this in the Redis home page. I mean, if you don't specify very well the methodology this unfortunately is just marketing material without real interest for the field.
10 Awesome Corporate Themes for WordPress
Kudos on the double entendre in the title, intentional or not.
Is it really Chrome or is it the new "pepper" plugin API driving this?

ie. if other browsers decide to support the new plugin API, will Adobe also support them too?
I've been playing with nm, but without a hex editor I feel crippled :/
What am I doing wrong:

Current time: cat: /home/level02/.password: Permission denied

Does someone has a tip?
Depending on your requirements, CouchDB may be useful to you. I'm frankly a little bit leery about sticking my database straight on the Internet without something in between to mediate access, but at least in principle CouchDB has a user authentication mechanism that you can you for your application.

See also the somewhat passé http://couchapp.org/ (how quickly we tire of such things)
Did you compare the performance with (local) BerkeleyDB?

Also, is there a locking mechanism?

I'm the author of Torrus (torrus.org), and BerkeleyDB stability and non-network nature are quite painful. But I'm relying on its speed, concurrent locking, and some ways to acquire an exclusive lock on a table. It would be interesting to offer an alternative backend for torrus.
Physics is far ahead of other disciplines in this regard. Choosing your statistical test after you gather the data, selectively removing "outliers" after you gather the data, non-blind interpretation of pictures by humans who have a stake in the outcome and only publishing statistically significant results are all par for the course in e.g. neuroscience.
For Some Developers, Amazon Appstore Now Brings In More Money
I've been looking for one of these for my iPad -- I know there are some more out there. Does anybody have a list? I'm especially interested in which ones work in HD (on the iPad) and which ones are iPod only.
> Mostly from the same place Microsoft's R&D budget comes from: the companies' own revenues.

Really? So those YC acquisitions deals are all-cash?
Brazil FWIW is estimated to have approximately 5 million businesses with fewer than 100 employees according to the IBGE. That's like 99.5%+ of the businesses in country or something like that.

The developing world has an extreme power law distribution curve. Almost all the large businesses are capital intensive. Things are probably more skewed in Brazil than in other countries due to a risk-free rate of ~11%, meaning that any business with high working capital can't rely on outside capital if it doesn't want to end up handing over all its revenue to the banks.

Firm size in Brazil is probably more related to capital costs than transaction costs. High capital costs "hollows out" the middle. Capital is often used to reduce rising transaction costs within a firm once the firm size surpasses approximately Dunbar's number. However those businesses at that are mid-sized instead of large don't have enough scale to justify the investment of capital to reduce transaction costs. Many smaller mid-sized companies will hobble along with high internal transaction costs as a result, much higher than would be tolerated in the US.

Because of this, SaaS products are likely to have a transformative effect on Brazilian businesses. There is a lot of unmet demand because traditional transaction cost reducing solutions have required too much capital to implement.
Magnetic retainer lets you operate machinery with your tongue
What happens if a crash happens part way through the acknowledgement chain?

For example, in your insert, if the node containing "x" crashes before it receives the ACK from the node containing "y" - do the dangling "y" and "z" insertions ever need to be cleaned up?
What happens when a day goes missing from history?
I don't understand this headline at all. A wowser is a puritanical killjoy where I come from.
The 'web' was on its way to becoming a receive-only ghetto as soon as 'apps' started to replace static pages.

I disagree completely. It's now much easier to create and distribute your own content than it ever was, in great part exactly because of the new interactive websites.

Youtube alone is a great example. Sure, it has plenty of old media content (and plenty of abusive takedowns), but how many hours of amateur stuff is being viewed every single day? Probably orders of magnitude more than there ever was on the web ten years ago.

Then there's Flickr, Tumblr, Wordpress, Blogger, deviantART (140k submission/day) and so many more.

Sure, Netflix, Hulu, etc are major players, but I don't think user generated content is being replaced - TV is.
This is fun! Kudos to Stripe for putting this together... level03, working on level04...
tinfoil.com
Why would anyone sign up for a porn site with their main email address? What baffles me even more is how some people actually whip out their credit card and give the digits to a porn site.
Doesn't seem to have much detail in this article. It is ironing bugs out of its process by making chips for others? Don't they have enough chips to make under this process?

Not to mention that adding or removing production lines are expensive. So this either means that they are adding lines for a really big reason (Because it is so expensive) or because they have more capacity than they have things to make for themselves.
To be precise, I would argue this is actually a CA system.

"C" because there are consistency guarantees, which are upheld even in the face of failures / partition.

"A" because the system will continue making progress even after a node failure. What I called a "hiccup" can be made arbitrarily short, in principle at least. The system can work around failed nodes, it does not need to wait for them to be repaired.

Not "P", because if the network falls apart sufficiently, the system will generally not be able to progress.
Any plans to open-source this software so other accelerators can contribute?
> http://news.ycombinator.com/item?id=3252135

jonhendry, you're a prophet :)
Maybe not the most clear sentence since it leaves out the equity part; it's conveying that it provides seed money plus mentorship/networking in exchange for a modest equity from the startup.

Could be better organized as:
"... Y Combinator, the investment firm that plugs seed money (~$18,800) into early stage startups and offers mentorship and access to its ever-growing network of alumni, in exchange for a modest equity (~7%) of the startup."
Oh, it's closed source? OK, there goes all my interest.

It's odd how you just expect certain kinds of software to be open source today.

Edit: Since I'm getting downvoted as-is, let me flesh out this posting with some more explanation for my stance: My text editor is an application I will invest a lot of time in learning and customizing, and it's important to me that this investment will end up being worth the effort long into the future. With a closed source text editor, I don't have the same level of confidence that the product will continue to exist and be maintained. Closed source also means that parts of the application are off-limits to customization, and I don't want to be beholden to another's determination of what part of the app is on that side of the fence.
the FAQ mentions that you target x86_64 architecture.
Does the server work on i386?

also, I hope it's doing proper memory alignment and endiannes independence? (because Mongo sucks on that)
Thank you for checking it out. If you have any questions please don't hesitate to contact me.
In-n-Out Burgers does run their own butcher department. The company structure worked pretty well too, since the company did not stumble when a big chunk of the executive team and the CEO died in a plane crash. see http://fora.tv/2009/07/14/In-N-Out_Burger_Stacy_Perman#Histo...
Saying anything more would be ruining the contest.
http://pastebin.com/yJ8JU45W
And all this after all the press about them moving their entire stack to Redis etc etc. How can a company achieve such an epic technical feat and have shitty password hashing?
Sublime Text 2 has a plugin that emulates Surround. It has a pretty good mode for Git interaction. Even its Vintage (Vim emulation) mode is really surprisingly good. Hell, it even has a mode that is beginning to emulate Emacs' org-mode. Only time will tell how far it will go.
Link to the password dump: http://pastebin.com/ieC6eTB7
StackMob has that prebuilt backend that you're talking about. It has the REST API and datastore/schema generation built already so that you can just start connecting and saving right away. By the way I do work at StackMob, so in the interest of full disclosure I ought to mention that! But I'm here as a fellow frontend developer.

I had to make a site for my fiancee and I's wedding, and I realized I could whip one up really quick and just stick it on StackMob - backend, hosting, everything.

An example saving/fetching data to/from StackMob via the StackMob JS SDK (built on Backbone.js):

var user = new StackMob.User({ username: 'ericktai', password: 'opensesame', ..});
user.create(); //this saves your user to the datastore on StackMob's servers in the background via AJAX

var users = new StackMob.Users(); //notice plural
users.fetch(); //this fetches all users

var user = new StackMob.User({ username: 'ericktai'}); //notice singular
user.fetch(); //this fetches my user from StackMob

Sounds like you're writing a JS web app, so you can also try our JS SDK that lets you connect to StackMob's backend - it's your datastore already built on servers. Here's a tutorial I wrote up to give you an idea of what that actually means programatically.

http://www.stackmob.com/devcenter/docs/JS-SDK-Tutorial

To make sure you don't run into any cross domain AJAX call issues, we host your html app also. This relieves you of having to worry about whether browsers support cross-origin headers or not.

Good luck to you developing! It's great that there are so many tools out there nowadays like aespinoza mentioned! Find the tool that works best for you :)
I made a "preference" statement, not a "dislike" statement. I would wait until I tried the product before being judgmental...
>The scientists write all of their data reduction pipelines before taking any actual data and test their pipelines on simulated data. When they are confident that their pipeline is running as expected they run the experiment, put the data through their pipeline and publish the result, no matter how unexpected it is.

How does that help when the prediction matches the measurement but the experiment is flawed ?
Is /home/level02/.password empty?
Technically if it relies on HTTP symantics like REST or JSON-RPC a JavaScript client can consume it just as easily. They probably market to mobile more heavily because that is a hot market but generally mobile and JavaScript clients rely on the same back end, which is usually some form of REST, JSON-RPC, document literal XML or SOAP, the last two being less common.
Cool... Now define your Node datatype in Haskell deriving Show & Read, and pretty-print to that.
Then you can (easier) do some interesting analysis and transforms!
Dunno, Paul. While SPJ does have a lot of relevance to current computing, his work is not a product like Etherpad was. I haven't seen YC companies moving towards or staying with fringe languages -- not that I criticize that business decision.

Maybe the YC model will reach that "how will we be computing in 10 years" phase at some point. But (perhaps with good reason?) it does not seem to be there yet.
It includes the password for the level02 account.
Have you asked yourself if you are putting business logic that belongs server side in your front-end?
Aha! Thanks for the explanation. Now I get it.
The whole point is that you're supposed to find vulnerabilities in what you have access to and exploit them to view contents of things you don't have permission to.
I think solving this problem is just a band-aid. As sites like Facebook and Twitter have become mainstream privacy concerns are also becoming mainstream. We're going to have to develop better ways of working with people's data -- kind of like PCI compliance but for personal data. I'm no fan of regulation, just making a prediction.

That said, if you don't need access to someone's entire social graph and just need an email, you should just ask for an email. Let's at least start there. But when the only business model anyone seems to know is "collect metric tons of data and sell it to advertisers" I'm probably yelling into the void.

Edit: err...oops. That probably sounded a bit spammy based on the down votes. Suffice it to say I'm starting a nonprofit in this vein. Info is in my profile.
gdb works fine.

(gdb) x/4x fns

0xffeaa0cc:	0x080485e4	0x08048640	0x0804869c	0x08048719

(gdb) x run

0x804875b <run>:	0x83e58955

(gdb) gdb) x/40x (void*)fns-0x40

etc.
I replaced the date with my own script, but it still gets executed as level01 user
aye, it's pretty easy to ptrace() ssh-agent and extract the key directly from memory.

once malicious third party code has executed on your machine as you it's game over.