skysight-inc/HackerNews huggingface dataset:
I often suffer from the same day-dreaming and building castles in the air problem you described in your OP.

I have found that just writing down all these ideas allows me to focus on something else. I think the reason I constantly think about them is that I'm attempting to remember everything. The act of putting it on paper allows me to rest easy on that front.

I also prefer legal pads to everything else I have found, even electronic. There is just something about pen and paper and being able to cross out or annotate that helps me organize my thoughts. I sound like a luddite saying that, I know, but it's true.

I also spend some time every so often to go through my lists and consolidate or elaborate on items. Many times I'll find the reason I haven't been able to start on something is because it's too broad and ill-defined. Thinking about it and turning that one item into half a dozen more actionable (is that a word?) items helps get me started.
I thought it was interesting that the author identified many of the members of this movement as programmers. Why would this movement and its strategy and tactics appeal to programmers in particular?
It's a good idea, I wouldn't try and do it on college campuses, though. You can lose some serious coin trying to sell good but expensive things to broke kids.
Interesting.

In IT, I've heard the phrase "mutually orthogonal requirements" for years now to indicate requirements that do not overlap.
Yes, exactly. Very well put. But this attitude isn't widespread right now; the problem itself is barely even recognized (people still think the real threat to jobs is offshoring). People's attitudes about socialism aren't associated with any kind of economic reality, they're still tied up in Cold War propaganda and political divisions.
So, we are in YC, but we'd gotten onto TechCrunch etc multiple times before we were, so I'll respond anyways. You don't have to be "somebody" to get PR coverage.

YC espouses building something people want. To get coverage, you need to build something people want to talk about. You can substitute connections, bulldog PR folks, or hurl money at the problem, but IMO you should never attempt PR until you're pretty sure you have something to talk about that makes a reporter say, "Holy crap-- that'll make a good story".

The common response is that it's really hard to be worth talking about with a boring product, right? Because no one wants to talk about shoe companies (except Zappos) or project management software (except 37Signals), right? If your product isn't inherently interesting, you need to craft a different story. About customer service mania or simplicity. Or how the idea came to you. Or how your founders are living cheap to avoid funding (TicketStumbler has done a killer job here).

Seriously, read "Made to Stick", or at very least read the summary. http://www.madetostick.com/excerpts/
Why Women Pretend To Be Stupid
Email me? We'll have to create a thread closer to WWDC to get to the front page and advertise again.
the symmetric add/delete operations are actually:

mystuff[4] = 'apple'

del mystuff[4]

i'm not saying it's very elegant, but it makes sense.
I have no idea. I'm just reporting raw numbers. :)
Python 3 intends to fix a lot of the stdlib issues. For example, the subprocess module should obsolete all of the various popens.

http://docs.python.org/library/subprocess.html
I think you only skimmed the article. She makes your same points, particularly that tobacco does indeed directly kill and injure people, and pornography does not.

Her section on politics does not seem to have a particular slant to these eyes:

"It is hard to imagine Henry Waxman, for example — one of the most voracious elected officials in pursuit of the tobacco companies — adopting any similar animus toward Big Pornography. It is equally hard to imagine the Obama administration taking much of an interest in prosecuting obscenity — if indeed its members even believe that obscenity as such can exist."

Do you disagree? Do you think that Waxman and Obama ARE likely to go after "Big Pornography" or start pushing for the enforcement of obscenity laws?

And if you would look more closely, you would realize that this IS the website for Policy Review, Hoover Institution, Stanford.
I interpreted it as the small group the author chose to pick on, for being (what he called) "radical". I guess programmers would be more likely to take social issues very seriously. See the Free Software movement, the OLPC, the Bill (and Melinda) Gates Foundation, etc.
Yet, here’s what you have to do for Sphinx which is an insane amount of work for something that JavaDoc, POD, Doxygen, RubyDoc

Nit: Sphinx is a system for long-form, separately written documentation. Like manuals and tutorials; think stuff that requires indices. That's why autodoc is an extension, why you usually set up a separate directory, why you have the flexible build system, and so on. (Although all you have to do is create a file and type `automodule` and then the module name.)
Well, let's see...

Only one person has asked for it.

The actual price for printing the beta was $24. (I told him to go ahead and get his own printed copy.)

That would double the sales paths I have to worry about, collect email addresses from, etc.

It's really a non-starter to me. I have made the ebook screen-friendly and it's got a great interactive Table of Contents.

