skysight-inc/HackerNews huggingface dataset:
Hi DenisM, we're going to push some code in an hour that will hopefully clear that--thank you for your feedback.

To clear things: Instead of tracking simple things like page views and referrals, mixpanel lets you track how users interact with every feature of your website. Just ping our API when a user listens to a song, uploads an image, etc and we'll help you visualize it to help you understand how your startup is doing.

Email me at suhail[at]mixpanel[dot]com -- we'd be happy to help out if you want DenisM =).
What are Winer's profound mental health problems?
Bending Your Computer’s Keyboard to Your Needs
I've got news for you: I am a smug elitist. I judge every person I meet and I usually find myself more interested in the things I don't like than about the things I do like. Some people call that elitism: most people I get along with call it taste. It's something that's a necessity when you're a writer or a designer. It lets you make things that don't suck.

It's not about being a fame worshipping whore (and, for the record, your using a phrase like that is exactly the sort of thing that leads to my judging you as a bit of a jackass yourself). It's about having a respect for the people in the world who have good ideas and execute them. There's only one thing I really, really respect in the world, and that's the ability to get things done.

So when the guy on Delicious responded to me, my reaction wasn't "Oh man! I got Delicious'd!" It was kind of an awe that I was talking to the guy who'd created the first big social bookmarking site. I mean, this is something my classmates use. I had a class that taught use of Delicious. Meanwhile, here was the guy who made it, responding to the opinions that I'd stated. That's pretty awesome. And I don't go out and advertise it, and I don't try to get publicity out of talking to people like that. I do it because, when all is said and done, these are the people that matter to me. Some of the guys here create the online world in which I dwell. There are Facebook employees and Google employees, there are guys with ties to Vimeo and Flickr and Tumblr and Last.fm, and I'm not in awe of them, I respect them. Is that unhealthy?

I don't give a shit about fame. I hate fameballers. I insult people who are well-known and well-liked if they're full of themselves. But I do the same in reverse to people I don't know. Fame isn't indicative of good or great either way, so I opt to ignore it.

What I was saying, which you apparently find elitist, is that I'm much more affected when it's somebody who's done something, regardless of whether or not I've heard of them beforehand. I feel that having created something that I judge to be good entitles you to more of my time than I'd give somebody completely at random, and that means more respect.

So does that make me a whore? Am I a smug elitist because I think the people here are more worth talking to than the users on Digg?

