skysight-inc/HackerNews huggingface dataset:
Car drivers go on joyrides too. Are spans of straight road that few and far between? You don't have to pass immediately.

It seems like it would be harder to pass a car going 5 mph under the speed limit, which I presume happens more often. More people need to recognize how humans tend to perceive the actions of minorities and adjust their sentiments accordingly.
This is true. But it is clear that licensing doesn't help anything; automobile drivers are required to know the rules of the road, but they violate them anyway.

The best solution I can think of is to drastically reduce speed limits in areas where bicycles, cars, and pedestrians are going to be using the roads. Nothing moving faster than 20mph, and the once-fatal accidents become mere annoyances.

It will never happen, though, because people would have to take public transportation to get to work quickly. The horror!
Garmin Dashboard Disk
Garmin Dashboard Disk Frontier PC Canada specializes in rapid delivery of IT hardware and software products to Canadian business and government clients through our national warehouses located in Vancouver BC, Toronto ON, Calgary AB, Montreal PQ,Richmond BC and Halifax NS
This is a great project, looking forward to it bustling with code.
I'm not too impressed with Mark Zuckerberg, there has been way too much smoke around the origins of Facebook.

The settlement (65 million) regarding the ConnectU case is prett much an admission of guilt. So, to take this 'whiz' as a role model basically glorifies the personality of a character that started his meteoric career by stealing designs and businessplans.

See here: http://www.guardian.co.uk/technology/2009/feb/12/facebook-ma...

for a lot more info about that.
"Well, there's a context-free assertion."

Read the comments on any newspaper article about a car-bike collision. Hard data would've been nice, but it's still a fact.
I'd like to, but I wrote it on company time and hence don't actually have the
right to distribute it.

I will say that the trickiest bits were extracting the exact information from the database, and figuring out the how to make arrows point to and from individual fields, instead of from the table in general.

Getting tables and fields from PostgreSQL:

select
table_schema,
table_schema || '.' || table_name as qualified_table,
column_name,
data_type
from information_schema.columns
order by table_schema, table_name, ordinal_position;

Getting foreign-key information from PostgreSQL:

select
kcu.table_schema,
kcu.table_schema || '.' || kcu.table_name as qualified_table,
kcu.column_name,
ccu.table_schema as referenced_table_schema,
ccu.table_schema || '.' || ccu.table_name
as referenced_qualified_table,
ccu.column_name as referenced_column_name
from information_schema.constraint_column_usage as ccu
join information_schema.key_column_usage as kcu
using (constraint_catalog, constraint_schema, constraint_name)
where ccu.table_schema != kcu.table_schema
or ccu.table_name != kcu.table_name;

As for the DOT output, I wound up using their HTML table support, generating a unique name for each cell in the table (port="blah" on each td element) and defining the foreign key arrows as going from table1:field1:e to table2:field2:w when table1.field1 is a foreign key referencing table2.field2.
Agreed, while I experienced no hiccups, thankfully, on my very hickup prone MacBook pro, Snow Leopard is quite spectacular. And all of my software works just fine too. As a college student who hardly ever likes to pay for software, this is something I truly believe is worth it's (low) pricetag
>He explains that at the speed and volume with which they handle transactions, an error could cause them to disintegrate in a handful of milliseconds.

Right. That's why you should have software monitoring things instead of a human.

>Besides – why write more code to check if your original code is correct, when you can just write correct code? And if you write software to check your software, then do you have to write software to check the checking software? Police police police police...

Same reason it makes sense to have proof checking software like Metamath. It's fairly easy to write software that has an 90% probability of being correct. It's maybe three times harder to write software that has a 99% probability of being correct, so it's cheaper to write 90% likely to be correct software and then another piece of 90% likely to be correct software that checks it. That's what my intuition says.

Anyway, I think monitoring software would be much easier to write than actual trading software.

if bank_account < 0.9 * prev_bank_account: stop_trading()
But why mess with the selectors by hand? http://search.cpan.org/~vbar/HTML-ListScraper-0.05/ can discover the structure automatically (well, sometimes :-) - some pages just aren't regular enough, but it does work on HN, for example)...
He's a Harvard College alumnus, what did you expect? ;-)

Though the origins of FB are shady, Zuckerberg still deserves some credit IMHO. I will be blunt: building a social networking website is piece of cake. Designing it so that the users like it enough to use it on a regular basis, maintain it, and scale it are much harder.