I don't think there's a reason to sell a printed copy when you could easily print it out and have Kinko's bind it for like $8.
Or more precisely, the initial idea is usually not that important, because it's usually wrong. It's best to see an initial idea as a question rather than an answer.
"Anders Sandberg wrote a wonderful article proposing the Wolfram as the unit of ego measurement."

I put my own ego at 74 milliwolframs ...
What Google Wave Means for Facebook
It's no big deal; just email pg and he'll kill the thread.
I know that, but the question is if it can help? I don't think Wolfram is as significant as he thinks he is, but I think he's a lot more significant than a version without the obnoxious ego would be.
To be fair, Avi is a Jewish name, and I haven't met many Indian Jews... Assumptions, even when assuming something about someones assumption are bad :P
This allows an attacker to iteratively try various HMAC values and see how long it takes the server to respond. The longer it takes, the more characters he has correct.

Can one of the security gurus here explain this in a bit more detail? I'm guessing he would base this on an average over a sample of response times with the same input. Otherwise, how would he account for other things happening on the server that could affect the timing for a single request?
Everything I know about arguing I learned from Monty Python

http://urielw.com/refs/montyargc.htm
This is an incredibly dumb bug -- while Nate claims that "The lesson from this is that crypto flaws can be very subtle", this isn't really a subtle or novel flaw from a cryptographic perspective: Replace "HMAC" with "password", and this attack was published decades ago and is probably the most commonly mentioned side channel attack in the cryptographic literature.

Atwood really thinks we should be trying to educate developers about how to build crypto?

I'm not sure where Atwood comes into this; but I don't see how having non-skilled developers stay away from cryptographic code would have helped here. Yes, this is the sort of mistake which people with a little bit of cryptographic knowledge ("just enough to be dangerous") can make easily -- of course, that's as much an argument for giving them more knowledge as it is for preventing them from having any at all -- but Stephen Weis is not such a person. He did a PhD in cryptography, supervised by Rivest; no amount of saying "crypto is hard, you should use existing libraries instead of writing your own" would have kept him away from making this mistake.
It's not just that they don't overlap; it's that they don't even really relate or affect each other. In other words, one is pointing North and the other West. They aren't opposites; just different.
You want sick? Here's sick.

An AES block is 16 bytes long. You want to encrypt the lyrics to "Yellow Submarine". You can't just repeat AES for each 16 byte block, because then you can tell where the words "yellow submarine" --- 1 AES block --- occur: they'll encrypt to the same block. So you use CBC mode, XOR'ing each plaintext block to the previous ciphertext block, creating a unique ciphertext every time you encrypt those lyrics. But "Yellow Submarine" is 902 characters long; the last block is 6 bytes short. So you pad the message which a count of the pad characters --- 06h 06h 06h 06h 06h 06h.

With me so far?

Decrypt the message. Check the padding: it should repeat as many times as the value of the last byte. If not, you decrypted badly. Send an error to that effect.

Hey guess what! I can decrypt parts of your message!

If I stick a random AES block in your message, it will scramble the padded block. Every once in awhile, that scrambled message will end in 01h. 01h is valid padding. The message will be gibberish, but you at least won't tell me it had bad padding.

You wouldn't tell me if you decrypted to bad padding if I generated 02h 02h either. But that's much less likely than 01h.

Now I know that your plaintext XOR my random block produces a last byte of 01h. Solve.

