skysight-inc/HackerNews huggingface dataset:
In the quick looks I've made at each language, I found Prolog much easier to understand than Erlang. Prolog's pure logic syntax is simple if you already know 1st order expressions. Erlang borrows some syntax from Prolog but doesn't have Prolog's simplicity.
Yes, I've read that essay. The very fact that Feynmann was compelled to do what he did, by people who cared about the system, is proof of my point.

You can find corruption in any sufficiently large system. It doesn't mean that the system is inherently corrupt.
This is pretty cool, though in a pointless way (in that it doesn't add functionality).

I'm following though. One thing is that it may be better to do fewer questions. I may get annoyed by the volume of questions I get, many of which I can't answer (I'll wake up to 8-9 old questions.) Maybe go to like 6 a day, scheduled around when the US is sleeping.

Also, @jackowayed "you're right" or @jackowayed "you suck" would be nice after I answer.
Once a society gets too prosperous, the highest-paying jobs end up in fields like finance and law, far outpacing science and engineering. That's one reason for the decline in science -- the return on learning hard material is higher in other fields.

Also, you have a greater number of kids growing up in already-prosperous families, who don't perceive the need to become prosperous themselves, and so don't pursue higher-paying fields like finance, law, science or engineering.
Hi there, thanks for the feedback. I appreciate it.

I don't mean to suggest that money == spend like crazy. All I'm suggesting here is there is merit to "embracing constraints". When you don't have money, you can't spend it. When you do have money, you may spend it. There is a difference between the two statements.

This is especially important for people who think throwing more money at something is a solution. Some managers tend to think if a project is behind, simply throw more developers at it. We developers obviously know that isn't a viable solution in some cases. In fact, more people means more communication, training, procedural overheads etc which could actually slow down the rest of the team.

Being money constrained, helps us focus on what's truly important so we deliver the best bang for the buck. We're small so we can't afford to spend 2 weeks on a feature nobody needs. The lack of money here helps us see that.

Also thanks for the comment wrt marketing. I'm not marketing god by any means (and this blog post isn't about marketing anyway). I certainly do not know all the channels available to me to market my product. But that's part of the learning experience which is one part of why I'm doing this.

Thanks again for the comment.
This is why I don't think electronic voting is doomed in the long run. It is possible to create highly reliable, highly secure machines that are above board. The industry just got dominated by sleazy companies who have cast a bad light on the entire idea of electronic voting.
Snails and humans use same genes to tell right from left
Another way you can hack this yourself - get FluidApp, and make HN a site-specific web app. All off-site links will automatically spawn in new browsers.
Let's say (however unlikely) that all current languages agreed on standard, and the next release of all these languages used this standard. There would inevitably be a group of people who don't agree with the standard and so they go and write a new language that uses their preferred syntax. Now we are back where we started.
I agree about lowering the question frequency. It's high right now so I can find bugs faster. Stability is key to me. I don't agree about making it on US time, though. Twitter is a very international service, so giving an advantage to one side of the planet would be no good.

I'm figuring a DM versus a tweet for responses. If this gets popular (even minorly so), it's going to drive up the noise like crazy if the @playtwivia stream is nothing but answer responses. I'm actually waiting on the Twitter team to raise my API limit so I can implement that.
By "make it work," I mean accomplishing your original goals. Those goals were probably something like "acquire hundreds of new customers per month that Fog Creek otherwise would not have access to."

The easiest way to make it work is contact someone that has some working experience with being a software affiliate, or is a part of an affiliate network. In the same way that successful start ups need to understand what users want, successful affiliate programs need to understand what affiliates want. For instance, the majority of 1 sale affiliates could have been prevented by having a payout limit of $X, where $X = (cost savings from 1 sale) * N, where N > 3. That way, they need to at least convince 2 other buddies to purchase FogBugz. Also, you were probably attracting the wrong type of affiliates. Finally, you need to have a good idea of what each unique visitor is worth, what each lead is worth, what each sale is worth so you know the best price you can give to your affiliates.

It can definitely increase your reach/customer base, but it does take effort to make it work.
Christmas shut-down in Silicon Valley
Australia:

http://www.netlogistics.com.au/

http://www.crucial.com.au/
Best of luck. Remember, when things get terrifying (and I assure you they will) --- you can always consult! Our consulting practice, which I love being a part of, now funds a full-time product team. I'm on hiatus from consulting for a bit with the Dir/Marketing role. There are ways to make it work, no matter what.
It's one thing for you to say you've never had to appease investors "once". It's another for you to imply that this is an irrelevant concern. I have several counter-anecdotes. I imagine I won't need them, though, and that you'll just concede that you have good investors --- for the time being --- and that bumbling or mendacious board members are indeed a real concern.
and often times new syntax is created to support features in a language...

...and if you have the same syntax for all languages then what is the difference? All languages would just be extensions of the same basic language if the syntax is the same.

It is a good question though. Why have more than 3 or 4 programming languages at all?
"Er, what exactly is intellectual about 1300 hours of busy work?"

I don't grant your premise. There's busywork in everything, and I never found high school to be worse than anything that has come later in life. We've all got to wait in the same line at the supermarket.

When I read nerd complaints about formal education, I get the feeling that the prevailing sentiment is one of entitlement: "if I have to do anything I don't like to do, then the system is broken." Smart kids seem to have this sense of entitlement worse than many people -- probably because they're so easily bored.

Trouble is, you're always going to have to live and work with people who are slower than you are. You can skip out on high school in an attempt to avoid it, take college classes early, rush into graduate school, whatever. Eventually, however, you run smack into the wall of society, and you've got to work within its framework. The ability to persevere through busywork is an extremely valuable skill in that context.
HN "continues to provide...engaging discussion on a range of topics"
12 Seconds Can Accomplish Much
Check out the capabilities of the specification.

http://www.w3.org/TR/SVGMobile12/

It appears I just discovered a valuable, free, resource with untapped potential.

Happy Hacking!
Slightly off-topic, but

s/high school/corporate life/

Some of the same social structures apply to both, as well.

The cartoon applies to my comment, as well. "The way we've always done it" can be a mercilessly rote and inefficient path. The bit of Perl I picked up (along with a hodgepodge of regex, SQL, VBA -- I know, but I had to use the tools at hand -- and whatnot) boiled a five person department down to one person, all the while handling significantly increased complexity with greatly improved accuracy.

If I hadn't taken the initiative and taught myself, none of it would have happened.

Of course, the ex-jock brought in from the outside to CEO, and his team whacked it, anyway. Just like high school.

But I walked away with a better skill set, to a better job.
I don't think I disagreed with you.

I wanted to a) show how "one true syntax" would in itself be challenging and b) explain the utility that diversity has by analogy.

