skysight-inc/HackerNews huggingface dataset:
Ask HN: I am so High right now, when were you?
It's been about 1 year since my partner, and I began Development on a web application (planning to launch it on hacker news!) And I must say.. it's been hell on wheels! I never thought the next year of my life would be spent in seclusion.. just totally withdrawn from everything.. TV, friends, family, food, and anything fun in genreal. It made my world of warcraft addiction look like childsplay.

Just before this I had a job working at a company that did contract for the goverment(I worked as a temp managing, organizing, and building a database of site survey drawings). It was uninspired but it helped pay the bills. Of course contract work started fading away, and layoffs were made.. I was one of the first to go. Right after I spent over 4 weeks doing overtime literally sleeping on a couch at work doing insane overtime to make up for the lack of man power we had on the project at the time, to make the deadline (I worked at that company for a little more than a year).

Our startup was somthing that we just joked about, and was orinigally just going to be a feature of a blog. However we encourgaed each other, and matured the idea from that.. to making it a youtube video series, to droping it altogether, to now a web application that works with twitter and will eventually become a network of apps.

One big problem.

Inital exposure and traction.

Right now I'm managing our "humble" Pr efforts which is limited to me pitching promising, and open minded people on twitter to become beta users.. but I know I'll get better at it just like everything else! You have to crawl before you can sprint right?!

As we are reach out to beta users it is amazing having even one person say "hey man that is awesome". Feedback just makes it all very worth it in my opinion. Seriously, there are few times in my life where I've found myself this excited, happy, and just pumped! (yes i'm a virgin).

Unfortunatley, while I looked for people's experince on gaining traction & users, I found "Why your startup will fail" and "How I failed and why you will too". Is it really that much of a failure if you do what you can to contribute to society, and they accept or reject it? .. you still did it!

A wolverine is still a wolverine whether he wins or loses a fight! Even if you don't meet the popular definition of success did you not start somthing of your own to contribute to society? are you not a start-up? (random I know but I suck at anaolgoies).

Basically, I'm just really pumped and I don't find the "fail" stories and "stories of how we had 10 million users before we launched" unappealing or somtimes even unreal right now.

Can anyone else share in thier "high" moment just as they launched a beloved application or product? How did that high feel? How did you feel about getting to that point?

P.S: I know I'm naive, but i'm sick of doom, gloom, and misery! Nothing we did before has come across as exciting or promising as this. I want happy stories for once.. launching somthing is a great accomplishment! Please share your high.
Hmm.. I don't really see the need for versioning in REST APIs. Webapps don't have versions, because it's smarter to just push small changes continuously. Your API maps functions in this changing application - keeping an old API around isn't like keeping an old version of Word around. If the app changes so a given API call won't work any more, it won't magically keep working because of versioning...

It doesn't add much value to give users a /v2/ to call, if it's not because that /v2/ will keep working independently of changes to the app. If it stops working some time because you're changing your app, you'll still have to inconvenience your users by pulling an old version out of production. On the other hand, there's no point in forcing users to upgrade to a "new" API, if the new API doesn't do anything the old one didn't.

No reason you couldn't just deprecate what will stop working on a method-by-method basis instead. If you pair it with application-keys, you'll know which users are using the methods you're about to deprecate and talk directly to them about transitioning away.

When something less radical changes, you can add new parameters and add new fields in the response just fine, without invalidating the old version - and if you can't, add a new method, e.g. /clients/list_with_invoices/ as the new version of list.
What library are you writing?
Are there any other disadvantages of this approach other than the problem with "Service Appliances"? Many REST APIs rely on HTTP headers for other things - do "Service Appliances" only remove non-standard headers?
Was that scripted or did Microsoft finally get voice recognition working?
Does this only do open access journals? I wonder if something like this could be adapted to work with a link resolver for subscription aggregators like EBSCO or JStor? This basically looks like a free version of EBSCO A to Z.
The 'cuil launches X killer' theme is getting a little old.