Now my point: this is actually way old news --- back to Bleichenbacher and Vaudenay and probably before that (I'm not the resident expert) --- but attacks like this have broken peer-reviewed versions of TLS, the most peer-reviewed crypto protocol ever designed.

Don't build crypto.
We've actually had a lot of luck, but it's still really hard. We've been working on a site to help small startups to track/manage their interactions/promotions with the media (or at least help us do it, but we like to externalize our own tools).

For our successes, sometimes you luck out:

* We created bug.gd and the day we uploaded the logo to a random "Web 2.0" site, one of the moderators posted it on Digg, made the front page, and from there it scattered throughout the world.

* We mentioned bug.gd to TC a couple of weeks later (since the Digg storm imploded our site) and it was picked up by TC, Mashable, Lifehacker, etc.

* As people ran into us and heard about us, they spread the word around, and now it grows on its own, getting covered in PC World, and even local news coverage in random cities: http://blog.bug.gd/2008/11/08/buggd-coverage-on-wivb-buffalo...

* At Pycon last year, we did a lot of spreading the word by mouth and lightning talk. As an experiment, we released error_help() from the Python interpreter so that you could get help for your most recent exception from the rest of the world who may have run into it. Very few people used it, but we got a lot of interest from people who heard more than a few words about it all.

* For yumbunny.com (a dating site experiment) we mentioned it to TC the week before Valentine's day and they covered it. We issued press releases about it, though, and no one cared one bit.

* For tinyarro.ws, it spread through Twitter like wildfire because it was so odd (and shorteners are inherently viral) and it ended up with coverage on Mashable, Lifehacker, and zillions of blogs.

The only advice I can give is to make something either:
(a) Useful enough that people want to talk about it,
(b) Interesting/quirky enough that people want to talk about , or (c) be lucky sometimes (i.e. keep rolling the dice and trying until the die roll hits).

My best advice to you is:

* Try new APIs or new fads to get attention for yourself

* Seek partnerships that are mutually beneficial for popular sites

* Send not-too-uptight emails about your service to people you want to cover you. Try not to do form letters.

* Advertise on niche blogs or sites. While they may not give preferential treatment to advertisers, they will have heard of you so you don't end up in the spam folder automatically and you get their ear enough to say a few words.
If you have a quirky stdlib, this can be a big problem if its source is visible. This can be a tremendous source of bad examples to the community. This happened with the various Smalltalk images -- there was some rather good code, and then there was a lot of procedural/spaghetti code by junior programmers. A lot of it happened to get into places where it would be very visible to other junior programmers. (Database/OR tools.)

I think that a lot of this quirky stuff is due to the "uncool" factor of cleaning up such infrastructure level stuff. It's much cooler to be working on a proxy framework that talks to some new protocol. Making sure dates and times work well seems pedestrian. But it is actually tremendously important.
That constitutes an appropriate use of the word "orthogonal".
I don't see how your argument coheres. Someone who did a PhD under Rivest made a trivially exploitable crypto error, which is evidence that lay programmers should be implementing crypto too?
one of my first thoughts whebn I first saw Wave was that Facebook would definitely be squirming slightly.... i bet they are having development meetings right now :D
Both of you are correct. In programming languages / the IT world, object A is orthogonal to object B if object A can be used without thinking about the potential consequences to object B.

In mathematics, orthogonal means perpendicular in a geometric-sense (think two vectors) but can also be used in other contexts with a different meaning.
I've known more than one person named Avinash, and they were both Indian, which is why I assumed that "Avinash V" was an Indian name, and why I thought that was obviously funny.
This is going to end up a Myst reminiscence thread, but what's so wrong with that...?

Myst was the first game my mum really got into. I tried introducing her to a few of the games I played (as she showed interest) but nothing grabbed her until the beautiful scenery, bizarre puzzles and entrancing world of Myst. I still clearly remember that eerie feeling you got of being the only person there, while this whole universe existed around you...
5. Let kids win sometimes.

Some parents have a problem with this. I remember a conversation where a woman volunteered that she completely suppressed her kids every time. She was absolutely proud of this fact.
Warning: it discusses the finale of Battlestar Galactica
so I'd avoid reading it if you haven't finished watching the series yet.
Server Fault now in public beta
Complaints around infelicities in the Python stdlib are fair enough - I don't think anyone would defend them, but what can you do? You can't change published APIs.

I was under the impression that Python 3 broke a lot of backwards compatibility, so could they not introduce new APIs with that? Or is that in fact what they did, and Zed is just complaining about 2.x?

I apologise if I'm mistaken on this, I've hardly used python at all. (though I keep meaning to learn it so I can finally stop writing bash scripts)
No -- it's evidence that having more eyes looking at code is good, and that the "experts" aren't necessarily better than the "non-experts" at avoiding dumb mistakes.

I think there's also an argument to be made that cryptographic code (or security code in general) should be written by people working 9-5 who are forbidden from every doing any overtime. The risk that a security flaw will get in because someone was sleepy far outweighs any benefits of getting code out the door sooner.
After starting to read the AMQP spec I wanted to claw my eyes out.
This attack was found by Bodo Moeller in OpenSSL. I posted about this here, including a link to the slides: http://rdist.root.org/2008/01/25/tlsssl-mac-security-flaw/
If you argue with someone in public, as in most online arguments, simply making your opponent look stupid can make the onlookers more likely to agree with you.

Unfortunately, this is a double-edged sword. Often, victory is achieved in ways that damage reasoned public discourse, even when the "right" side wins. And the "right" side doesn't always win.
Isn't chafing harmful?
I actually feel kind of bad for the Facebook team. Sure, they had to grow, but leaving downtown Palo Alto must be disappointing for a lot of the folks there.
"API doc autogeneration; I can guarantee that if anyone came up with a default tool with default output such that "doctool module html_directory" was all you needed (and indeed people have) then there would be widespread, perfectly legitimate, disagreement on any number of choices in the design of it."

In my experience, the opposite actually happens. When something is written, people either use it and customize it over time, or they just find something else and say it didn't suit their needs.

It's when an extremely useful/general library is PROPOSED that it becomes a huge disagreement. This is, for instance, why C++'s Boost still doesn't have logging or a unified XML library, and won't likely have a garbage collection library before a C++ TR defines the interface: everyone argues over the color of the bikeshed, and the people who try to write the libraries get caught up in infinite microdiscussions over details.

Conversely, someone like Linus Torvald's success is that he just makes the things he needs/wants (ignoring bikeshed discussions), and people generally end up using his creations. When it comes to software design, a dictatorship is often more productive than a democracy!

"When I come across pages of JavaDoc-ish API documentation, I groan internally and just look at the source instead."

Amen :)
As said - "How to Win Friends and Influence People."