History is full of stories of people taking advantage of other people's ideas. It sucks, I know. Let's face it: scientists, engineers, hackers are the tip of the spear, the guys taking all the bullets and all the risks. Business people are the smart ones coming in the 2nd wave, when the beach has already been secured, to reap most (if not all) the rewards. Some people, myself included, actually enjoy being in the trenches... and cannot imagine being a rear echelon pussy. To each his own. I probably won't ever be rich, but hopefully I will spend my life working on interesting projects...
Government programs have funded the majority of these. Haven't they?
Sure, if he wanted to block it completely. Or he could just do the redirect with a simple check of the Host header.
'sneaking' being the operative word. Obviously the writer has skin in the game (and this is acknowledged up front), but the real issue here is that Yelp is only getting away with this because they're a very established player with a powerful brand that can afford to take the risk of defying Apple.

Mr Galligan is working for a little nothing company that would probably just receive a shrug here on HN if they did the same thing. By observing the terms of their development agreement in good faith, their business model has now suffered relative to the competition. I have no idea whether his startup's ideas/technology are worse, the same, or better, but we're that much less likely to find out now because a more established competitor has (apparently) got away with ignoring the terms of that same agreement because they can.

Good thing Yelp wasn't offering voicemail, eh?
> Designing it so that the users like it enough to use it on a regular basis, maintain it

Apparently those components had nothing to do with him

> scale it

That seems to be one of his contributions, the second is to have some staying power.

I've been on the receiving end of a character like mr. Zuckerberg at some point and I think that by glorifying him the people that monitor this sort of stuff might get the idea that this sort of behaviour is ok.
Can someone explain how moving existing investments to a new fund works?

"Our understanding is that the fund is partially closed, and some or all of Sacca’s previous investments, including Twitter, will be moved to the new fund. Meaning new investors in the fund will start off with stock in Twitter."
"To view this page you need Microsoft Silverlight 3 plug-in."

I don't think that was a good idea.
That is their claim, yes. As far as I know, no one has ever tested this in a US court. I would not be hopeful. Also, the initial term "Lame Ain't an MP3 Encoder" referred to their use of the original ISO code along with a patch. Since one would have to use the MPEG/ISO code and you couldn't encode mp3 files only using the LAME patch/library, they avoided the patent issue. Since 2000 they have instead shipped source code with a complete rewrite of the ISO code. They also post a notice that an MP3 patent license may be required for use in some countries. According to the conventional interpretation of US patent law, the US would be one of them.

Edit: By the way, don't be fooled, our small legal disagreement doesn't affect my very positive view of you as a person and developer :)
"Algorithmatic, by itself, is a small and simple dynamically typed Object Oriented programming language that serves as a common denominator among popular programming languages. This means that Algorithmatic doesn’t rely on any exclusive/new feature – this guarantees the ability to port descent implementations to any other language."

I don't get it. How is a bunch of common algorithms implemented in a custom site-specific language particularly helpful?

Pseudo code for algorithms is widespread, as are working algorithms in almost every language you can think of. How is porting from this "algorithmatic" langauge any better than porting from (say) a Java implementation?

from the FAQ,
"Implementations of all type of algorithms do exist wildly on the internet. However, these implementations differ in quality as much as they differ in syntax (or programming language.) "

So how does adding a new syntax (and behind the syntax, an untested interpreter/compiler, runtime etc) and inviting random people to submit algorithms in this new language solve this problem?

I must be missing something.
Woe unto he that has to work with the other guy's high level abstractions that are inflexible, internally complex, and only fit the limited set of uses that were encountered during the initial development and are not easily extensible for additional features.

I've spent most of my consulting career crash course hacking (no time/budget for a proper rewrite, incurring more technical debt... I do what I can to improve things structurally) around terrible, terrible pattern heavy libraries that sought to remove every single line of duplicate code and ended up abstracting out all the wrong things. I have literally spent man years dealing with bad object<->HTML mappers.

Code duplication can be overwhelmingly preferable to generalizations that are created too early. I say it is often good to duplicate code until you have a better perspective on what it really makes sense to abstract, and have a better perspective on what a good implementation of generalized abstractions will look like to allow maximum flexibility later.

Design pattern junkies have given me some of my worst days. I don't even know if this addresses your post, but I agree with it. Hacking some terrible code right now.
Chris seems like a groovy dude, but I have to admit mild annoyance at people labeling themselves a venture fund when doing basically angel-level investments. It just sets up different expectations and causes a bit of confusion.
Simply amazing that it's 2009 and people are still trying to escape strings by hand. C#, the language for which this piece was written, has had parameterized queries since 2001.
Wow, the article's author is Michael M. Grynbaum, the same guy who first wrote about our startup!

http://www.nytimes.com/2009/02/08/realestate/08rent.html