The only thing Cuil seems to have successfully killed is a large amount of VC money and their reputation.
Make sure you can easily route requests for a particular version to a different back-end server.

If you in the future decide to write the next version of your webservice using a different technology (e.g. going from python to node.js or whatever), you want your front-end server (e.g. nginx) to direct the traffic to the correct back-end without too much trouble.
Free welding inspection manual ebook
If you're not sure how you want to do this, you could always wait until you need to implement version 2. You would then be forced to have omission of a version number indicate version 1, but waiting would allow you to make the decision when you're actually ready to begin implementation and might have a better idea or more information about how you want to approach it.
Yeah felt that apple was being a little sneaky with how they were putting out the data. Lets assume that 0.1 calls per hundreds was lost on the 3gs, then 1 more is a huge difference, if the 3gs dropped 3 calls than it's still huge but not as huge so without the 3gs drops per hundreds how do we know wtf 1 more means?

1 more is still a ton, an average user probably does more than 100 calls per month so... that's a drop call per month and for people in shitty area that could be multiple a week on the high end (some people never drop calls on the iPhone)
Genetic testing mix-up reignites regulation debate
5! – S(6) + sqrt(9) – (cbrt(8) * (2^3)/4) / (7^0 + 1)

120 – 21 + 3 – (2*2/2) = 100

SO: 9
MO: 13
MR: 2
i guess it's valid (as long as the result is really 100, you haven't provided calculations).
but it's not the best avalaible, since doing MO 13 is actually easy
In the US, truth is usually considered a defense against claims of libel. Not so elsewhere, such as the UK, if I recall correctly. (IANAL)
Was there any discussion about longevity of storage of disk vs tape? I remember a claim that DAT tape had an expected lifetime of 100 years.
Makes the two of us. Want our money, you can have it.
Unfortunately, you're misunderstanding what Jobs said. They said it drops ~1 call per hundred than the 3GS, not 1 percentage point more. That's a huge difference. It means that if the 3GS drops 1% of calls, the iPhone 4 drops 1.01% of calls.
I agree with you at most points, just two things:

a) SSL is worth jack shit. It only tells me that some person paid some obscenely large sum of money to some company so that my address bar glows in green. CAs do a very bad job at verifying their customers. There have been valid certificates at pishing sites and valid certificates with fake data.

DNSSEC wont't fix that. But it will guarantee that when I type bankofamerica.com in my browser, I will land at bankofamerica.com, even if someone tries to hijack me.

b) We do need DNSSEC. Please go and watch Dan Kaminsky's talk about the ramifications of the DNS bug he publicized. Everything in the end falls back to DNS. Want a SSL cert? You will receive it per mail. Guess how the CAs mail server will find your company's mail server...

c) Please don't start with "secure the connection" instead of "secure the data". Even if I know that the line between my computer and my DNS server is secure, I can't trust my DNS server.
What's the (efficient) alternative?
an actual distribution
yes it is, poor indexes but it is ok :)
const type* const has always been a warning flag to me when I read it in other people's code. What are the advantages of making the pointer itself const?
"Did you know that SSL/HTTPS in no way relies on a secure DNS today?"

That's really too bad. It should. DNSSEC can handle providing CERTS. Using these CERTS and DNSSEC to validate them (on top of the rest of SSL/TLS) would be a secure and free way for domain owners to provide a better security than provided by SSL/TLS as implemented today.

SSL/TLS requests can be man-in-the-middled by any one with access to any of the 150 or so root keys in your browser including for example the governments of Taiwan and China. If we used CERT DNS records, then not only would we not have to pay additional money to VeriSign etc to have a CERT, but there would only be twoish keys that would allow man-in-the-middle attacks (the root DNS zone and the .com DNS zone for example). That is a significant improvement.