It's old, it's dated, in places it's laughable, but it contains amazingly useful advice. It seems trite and shallow, but it's astonishingly effective.

If you read it as a complete cynic you'll have plenty to laugh at and get nothing of lasting value. If you try to gain insight from it, reading past the no-longer-relevant examples to find the intended truths, you will have the means to be a better person, and accomplish much, much more.

Yes, that's a rave review. Perhaps I hold the book in such high regard because it was exactly what I needed at exactly the time I needed it, but I still reference it to this day and ask "What could I do better?"
"There’s no question that an app like Zoho Writer does Microsoft Word-like things in a more efficient way."

Bizarre line of the day.

A comparison of current MS Word with a word processor from the early 90s (or 80s!) would make sense. A comparison with a web app running on a server farm that you have to access via a browser (so as to layer more abstraction and bloat) is just strange.
I have found this exact bug (MAC compare timing attack) in three different products over the past few years. I could only talk publicly about this one. The fact that it's so common indicates it hasn't been publicized well enough, especially for crypto implementers.

My recommendation to use libraries is so all engineers can benefit from the review. The more crypto libraries there are, the less reviewed each is. I get all twitchy when I see how many different single sign-on and cookie verification libraries there are out there. There's even duplication between OAUTH and OpenID.

We need libraries to operate at a higher level. We need less of them (proliferation). We need more review of those libraries. The latter two things go hand-in-hand.
"Y Combinator's massive influence on PR firms"

I assume this was sort of a typo, but YC doesn't have any particular influence on PR firms. I think you mean influence on the press.

To understand how to do without connections, it's probably helpful to understand what value connections have. The point of connections is authentication. If I recommend a startup to a reporter or an investor, they know I have to tell the truth, because if I start to be a source of bum leads they'll stop listening to me.

The value of authentication is that it makes judging you easier. If you come highly recommended, a reporter or investor will at least talk to you. (The joke is that the YC name can get you rejected by any VC in the valley.) If you don't, they have to judge you for themselves, and that's hard, because they get tons of inbound requests and don't usually have technical backgrounds.

There are two possible solutions: (1) get authentication by some other means than personal recommendations, and (2) get publicity through venues that don't require so much authentication.

The best strategy for (1) is to get lots of users. If your traffic graph (or better still, revenue graph) is going up sharply, reporters and investors will pay attention to you. In effect, users are recommending you.

You may say: how can we get lots of users without publicity? The same way Facebook did: make something so good that users tell one another about it. When you have exponential growth, you can start with a very small seed-- just your friends and friends' friends-- and you'll still win.

A good example of (2) is to talk about your startup on venues like HN, where many readers understand technology well and are capable of judging whether something is good or not without any external seal of approval. Being on HN is not the same kind of traffic boost as TechCrunch, obviously, but it's a start. Literally, sometimes: sometimes TC gets leads here.
pop(i) or del a[i] is remove the item at i; insert(i, x) inserts x before the item at i; append(x) adds x after the last item (which can't be done with insert). remove(x) is unordered as it operates on the item not the index, so the opposite of remove should be an unordered add (which exists in an unordered set but not in a list). The rest of his points are more valid.
Obfuscate Your Company
What works are you thinking of? When I think of Heinlein in that period, I remember a protagonist talking with a trucker about the truck's antigrav propulsion, then whipping out a slip-stick to figure out how far down it would be pushed under load. (Citizen of the Galaxy, I think.)
I don't have the answer, but I can assure you that being an inspiration for others to get their work done, whilst trying to be creative yourself, can be pretty exhausting sometimes. :)
mystuff[4] = 'apple' doesn't add an 'apple', it overwrites an existing element in a list of at least 5 elements, and del mystuff[4] actually does change the length of the list. They aren't symmetric at all.