(Also, just to be certain: you're the njharman of Storymash, right?)
Partly it's that, yeah. But partly I think people stay nice and responsible because there are people here worth being nice and responsible to. Some of the people here are really fascinating and really stand-out. (I also love how many people we get here who submit their own writings: this site produces a lot of original stories.)
From the article.

data Tree = Empty
| Leaf Int
| Node Tree Tree

Here, Empty, Leaf and Node are the constructors. Somewhat similar to a function, a constructor is applied to arguments of an appropriate type, then yielding an instance of the data type to which the constructor belongs. For instance, Leaf has the something like a “functional type” Int -> Tree meaning that giving an integer as an argument to Leaf produces a value of the type Tree. As Node takes two arguments of the type Tree itself, the datatype is recursive.

Operations on algebraic data types can be defined by using pattern matching to retrieve the arguments. For example, consider a function to find the depth of a Tree, given here in Haskell:

depth :: Tree -> Int
depth Empty = 0
depth (Leaf n) = 1
depth (Node l r) = 1 + max (depth l) (depth r)
Thus, a Tree given to depth can be constructed using any of Empty, Leaf or Node and we must match for any of them respectively to deal with all cases. In case of Node, the pattern extracts the subtrees l and r for further processing.

The explanation of how Leaf, Empty, and Node work make me wonder what happens if I want to use Leaf for some other purpose, outside the context of Tree. It looks like Tree necessarily "leaks", which is a bad thing.

The definition of depth doesn't give me any reason why I'd want to use such an inverted definition.

I like pattern matching as much as the next person, but it's a tool, not a goal.
Mobile App Investors Pickier A Year Later
OH well the story of Digg in the beginning included you and now your no longer there making the above comments.

Really none of my business, but what is your Digg story after... 20 something hires coder off of rent-a-coder site and becomes wildly successful?
Can you point to some papers/sources on the scurvy issue? I'd be interested to read as I have heard the opposite.
Simple site...if you could make the CAPTCHA look a bit more readable that would be great.
"I could 'fake it' for the rest of my career, or I could invest more effort in learning how to write better code faster in the first place."

Uh, the techniques he describes are how you write better code faster in the first place.

There's no magic "better code" fairy that comes along and instantly makes you a master programmer. You get better by deliberately seeking out ways in which you're failing, and then correcting them. And you use the techniques the article describes - code reviews, assertion, unit tests, and static typing - to do that.

Eventually, those techniques become internalized, so that you still do them even when you take away the crutch of language and programming environment.

Notice how studies of master Smalltalk and Erlang programmers found that they just don't make type errors, and that when you add a static type checker to those languages, existing programs pass unmodified? A lot of people have taken this as evidence that static typing isn't necessary. But there's another interpretation: master programmers write their programs as if they were statically-typed, even if the language itself does not require or enforce this. The reason they can get away with fast-and-loose programming languages is because they've already disciplined themselves into automatically doing what the strict programming languages enforce.

And anecdotally, the vast body of crappy PHP and JavaScript code seems to support this interpretation.
> supermarkets tend to value longevity, ability to store, hardiness, appearance

Supermarkets value what is profitable. You know, the difference between what people will pay for something and what it costs to provide said something.

People pay more for appearance. In store shelf-life reduces costs and post-purchase shelf-life increases buying and reduces angry customers and returns. etc.
so thats why they are all so chilled out
This has 5 points right now. I can see who submitted it. What I'm trying to understand is how it got four other votes.
You write that like "buying stuff" is a bad thing.

It isn't. Stuff makes things possible.
The Theory of Business Enterprise
That's what unit testing is for? True, and do you understand the trade-offs? Unit testing is far more time consuming than assertions. Moreover, you're forced to write artificially short routines, routines of a length that research has shown to have a higher defect ratio. For myself, I've not yet been convinced that the costs/benefits of unit testing surpass the costs/benefits of assertions, at least when you're a small team working on end user software.
Petroleum Solids Dewatering Centrifuge Rental
Petroleum solids provides dewatering equipment rental to environmental industries throughout California, providing centrifuge and water minimization and dewatering equipment.
Entirely agreed! I was confused by his post, which said:

Not so much to spend it on stuff, but rather the freedom that money buys in today's society.

And I was arguing that the freedom money buys is the freedom to spend money on stuff.
I refuse to participate in what I call "forced viral" schemes. I'm not going to spam my followers with essentially an advertisement for WeFollow just so I can join it.
I sent some of pg's essays to other musicians. Replace startup with band, website with music, VC with major label, $ million with $ thousand, and you get a surprisingly accurate description of the music business, its people, and the hype.
True story of BLOBs
It's pretty hard (even if you are a great programmer). If you are looking to find a great programmer who's available long-term, hire someone who's PROVABLY great and available short-term to do the interviews/search for you. Think Stroustrup or Stepanov if you are looking for C++ programmers. RMS or Steele if you are looking for Lisp programmers, etc.

For every good programmer I know, I know many more who are total bozos who claim to be great and are thought by some to be great.
with sufficient caching you can serve arbitrarily large numbers of requests

Note the collorary: with a sufficient business model you can earn arbitrarily large amounts of money relative to hardware costs.

Which always makes me wonder why the clooooooooooooud gets so much press for cost reduction. If your application doesn't value data by weight (or worse, values data at 0), your hosting costs are going to be rounding error. Reducing the rounding error to half-sized doesn't strike me as the number one best use of time for the majority of businesses.
Experiments in making money online
The success of drug decriminalization in Portugal
Barack Obama 'on' PHP vs .Net
I suspect that math is hard for bozos, but I actually know tenured CS professors who are total bozos at programming, and probably shouldn't be listened to even regarding minor issues. Publishing fluff papers, going to conferences, writing grant proposals and politicking is all they are good for.
Cray-Cyber : Public access crays
Plaxo’s Top Support Article: Delete My Account
CRM Small Business Solutions
CRM Small Business Solutions - The Contractor Office's Small Business CRM Software is designed to make your business life easier and more efficient. For small businesses, small companies, contractors, and more!
And Brazil is the world's sugar daddy: http://current.com/items/89112645/the_world_s_sugar_daddy.ht...

Maybe the time has come for South America. They're rich in natural resources. Let us hope these resources are used for the benefit of the peoples. not just the ruling kleptocracy.
> "But a biological reason is that the human body is not designed for processing fructose."

Actually that's false, it's perfectly designed for processing fructose. HFCS wouldn't be a problem if you didn't process the fructose but it still tasted sweet. The problem is we're biologically designed so that fructose doesn't trigger the same processes as regular sugar.

The reason for this? Well primates formed a symbiosis with trees, they gave us fruits with lots of energy in the form of fructose, and in turn we killed the species that threatened our trees.

The most interesting thing I learnt was on the whole question if humans would have evolved if dinosaurs had been around, and the answer was yes. It's yes, because we didn't evolve by chance, we evolved because the trees 'chose' us to. The response to large herbivores that strip-feed was primates, because we protected large areas of land and specifically the trees we fed from. The prime example of this is that when fig trees are ripening, it can be dangerous for camera crews because a 150lb chimp is likely more dangerous than a 150lb man.

So essentially the key problem with HFCS is that we're designed not to respond to fructose. We simply store all that sugar as fat, which again is the problem all humans face. Society is trying to fight biology, and it sure as hell isn't an easy battle.
I agree with both of your comments; however I want to point out that there is a Wendy. Dave Thomas named the restaurant after his daughter, Melinda Lou (her nickname was Wendy).
You have your own social network?
Could you pleassee show me?
In chrome, scrollbars show up at the wrong times, breaking the page (kinda kinda). This was the case for the "about" and "team" pages.
You are right about pollution - price doesn't tell you anything about that.

Price mainly tells you about energy usage (carbon emissions). And resource usage (like mining).

But you were talking about local, not about feedlots. And the reason people buy local is energy. And for that, price is an excellent way of detecting which product used less energy in it's making.

So if frozen blueberries from Brazil cost less than the blueberries from the farm up the road, then, despite not being local, they used less energy in the growing.

Personally I think that pollution is important, not just CO2, so I buy organic when I can, and I don't care in the slightest about local.
This is like a football coach asking how to recognize good players. If you are asking, you probably shouldn't be working on something where programming is central to your success.
"Compile time checking can't catch most non-trivial bugs. Even if you swear by it, given the advances in Java IDEs, I would have to be quite lazy (or careless) to write Java code that doesn't compile."

You should not underestimate the power of leveraging the type system to prevent programmer error.

Do not think of the type system as a nanny. Instead, think of it as an integral language tool designed for your use. Use this tool -- the type system -- to convince the compiler enforce code correctness. Using the type system in this way will allow you to spend less time writing tests, as compilation can validate correctness.

If this seems unlikely, spend time with a language with a powerful type system -- such as OCaml, Haskell, Scala or F#. You will find that it is possible to implement equally succinct and considerably more correct code through leveraging language features -- including the type system.

Additionally, this exercise is fundamentally applicable with the real world. Should you use F# or Scala, you will find a vast trove of existing libraries, and high-quality, high-performance VM implementations at your fingertips. Your correct code, written faster, will run faster.
This attitude just wouldn't work for me - if I didn't feel like a great programmer and I didn't enjoy coding/designing/testing/releasing so much I would change my job.

Relying on tools and techniques may help me coast through my career - but where's the fun in that? Tools and techniques are all well and good, but they can't become the crutch you lean on.

And please, please - do try more languages than just Java/C/C++/Ada.

I program in C/C++ with a team of very talented developers. None of us are humble, all of us believe we can be the best and we have a lot of fun. Plus our product is great!
Every business extracts money from people. This thread is about the value people get in return.

Creating a single location for a single product may be a new model of retail but selling a product with little value to a naive market is not.

EDIT: I just realized it's not a new model of retail at all. One person selling their wares predates the concept of retail stores and it's still alive today on streets and in markets.

Let us not forget Joe Ades: http://www.youtube.com/watch?v=2ia7TF2yVQU
Is there a picture of the pizza? I'm curious to actually see it.
> myth of business journalism in his "submarine" essay

Fascinating article! Thanks for the tip. Submitted :-)
http://news.ycombinator.com/item?id=516032
Usability Analysis of Apple.com: Why is it so Good?
Well, I view it as a little different than feeling like a bad programmer. Basically-- you get to a point when you realize "The most important trick to being an amazing developer is always sincerely doubting, checking, and double-checking that fact." I feel sorry for developers who believe they're amazing without that-- they won't truly be good until that feeling dulls somewhat and they start verifying their code by habit as if they were newbie developers.