I agree that for most tasks, using a POSIX compliant unix-like system will suffice, but that's as much ground as I'm willing to concede on that point (for now ;)
It's because some people don't like s-expressions, so they've been making up a bunch of other stuff.
Aquarium for the blind at Georgia Tech
Random Acts of Kindness Blog
The one true syntax for type definitions is: don't have special syntax for them. Totally unnecessary. A good general syntax can handle them without a special case.
You might consider using Conkeror (http://conkeror.org/), which provides very, very full Emacs support, while using Firefox for the rendering engine.
Well, yeah, but how else (apart from the "seat flotation devices") would you float except the life vests? And yet, the life vests are mainly for show. As a letter in the 2006 Economist put it:

SIR – The bright-yellow lifejackets are not intended to
act as flotation devices. They are there to make it easier
for the recovery services to spot the bodies strewn across
rough terrain. (I was once asked to put on a life-jacket
over central Germany, some 300 miles from the sea.) And the
advice to adopt a head-down fetal position in the event of
a crash landing does nothing to preserve life, given that
the stall speed of a modern airliner means it will connect
with the ground at terminal velocity. However, the position
does tend to preserve dental data, useful for identifying
dilapidated corpses.

Roger Willis
Peel, Isle of Man

I always thought the number of flights where you needed to get down without stairs was basically nil; turns out I was wrong.
The parent's point cannot be overstated. The amount of waste that edicts from "on high" present is huge in many startups. That great network your VCs are part of, that they can use to pull favors and "make things happen" also means that your company sometimes has to pay its dues.
Of course Microsoft was going to make cut backs. I don't see how this was a surprise at all. To be honest, I think cut backs combined with an increased focus on core components of the company is exactly what they may need at this point. Hopefully 2009 is a year in which Microsoft can deliver on a corporate strategy that actually puts them in a more competitive position than their rivals in this economic climate.
First real iPhone 3G software unlock
My theory: people who don't like s-expressions don't get programming;

Thus, everyone who gets programming and is exposed to lisp becomes a lisp programmer,

and people who suck at programming are left out.
There is also an issue with an implementation: the official implementation from Walter is awkwardly packaged and lacks the source (you can't build it yourself). This pretty much turns it into a toy for Linux/OSX programmers: you can't distribute your D code, nobody will figure out how to build it.

And GCC-based implementation is lagging behind in features, and also scores consistently 10-30% slower than C/C++ in benchmarks, which kills D's appeal as a performant replacement for C.

What Walter needs to do, IMO, is to abandon his own implementation completely and closely work with GCC/Linux community to include high-quality D into standard GCC package. Then we may start seeing decent software written in it.
Hi tptacek - thanks for this comment.

I'm in 100% agreement with you. Also, there's something to be said for a company that is totally autonomous and free from the pressures of an investor.

Though not a hard/fast rule and clearly a generalisation - Building a company with investors shifts the focus to helping maximise shareholder value. Building a company free from investors encourage the founders to think about the customers.

I've always believed if you focus on the customers and build solid products that add real value, the money bit will come naturally.

While I don't deny the benefits and advantages of having investors (money, networking, advice etc), there are many ways to "skin the cat" and build a business.
That's true. You're right, definitely d's.

And yes, I definitely agree w/ your todo list that you need a way to allow several answers or something.

Just wondering, what's it written in?
It worked for me!

Not having to answer to investors saved a ton of hassle (and having all the equity and control at the end is really spiffy) but (to echo some of the other comments here) there are a few pitfalls:

- Don't be a tightwad. In my first year, I would avoid spending wherever possible and often made do with free tools rather than spend cash to buy a perfectly good commercial solution. I quickly learned that's almost always stupid: If you can make a problem disappear for good by buying the solution, reach into your wallet and pay the cash.

- You should be marketing before you've even started development. Marketing isn't just advertising -- it's the social component of design. Where you're 'making something people want', marketing identifies both the 'people' and the 'something' (that is, the market for your product). If you don't have those, you'll end up with a spiffy 'make' that nobody wants.

Erik Sink provides a great summary of the topic under his "Marketing for Geeks" articles (at http://www.ericsink.com/Marketing_for_Geeks.html ). I'd call it a 'must read' for any software entrepreneur.
Yes. I think all languages should be written with s-expressions.
I know many people who are counterexamples to your theory. Languages like Perl and Python have a strong advantage in libraries. If you don't need the things that only Lisp can do, there's not as much of a reason to use it.
If the point of school is to teach kids to deal with the busywork of real life, why not just have kids work 30-40 hours a week? Same result, except the kids could earn real money.
Thank you! You're totally right that if all things fail, we can simply go back to what we did before (ie contracting), slow the business down but at least continue trading.

I hope though it doesn't get "terrifying" ... (play scary music). Heh.
Garfield is terrible; Garfield died some time around 1990. I don't remember the year exactly, but I distinctly remember the strip; it was a Garfield-stuffs-Odie's-mouth-with-a-watermelon-rind joke---exactly the same joke that had run a decade or so earlier.

But Garfield wasn't terrible. Go back and read the first five or six years of Garfield; at the time, it was a breath of fresh air.
I'm looking forward doing more Silverlight + C# than anything else.
In some important cases, languages already have common syntax (such as mathematical operators, regular expressions, and string interpolation such as "\n"). And in those cases, the simplest explanation seems to be: "there was no other sane way to do it".

Some differences really are arbitrary, and could theoretically be merged. Some are historical, e.g. someone worked on Unix for years and thinks in terms of verbs like "echo" because that's what shells used.

But usually, there are very good reasons for any differences.

One reason is the inherent complexity of a parser for a full programming language. It turns out that it's fairly easy to confuse a parser, because they're just not as good as human beings at correctly interpreting the "intent" of a statement. Most languages don't have a reason for being unless they introduce a bunch of unique constructs; and they're lucky if their own constructs can be parsed unambiguously, much less after adding support for extra "standard" constructs from other languages.

Yet another reason is that languages aren't as universal as you may think. For example, what would 'print "hello world"' mean in a makefile...when would the print-out occur? Would languages be allowed to ignore "standard" expressions that they can't logically use, or be forced to invent some interpretation of them?

A final reason is what would happen when languages are embedded in each other, which is even summed up by your example, PHP. If one language is embedded in another, it's a plus that they have different syntax: it clearly separates one from the other. This reduces the risk that you'll have to (for instance) escape or namespace every single name used by the embedded code, to avoid collisions with the surrounding file.
"It's not uncommon for highly intelligent students with passionate interests and a willingness to expend great effort in pursuit of those interests to have an inordinately difficult time with the work they're assigned....those that "deal with it" may wind up with poor or highly inconsistent academic records, which further erodes what value the experience might have had toward achieving their goals by constraining their options for higher education."

You probably don't want to hear this, but even straight-A students are bored by some of what they learn. The difference is that the straight-A students have learned to persevere through boredom, while the smart-but-underperforming students often haven't. It's a useful filter, and the people who discriminate against the latter group aren't simply being capricious.

(For the record: I was always one of the latter group. I'm coming at this from the dirty side of the filter.)
Diagnosis: false dichotomy.
Cheap International Flights
Where to find the best Cheap International Flights
also, you shouldn't need them to raise your rate limit for that.

From Twitter API Wiki (http://apiwiki.twitter.com/REST+API+Documentation#RateLimiti...):

POST requests (ex: updating status, sending a direct message) do not count against the rate limit, but some actions may have caps on them to prevent abuse.

So in the long run you may need it so that you won't hit those caps, but it shouldn't count towards your 100/hr.
Hi tom_rath - Thanks for the advice.

This is bang on target for me as I've been a real "tightwad" lately. Instead of focusing on the outcomes, I've been counting the pennies. It's tough when you're leaking your own money and that's before you've even launched anything! I think it is just something I need to adjust to - that in order to make money, one must first spend it.

I've also realised that marketing early is so important. I've been getting more active on Twitter lately and though I have a decent blog (been on Digg front page and Lifehacker), I haven't given it the love it deserve all year. I wish I had ramped these two promotion avenues up 6 months ago. This way I'd have a ready audience on launch day.

I thought I'd echo your reply for the other budding entrepreneurs out there. Don't be afraid to spend money! Start creating your story and marketing your brand early!
Green Roundup - Green Computing, Green CIO, Greenwashing, and some more
Companies are gearing up for large investments in green computing intiatives. These recent news announcements reflect that -
Hi,

i had the same problem so developed my own lamp based app Simple Invoices - http://www.simpleinvoices.org

its free/open-source - does PDF invoices blah blah

doesn't do time tracking though

Cheers

Justin
Will the Recession Kill Web 2.0? Advertorial on Wall Street Journal Says So 
Web2.0 companies relied heavily on advertisement as their preferred business model. With enough eyeballs we can convert enough visitors into meaningful revenue. That is turning out to be a wishful thinking. Online traffic is growing but revenue tied to incremental traffic is anything but satisfying.
..am I the only one who expected an article about embedded Scheme?
Quick and dirty PHP. In fact, the most complex part of it was piping emails for the direct messages into PHP. I hadn't ever done anything like that, but it's useful to know.
SSD advancements the final nail in HDD's coffin?
Because it's obviously not the only point.
Ah, thank you. I'm thick and missed that. :)
DOWNLOAD FREE CHEMICAL ENGINEERING BOOKS
Does free voice calling still work?
Ask HN: NFAs and DFAs
Can anyone recommend resources for learning how to implement nondeterministic / deterministic finite automatons in lisp? I'm new to the subject and could use some clear, simple examples to wrap my head around.
The Internet's 100 Oldest Dot-Com Domains
How could you have two different languages with the same syntax? The only thing I can think of is one is a subset of the other.
A more pressing problem with SVG is that it is like every other W3C standard: bloated, unwieldy, and obfuscated. Not to mention that SVG does not have all the capabilities of PS. PS is a complete turing complete language specialized for drawing vector graphics. SVG is more restricted and certainly slower to work with, not as well supported, and very very verbose.
Typing was a pretty important course for me. It's painful watching those around me who can't touch type. Though, I'm guessing in this IM world, most kids today don't even have to take a Touch Typing course - they learn it through osmosis. But, back in the day - Knowing how to type was invaluable.

Though, I must admit, we really could have skipped the day of learning how to fold a formal letter in three folds, what the platen was, the carriage shift, etc...
There is an answer to that question:

http://www.xibalba.demon.co.uk/jbr/ranto/

Esperanto is not particularly easy to learn, despite the claims of its founder, so learners devote their time and effort to learning languages with much more return on investment once the language is learned.
I'm also looking for a UK-based virtual host for occasional proxy testing. Does anyone here have experience with http://flexiscale.com/ ?

Alternatively, even a simple UK-based, non-root shell account with the ability to run Squid would probably suffice. I manage a few servers in a San Jose colo and would gladly provide an equivalent service if anyone wants to swap. Feel free to contact me (see my user page).
"web 3.0" is a hot-air term. look at its biggest proponents, all they do is talk.
Web 3.0 will come. Something will define it. I would disagree with the article's assertion that Web 2.0 is about "sharing" rather than profiting off user generated content.

I'm hoping that Web 3.0 will be about openness. The thing that bothers me most about the web is that everything is its own little sandbox. Sure, there are small bits of openness, but companies are still using the data they have to (try to) lock people into their service.

With HTML 5 on the way, Google's native clinet, and potentially other technologies on the way there's a lot that could change. Likewise, there's still a lot of things we all wish the web could do. As such, there will be improvements and when those improvements get substantial enough they'll give it a name.
It would be pointless for you to spend the next six weeks doing 3rd grade homework assignments. Back in 9th grade my geometry teacher graded homework assignments which I never did. The class was obvious and I got the highest grade on the midterm without studying or doing any homework. But, I still got a B because he felt busywork was important. Next year I had an English teacher who constantly gave out stupid vocabulary assignments to help our SAT scores. She saw my perfect score on the verbal section of the PSAT's that year, but she still gave me zero's on those vocab assignments.

So I learned how important busy work was without actually doing it. In life looking for ways to avoid busy work has helped my advance. Teaching people that they need to waste their time stops being useful when you start measuring people on their performance not how they got there. The real reason teachers grade easy assignments is to let people who work hard, but have no idea what there doing pass.

PS: IMO busywork is why few high school valedictorians do anything interesting or meaningful with their lives. If doing well in high school correlated with doing well in life people might start caring about their performance.