I hope that's a good sign. :P

(Don't bother reading the article; our idea has morphed a lot.)
Most people don't understand how technology works. They think it's the "leadership" (I hate that word) of the founder / CEO that, somewhat miraculously, pushes technology forward.

I do not admire nor glorify Zuckerberg. I don't understand why some people do. But then, why do people glorify Steve Jobs? Sure, without Jobs' sense of design and aesthetics, Apple would have never become more than a garage startup, but without Wozniak's technical expertise, Jobs would have never been in a position where his sense of aesthetics could make a difference, and he would have ended up a failed pothead like many of his generation...
Some very interesting tech, based on very nice mathematical results: read the pdf, and the papers by Candès & Tao.
Quiz Facebook: Will We Have Control over Our Own Information?
From the perspective of implementing an individual algorithm, it's easier to just google an implementation. But pretend you're writing the standard library internals for a new language['s reference implementation]—where do you start? How do you compare algorithmic approaches, each written a slightly different way, to know which one you want to use? For that matter, how do you know which algorithms you "need" to put into your language (given that if you don't include it, your users will probably just write it themselves instead of complaining to you)?

I think the final goal, actually, would be to have an easy grammar spec that allows automated transformation of this particular code into a given language. That way, all languages, no matter the platform, can have the same core set of algorithm code. This would become the "language-neutral" encoding of the algorithms, open to inspection, and the other libraries produced from it would just be considered object code, not to be modified themselves. Whenever a flaw was found in any language's version of the library, the algorithm or the translating parser could be updated, and the flaw thus fixed in every version of the library. Whenever you came to a new language, you could rightfully expect the same core to be available. Whenever you started writing a new language, you'd get the core "for free" (in est, the price of writing a translator parser spec.)
'Type algorithm name here...' "Simplex" → 'your search term didn't match anything'

They forgot the "beta"-badge?
Try to think it through.

First of all, they cannot increase the latency of their software; in fact, as is explained in the presentation, they work hard to keep it as low as possible and to continue to lower it. An extra layer which must monitor everything would increase latency.

Secondly, what are the algorithms used for determining sanity for this monitoring software? The same ones used to determine behavior of the original system? Then what is the point of writing the second, monitoring system? If it's different, then one of them is incorrect.

if bank_account < 0.9 * prev_bank_account: stop_trading()

What does this mean? As a demonstration of generalization, you might as well have written "if (should_stop) stop;" and similarly affected the discussion.

It's fairly easy to write software that has an 90% probability of being correct. It's maybe three times harder to write software that has a 99% probability of being correct, so ...

Their software needs to be as close to 100% correct as can be reasoned. The speaker notes that the static type checking in OCaml helps a great deal with both reasoning about specifications (what do I think this should actually do?) and preventing errors. Easy factorization in functional programming style helps break the problems into smaller components with little state, as well.

it's cheaper to write 90% likely to be correct software and then another piece of 90% likely to be correct software that checks it.

Assuming those statements are true and it were possible for two discrete systems to function in that manner, that still leaves you with a large amount of known probability for error.

You should watch the video, I think you will find especially interesting the part where he describes how they were unable to pay enough money to get people to even carefully review certain types of code.

Additionally, I think you may be conflating static checking (which OCaml does) with live monitoring of a working system:
Same reason it makes sense to have proof checking software like Metamath.

That is a static check. Metamath does not fork a process and monitor your proof, assuming that were somehow possible.

That's what my intuition says.

Intuition is often correct when dealing with things which are intuitive.
It's good to see experience win out for once. When I read that he hired an enterprise guy with 17 years of experience, at first I was doubtful (I've met a number of those who I wouldn't want running a start-up team), but from the sound of it, the guy was solid and knew his stuff.
Incidentally, I submitted this post from my eeepc, in firefox, using an online app.
People like having a figure-head. Someone or thing to attribute success or failure to. Look at the office of the President. People expected Obama to rush in and fix everything, put people into homes, and make America some sort of utopian society. Is that likely? Is it even possible? I highly doubt it.

True, without the Woz, Apple would be nothing. That doesn't mean that Jobs is nothing. He's the figure-head of Apple. If Wozniak had've taken the position that Jobs now holds, there'd probably be many people preaching the gospel according to Wozniak.

It's much easier to personify a company through an actual person. A company is sort of the amorphous blob that does things. You may never know exactly how a specific company does certain things, but having a person to attribute that to certainly helps. It's not exactly right, but it's not entirely wrong either.
Hackers don't come into the world fully formed. Some people are hackers by nature, but have not yet developed the skills or the knowledge. There need to be resources for them to tap into, and to help direct their otherwise potentially inefficient hacking.

Further, http://news.ycombinator.com is also inhabited by a lot of people with a stronger slant towards entrepreneurialism, people who might want to know about these sorts of technical issues when they plan strategies or make choices, but don't necessarily have the time to do the hacker thing and explore the world of home-based web sites for themselves.

I think it belongs, in part becuse I think HN isn't just for the existing, well-matured hacker, but also for the budding, developing hacker.
> there'd probably be many people preaching the gospel according to Wozniak.

I think I probably would prefer that.
Then you aren't gaining anything over simply calling 'new' on that class, negating the point of the factory pattern, right?
from this i conclude the that Inc. crowd doesn't know that the failure of large software projects is about as likely as success. strange.
I didn't bring up audio; I just used dB. dB are a perfectly good unit to measure a signal-to-noise ratio for any continuous scalar signal: audio, radio, light, voltage on a wire, whatever. I was thinking of the analogy to radio in particular, where you can use spread-spectrum techniques to get useful data out of SNRs much worse than -10dB.

It certainly is the case that the article author thought Facebook contained an unbearable amount of noise, and I don't.
Phone Chat Lines
Phone chat lines are a great way to meet other singles searching for fun, friendship or love.
I use my browser as my 'auxiliary memory', if I don't have time to read something right away I just open a tab and leave it until I have time.

On a typical day this means that in the morning I start with the session I left the evening before, say 25 tabs or so (usually project + whatever documentation I need for it), then as the day goes by the number of open tabs slowly increases. By the evening it probably is at its peak somewhere between 50 and 70 or so, then before I go to bed I catch up on my reading and close anything that doesn't have to do with work ready for the next cycle.
Chapter 7 Bankruptcy Lawyer
Filing Chapter 7 bankruptcy will help you to eliminate debt, credit card debt and prevent Foreclosure. Chapter 7 bankrptcy at Usloanz could help you and get a bankruptcy lawyer for free. If you qualify Chapter 7 bankruptcy your unsecure debts will be wiped out.
Filing Chapter 13 Bankruptcy
Chapter 13 Bankruptcy at Usloanz offers strong protection to help you eliminate your debt. Chapter 13 at Usloanz can stop foreclosure,repossession, wage garnishment and some lawsuits. File chapter 13 bankruptcy with attorneys in all 50 states.
If they change their terms and conditions, good. If not, move on, you cannot use your results in any good way.
Yeah but transmit isn't free, and I don't use FTPs enough to pay for it (though I paid for flashfxp on windows a few years ago)
The implementaions here don't look that great.

Just take a look at the Naive Prime Generator. I know they call it Naive, but its very naive. To the point where if its checking if i is prime, it tries to see if number greater than i evenly divide it!

There are other optimizations they could toss in there (e.g. since they keep an array of prime numbers they need only divide by those) but you could try to argue that these make the code harder to understand... so for those I'm willing to give a pass.
"But pretend you're writing the standard library internals for a new language['s reference implementation]—where do you start?"

(Books by) Knuth? Cormen ?

Seriously though, if someone implementing "standard libraries" for a new programming language has to lookup implementations in some site-specific untested language, it doesn't bode well for the new language's future.

People who write such high impact libraries should be well versed in algorithmics, be able to (1) analyse and port pseudocode, (2)read and comprehend published papers (with mathematical proofs etc), (3) read comprehend and port existing implementations etc.

"I think the final goal, actually, would be to have an easy grammar spec that allows automated transformation of this particular code into a given language. That way, all languages, no matter the platform, can have the same core set of algorithm code."

Why not write an automated translator for(say) Java or C then? vs throwing yet another language into the mix.

Besides, this sounds too idealistic to me. But I guess seeing is believing. I'll believe it when I see a new language's implementor takes this path for a standard library.

I can't think of anyone good enough to write a robust, performant language interpreter/compiler and runtime balking at implementing algorithms and needing automated translation from a website.
The problem that I have seen in these frameworks that handle A/B testing is that they ignore the basic laws of statistics. All groups are different given large enough n. That's what p is about, do you have enough data to tell the means apart. The closer the means, the more data you need. What you really care about is how large the difference is. That's called effect size, which is really just how far apart the means are in divided by a combined standard deviation for both groups.

I certainly wouldn't be making rash decisions on data without a good effect metric.
I do wonder what will happen, when everybody starts making 80% solutions. When I use three 80% done third party libraries will I get (10.80.8*0.8 =) 51.2% done library?

Does 80 percent solutions only apply to the highest level?