Does anyone know if any of the browsers have plans to provide DNS CERT support?
We coded up a very basic one in HTML for ours. (I don't know of any template services.)

The core thing you need is an email signup list. We used Campaign Monitor (http://campaignmonitor.com/), but I've also heard good things about MailChimp (http://www.mailchimp.com/). They'll give you the code for a form. It's really simple, and it outputs to a page of your choice. We had ours output to /thanks.html, and on that page, we had an iframe with a survey from Wufoo (http://wufoo.com). You can see ours in place at https://monotask.com.

So what happens is that the user comes to the page, maybe signs up for a beta account, and then is taken to a survey, where you can gather info about them.

Joshua Porter actually wrote up our approach, here: http://bokardo.com/archives/using-your-sign-up-form-as-a-qua.... I don't think I'd seen anyone talk about tacking a survey on after signup before we did it, but it makes sense, right? Interested people sign up. If they've exhibited at least some modicum of interest in your service, get info on how to tailor it to their needs.

Note, on our survey, there's an "ideal pricing" section. If you're planning to charge, you should have this section. It helps your users know that the service won't be free, and it also helps you evaluate their input, so you can see if your pricing model is wildly off from their expectations.

One thing I wish we'd done differently with our survey is to include the user's e-mail address on the survey itself. I know they just entered their info, but when we set ours up, Wufoo and Campaign Monitor weren't integrated. So if there's a particular survey response you want to follow up on, you have a harder time of manually matching it up (using the Wufoo survey submission timestamp) with the timestamp in the Campaign Monitor database. Pain.

Since we built ours, Campaign Monitor announced that they're now integrated with Wufoo, so it might be even easier to build in follow-up surveys.

Back to your question, our "holding page" directory had a grand total of three files: index.html, thanks.html, and logo.png. Really straightforward.
Mis-titled. A great number of these are still operational. They are just used less often or are harder to find. Obsolete or "lost" is not synonymous with "no longer leading edge".
Refer to popular wargames. You could start here: http://www.smashthestack.org
Yeah, highly suspicious. Molyneux has overpromised things before.
Thanks, my main problem was that /1/ did look dirty.

The /v1/ is much better, and solves the problem.
Yea having to version a "REST"ful api usually means its a was not very restful in the first place . Meaning the api is not hypertext driven and is probably a rpc style api with meaningful urls. If it was hypertext driven it would all be transparent to the consumers , it could be v2 or foobar , doesn't matter .
looks like it was an awesome presentation
The important point, which I did miss, is that it's not just a "security course", it's a course about how to break into things, so you need vulnerable programs. If you're not specializing in security stuff, the best course of action, is, however, to just keep your stuff up to date via apt or some similar mechanism.
Gist: more concise output in Python
Curious for some feedback here - anyone have any thoughts on it?
An Erlang/OTP SSL proxy and load balancer for Python Twisted's ...
I think it is okay.

E.g. if you are programming GData client, it suggest you to add version info (i.e. GData-Version: X.0
) in the request header.

http://code.google.com/intl/zh-TW/apis/gdata/docs/developers...
The longer FaceTime is kept closed, the higher the chance that it will lose relevance. Skype has a proprietary protocol but is distributing the API, and has a much deeper penetration than Apple's products. With Skype working on every smartphone and computer, and coming to TVs and other appliances, few people will care that its protocol is closed. FaceTime will have a hard time competing...
I feel like an idiot right now. I am sorry. I should have checked if I was rehashing some old thing. I just got really excited and wrote this down. Sorry.

Should I delete it?
Thanks for the documentation tips -- it's always helpful to hear what's missing from the perspective of a pair of fresh eyes. I've updated the documentation with an example of block comments:

http://jashkenas.github.com/coffee-script/#heredocs

And extended the section on "cake" a little bit with a better example that demonstrates passing in a command-line option. It sounds like your problem is different though -- here's the Node.js docs for child_process.exec:

http://nodejs.org/api.html#child_process-exec-95

You can use the "stderr" argument in the callback function to print the child's error output to the console. Running this bit of CoffeeScript, for example, will print out "to stderr":

{exec}: require 'child_process'

exec 'echo "to stderr" >&2', (err, stdout, stderr) ->
print stderr
Prog21: A Ramble Through Erlang IO Lists
Yes, but obvious to hackers = high possibility of prior art
C# has some meta-programming with the addition of closures and good polymorphism. Check out how http://kayakhttp.com/ uses them to build a fairly sophisticated async web server.
If client missed the version information in their request, you can send the request to the earliest supported version of the API by default.

This is how Google handle it and I think it make sense.
http://code.google.com/intl/zh-TW/apis/gdata/docs/developers...
If you can imagine a stupid, pointless, wrong way to deal with network traffic, there is an appliance somewhere doing it.

I once saw a significant uptick in users being unable to use an AJAX application because a developer "fixed" the RPC stuff to sent Content-Type: application/json headers instead of claiming to be text/html.
Perhaps the point is that C++ is heavy and if there are alternatives you should use them instead. Just because you invested years getting up to speed doesn't mean everyone else should do the same. I have to use C++ at work occasionally so I'll probably end up having a few years invested in getting to know C++ too. But at this stage the startup cost is considerable and very very present. If I had a choice I wouldn't consider it a good value.
It looks like lots of people just read live blogs and second hand accounts. It's shocking to see how easily and quickly the facts get mutated these days.

Just to show I'm somewhat unbiased on the issue -- if we want to question Apple's data why did they show AT&T store returns and not Apple Store returns?
I'm not sure how I feel about that. Then you're going to be ok with making backwards-incompatible changes, but a lot of people may change to them immediately because they're not using the versioned url.

If you were to go that way, I would recommend strongly encouraging developers to use the /v1/. "It's 3 extra characters to make sure that your app doesn't break one day because we upgrade the API." Obviously, you probably should make backwards-incompatible changes infrequently and only after communicating well with your developer community--otherwise developers will feel like they can't keep. But still, some people will miss the announcements or not have time to adapt in time.
That's one person in one place. It's not easy to reproduce for a lot of people.
Experimental Jetset is a pretty well known graphic design studio (at least in the design world) so this project is probably best viewed through an aesthetic lens.

There's always the Computer History Museum if you're interested in such gory details: http://www.computerhistory.org
Hey Paul,

I'm in NH too and run a very small niche app. I've got about 100 people using mine after 3 months. this is with very little marketing.

I was surprised at how difficult it was to get people to understand the benefits of my app, especially when it was for a very specific need. But once people understand they are more then willing to give it a try.

We are currently working on version 2.0 based on customer feedback and hope to finish/begin marketing the new version by the end of summer.

Let me know if you would ever want to meet up, its hard to find fellow web entrepreneurs in NH!
Thanks for this resource. It’s very useful! As a Natural Language Generation researcher there was a few journals that could of been added:

AI Communications (RSS Feed: http://iospress.metapress.com/content/103140/?sortorder=asc&...)

Computational Linguistics (RSS Feed: http://www.mitpressjournals.org/action/showFeed?ui=0&mi=...)

Natural Language Engineering (RSS Feed: http://journals.cambridge.org/data/rss/feed_NLE_rss_2.0.xml)
I have an iPhone 4, live in terrible coverage, when this blew up took it out of the bumper for past two weeks, and can't drop a call even in places my 3GS and Blackberry Pearl couldn't make calls at all... And so?

Bandwagons roll on squeaky wheels.
Ask HN: Should I learn C?
I'm a recent high school grad going into college as a comp sci major. I have 2 years experience in Python and JS.

Would it be worth my time to learn C (C++ possibly?)? (Or maybe you have another language that would be more profitable now.) I'm aware I will have to learn at least C for college, but is it something I should learn now?

I'm looking for your opinion because a lot of you have either gone through a comp sci degree or have done some programming in C.

Thanks HN!
I was expecting that one of the reasons would be "JavaScript is a perfectly good language on its own."
Anyone remember the cauzin strip reader?
I was always pissed that Sony didn't let Minidisc become the new floppy disk alternative.... it was perfect.

I know you could get data drives for them - but they were uncommon in the extreme.

Plus, every TV show and movie that wanted to show someone stealing data, because they looked cool.

(it was a magneto-optical disk in a hard case, pocket sized.
You lost me. AT&T's data, according to Jobs, suggests the iPhone 4 drops one additional call per hundred when compared to the 3GS.

"It means that if the 3GS drops 1% of calls, the iPhone 4 drops 1.01% of calls."

"If the 3GS drops 1% of calls", it drops one call per hundred.

That means the iPhone 4 drops two calls per hundred, or 2% of one hundred calls. Not 1.01%.
Definitely do it. Having the "/v1/" (I agree with the comments that the v is better.) is still plenty "clean". No one is going to say "well, I was going to write an awesome app with their API, but those 3 extra characters to make sure my app doesn't break made it too much of a pain."

Also, think about rolling-out backwards-incompatible changes otherwise. People want their apps to work immediately before you roll out the backwards-incompatible changes and immediately after. This means that for a period of time, you're going to have both up as they do the transition. (Your only other option is to say "at exactly 8:00 PST we're going to make the change. So deploy your changes that adapt to the change at exactly that time so you don't have downtime.) It's a lot cleaner to use versions and have them switch their urls from /v1/ to /v2/ whenever they feel like it. Otherwise, what are you going to do? You need api.yoursite.com to stay the old version so you don't break apps that haven't switched yet. So you'd have to do something ugly like have people switch to new.api.yoursite.com to get the newer version. Then, once you've disabled the old version and had api.yoursite.com, you have to get everyone to switch back to using api.yoursite.com because pretty soon, new.api.yoursite.com is going to be the following version. (Or you could make that version newer.api.yoursite.com, and then the next one newest.api.yoursite.com, and then you're really screwed when you need the next version.)

Basically, the cost of versioning your API is very low, and the potential headache of making backwards-incompatible changes without it is huge. Just do it.
What about: Punchcards, magnetic wire, wax cylinder, paper tape, piano scrolls, all kinds of film...the polaroid....
Is John Gruber's increasingly defensive & strident anti-anything-not-apple...
...tone a bad omen for Apple investors? Discuss.
Julie Moss crawls to the finish line in the Ironman triathlon[YouTube]
This was a talk given by Tim at the JavaScript User Group Meeting Berlin in May 2010. There is also a video of the talk, but I can't find that anymore.
AirBnb (YC W09): Europe Without Hotels
Bad Credit Student Loans: Education Without tension
I find it the opposite, when I read code that doesn't use const at all. In that case you want to make sure that
code doesn't change either the value the pointer is pointing to and where the pointer is pointing to :)

<pre>

#include <stdio.h>
void function ( int const * const value )
{
printf ("%d\n", * value);
/ * more code * /
( * value)++;
/ * more code * /
++value;
}

int main(int argc, char * * argv)
{
int value = 1;
int * pvalue = &value;
function(pvalue);
return 0;
}

$ gcc t1.c
t1.c: In function ‘function’:
t1.c:5: error: increment of read-only location ‘* value’
t1.c:7: error: increment of read-only location ‘value’
</pre>

quick googling:
http://www.cprogramming.com/tutorial/const_correctness.html

EDIT: how can we properly paste code in here? The * mess things up.
@disguisedcoder I really hope that I didn't come off as a rude jerk or something. I know that it is difficult to understand how much your environment shapes the decisions you need to take in order to survive.

>>>your indian point of view<<<

That's the problem. I was born here. I've stayed here all my life, but it's like I've grown up elsewhere. Somewhere in my head. Try to understand something I don't represent the average indian view, and neither do I have any feelings of patriotism or stuff like that. I don't get choked up over national flags, parades or holidays. As George Carlin would say they are symbols and I leave symbols to the simple minded.

So, don't take me as a representative of India or anything like that. I just observe and move on. Earlier I used to get fired up, but now I realize; what's the use?

Anyway, thank you for replying.
Their bits aren't getting into England either. What's it got to do with us?
Seriously. Kudos to Nate Lawson for being so patient in explaining the vulnerability he found in the developer's code to the developers themselves.