In my case, I view it more like how Socrates does: "One thing only I know, and that is that I know nothing."

Design and implement as brilliantly as one can, but then use all the tools available to protect oneself from the possible dumbass mistakes that humans inevitably make.
Sorry for the poor choice of imaginary character, delano! Thanks for pointing out that there is a girl named "Wendy" from whom Dave got the name for his restaurant - it really doesn't change the point, though. There is no "Wendy" in the kitchen whipping up burgers for hungry customers. Wendy didn't spend years perfecting her recipes, etc, etc. In retrospect, however, I wish I had chosen Big Boy for the example instead: http://www.bigboy.com/legend.asp
good to know - the local-git remote-other model seems to be pretty common (and one of the strengths of git - as its so easy to get started with git).

You also may as well say who it is ;)
Who doesn't like poutine??
The power of a whiteboard
I didn't understand object oriented programming until I understood the limits of my brain.
Exactly. That's why I suggested math/cosc combos.
Watch the skeleton key movie trailer online
Even Faster Web Sites
It's more fundamental than that - if you don't feel like a great programmer then the techniques described (static checking, unit testing, code reviews) become what you depend upon rather than just tools of your job.

For instance, code reviews are great - but maybe you can't use them in your one-person startup. That shouldn't stop you from still writing great code! It may be harder - yes, but you have to have the confidence that you can do it.

I mean consider the author's dependence on static checking. There are a lot of wonderful dynamic languages available (and a lot of great programmers in those languages too!). The author - because of his philosophy of being a "terrible programmer" is simply going to miss out on whole genres of languages and techniques.

IMHO great programmers have confidence in themselves - just as in any other field. Tools and techniques are really secondary.

EDIT: Grammar.
True, though reduced hardware cost is only part of the promise of cloud computing.

Elastic scalability is a major advantages in some cases, allowing you to rapidly scale up (and back down) while minimizing waste. "The cloud" absorbs the fluctuations.

Easy deployment and thus reduced administrative costs might be another. With EC2, etc that's might not be the case, since you still have to set up the OS images and other infrastructure yourself, but things like Heroku might help.
Does any of the documentation suggest why it works?
What I want: Time (I wish I could live forever) and Happiness.

Striving for it by: Friendship, Family, Health, Savings, Entertainment
How much code do you think Github stores? I'd wager at least several gigabytes.

Git -does- scale. It just doesn't scale as one huge repository. You do need tools on top to manage multiple projects. It'd be nice to have an open source Github.
Turns out this isn't 'new' by any means, but it is definitely cool. (i have no evidence to back up this statement other than childhood memory)
IT seems to be moving to making basic services commodities.

Financial services are already being handled by contractors for many small businesses. The requirements to legally handle credit card info can be expensive, so small websites just contract it out.

And unless you need some specific networking solution, like if you're running an mmorpg or using the network to trade stocks, outside services will probably meet your needs.

So your IT department running your server is basically an insurance policy against downtime. And once web hosting turns into a commodity, you'll probably be able spend less on insuring against downtime using outside services.. I'm sure you could spread your hosting out between several hosts for less than running your server.
To your question: I guess not. He just has a different development background. Productions like game dev or CG work require to track huge binary objects and source code in sync (I'd argue that, in these environments, any attempt to manage binary objects and sources in separate systems has eventually failed; here, source code includes shader programs, for example, which typically depend on the texture images they work on; they're inseparable. I've been there, done that)---but if you're in this industry and have managed to do it well, I'm eager to hear about your experience.

It seems that most of people discussing here agree that "Git is good for source version control, while Perforce is for asset version control". So I'm not really sure what people is arguing about.
Would You Bet $100,000,000 on Your Pet Programming Language? (2007)
Oh great, article about how much money a scam generates! We need more of these on the Internet, it's too honest and valuable now! Everybody that's out of job should do some ebay scam, why bother working while there are so many easy money making schemes...
Customize Yahoo Toolbar
The main problem is that there are limited number of users that really need large asset tracking solutions, and these big players have spent many years and now have something more or less working.

To surpass the existing systems, you really need to work on the actual production assets, and in the environment where hundreds of artists/programmers are updating it daily. Such large "practical" production assets are not easily accessible to startups or open-source projects.

I don't say it is impossible, though; AlienBrain seems to manage sustaining business. And I've seen few people who are truly happy with their asset management systems.
I enjoyed this article enough to wander about James' site for a bit. But I didn't appreciate his core point until I read several other articles: judge a language by the problems it solves. Or even more harshly: the problems it has solved. He hammers it home in this gem, which may or may not have appeared already:

http://prog21.dadgum.com/13.html (http://news.ycombinator.com/item?id=516718)

...And I reluctantly agree with him. I love functional programming. The code is art.

But I cannot justify building a business around it: he hits many good points, but to me the killer is library availability (it's the natural extension of judging based on achievement). When I start a new project, I want to write as little code as possible. I can't do that if slightly-more-complicated-than-basic structures and patterns aren't available to me.

Sadly, this isn't even a criticism of the languages I love. It's circumstantial. But it's still killer.
Hey, thought that was a pretty good idea for finding "rising stars". Seems like it's been done http://www.boxuk.com/followfriday/

This obsession with large-scale followings seems rather pointless, but I do enjoy seeing other developers or interesting people.