skysight-inc/HackerNews huggingface dataset:
Thanks to you and others for respectful responses on what I didn't realise was a hot-button issue.

You ask, "In general, if you have an entity with a well-defined natural key (users and their logins, shipments and their tracking codes), why would you use an autogenerated key that's meaningless?"

I like my approach because of reduced cog. overload. When I'm designing my database, or writing queries that jump through several tables, I always know that my foreign key in table Person [1] is going to be of the form fk_organistaion_id. All I have to do is remember table names and relationships. If I also had to remember arbitrary keys, that would increase memory overload. When I'm doing consulting and working on several applications in parallel that's less practical. Similarly, I always know I can store a reference to an ID column and know I'm it will be there and uniquely identify a row.

I don't think the many-to-many example really answers to my question. The issue of whether it is commonly done is different to whether it is good practice.

I can imagine there might be performance advantages to having a composite primary key for a join table. But - I expect you could get equivalent performance on id|fk_a_id|fk_b_id by adding an index. This comes back to the principle of - do you write your code principally to be run, or to be read. I have a memory like a sieve and write to be read.

I think composite primary keys are done for the wrong reason at times.

The problem in the example in the article linked to is not a poor use of keys, it's a poor design of system. They're trying to enforce type at the schema level. Though he doesn't spell it out, I expect the reason they're getting bizarreness is because they either have people interacting with the database at too-low a level, or because they have multiple applications hung off it. More on this in a second. [2]

Similarly, I think your attempt to use the database to enforcing typing rules will work at some levels but runs out. For example - imagine if a user was only alowed to have three labels. Or that the label musn't have any spaces in it.

While you can delve into triggers [3] I think it's misguided to think you can enforce a general sense of business logic at the database level. That stuff should be done by an application surrounding the database. Then all interaction with the database should go through that one-and-only-one system that owns the database.

Databases have some type information but it's very primitive and inadequate for all but the most simple of scenarios. I've found that once you acknowledge that you start designing schemas and the systems around them in a way that is very different to what you'd learn in the Oracle course.

--

[1] Another quirk of my style - singular table names - because it makes it easier to wrap ORMs around it without having code that reads as bizarre

[2] The second example is riduculous. They assigned an int to the wrong place. That's not a problem with schema design, that's just a stupid mistake.

[3] I've done plenty of this work on hairy enterprise systems
Not sure how this one works, but Macs have had a thing called NetBoot[1] for quite a while which does almost exactly what Apple is describing now.

[1]: http://en.wikipedia.org/wiki/NetBoot
1. Never heard of gitorious

2. Github is so inexpensive such that cost is irrelevant.

3. Free is rarely a sustainable business model, and we are hesitant to put our source in the hands of an entity that may not be there tomorrow, even though git is distributed.
This is cool. Mac OS X is really moving away from dependence on having an optical drive or any other external. I have and SSD instead of optical and it's a nightmare to disk first aid or re-install os x.
Me too, I would probably go there more often knowing that I wouldn't have to worry about a baby screaming in my ears or a toddler running around. You can get the same affect by choosing to go to a more expensive restaurant, but it's nice not having to do that.
It's the same scenario in Boulder, CO. There is at least a 5-1 ratio of business-types to programmers.
We're Funded & Making Money. Looking for Third Developer
Seriously disappointing,

2gb ram in a $1000 laptop? How much more could bumping that for 4 actually cost them, $15?

4gb ram/256gb hd was expected to be the new base, not the ceiling.

Guess I'll have to wait on the other 'ultrabooks'
Could you use a table design of id|fk_a_id|fk_b_id, and then complement with indexes to get equiv. performance of the direct composite primary key?

Assuming so, I think composite key is premature optimisation.
Entrepreneur Culture Rather Than Risk Is Europe’s Problem
Is there any chance you could add a function to search non-US Kindle stores?

I think this would be a very useful app, but Amazon has placed this annoying restriction on their Kindle shop that prevents me buying any of the books listed. :(
Thank you! I hate these things
I would happily pay a significant premium to travel on airlines without screaming children.
Actually I think a restaurant should be able to do this. They would be tying their own noose, which is the way it should be.
Known Issues with Adobe products on Mac OS 10.7 Lion
> but I haven't seen any evidence that it's the result of
> endemic, institutional sexism

You don't consider girls being encouraged to succeed by their teachers and society at large while boys are not (a common situation in schools today, and a stark contrast to as recently as 10-15 years ago) as "endemic, institutional sexism"?

Or you haven't seen any evidence that this difference in societal attitudes is causative in better female school performance?

I can accept the latter, though there is in fact experimental data that suggests that boys do better with more encouragement...
Can't say, I am recent OS X convert. Took me a second to figure out why all the stuff I installed with brew stopped working. Turned out git somehow got uninstalled/disabled, and brew relies on being able to find gcc in the path, and it was no longer there. Updated to newer XCode to get gcc back, and all is happy.
I have overall mixed feelings about this "user test." Maybe it's just a problem with what the industry calls "user tests." The demand characteristics of the tasks in this "test" make it difficult to make any real conclusions from the data. It's not measuring real user behaviour.

The tasks were great for identifying some confusing elements, but this was more or less a focus group and barely analyzes true usability issues. User preference or evaluation != usability problems. The only thing I found useful was the feedback regarding the menu structure. I did think the "click where you ____" was a good way to gather feedback, though.
I have the fully-loaded 13" from the previous iteration. It replaced a $3000+ Macbook Pro from 2008 and on paper, was less impressive in almost every regard except for the SSD.

I thought I would keep the MBP around just as a desk station but after using the Air, I just can't stand the slowness - perceived or real - of the MBP. I've stopped playing computer games, but as a coder and photographer (processing RAW with Adobe products), I've been incredibly happy with the Air. It seemed like a luxury purchase at the time but it's had a big effect on productivity in terms of my personal projects. I live in NYC and I tend to carry my laptop (with my fullsize DSLR) everywhere...I used to do that with the MBP, but many times would not just because it was too heavy of a combo. I pretty much take the Air anywhere I go where it's acceptable to have a messenger bag.

Also, I had thought about getting the iPad2...but, besides the fact that the ipad2's feature set wasn't that impressive, I found myself using the Air for a lot of portable leisure computing and using the iPad a lot less these days.
Unless I'm mistaken, children aren't a protected class in the U.S. in the same way that Asians, gays and Muslims are, so legally there's nothing stopping this. Children that young (under the age of 6 is what the article specifies) frequently can't behave appropriately in public, and this deprives other paying customers of the experience they're paying for. If a gay Asian Muslim started grabbing men or practicing martial arts in the middle of the restaurant, he'd be asked to leave as well for the same reason.
You should be able to use the mini-displayport to HDMI connector in the Thunderbolt port (which is a mini-displayport as well).
Anyone know why Apple didn't update Ruby to 1.9.2 in Lion?
"circumvented the MIT guest system"? If by circumvented you mean, registered a fake name, clicked accept and got an address via DHCP, then yes.

edit removed the "I bet you're guilty.." and added the below:

Should Aaron have asked for permission from JSTOR first? They seem to have asked the feds not to prosecute, they might have been willing to help originally. Maybe he should have, but JSTOR is unlikely to say "yes."

So Aaron did what most of us would have done. He wrote a script to acquire the information he wanted to--fine. Have you ever mirrored a website? It's likely that you felt guilty doing so, and maybe even went to your local coffeeshop to do it on their network instead. You don't want your IP banned.

Aaron seems to have done basically the same thing, but instead of a coffeeshop, which wouldn't allow him access to JSTOR, since the access is via proxy, he went to a neighboring college campus that likely had a JSTOR subscription.

Now, the thing that's troublesome to me is that MIT didn't stop him while he was doing it in the first place. Surely they'd have noticed 30,000+ requests from the same IP to a protected resource, no?
I have an Amazon Prime account and I can say that I have never streamed a show from Amazon. I also have Netflix and more recently I am receiving Hulu Plus. What Amazon needs to do is develop for different platforms. They need to be on Xbox, PS3, Wii, TVs, etc. Without that, I am stuck streaming sitting in front of my computer, which I just don't want to do.
Do restaurant owners recieve complaints about Asians? Gays? Muslims? Do restaurant owners recieve those complaints at the level that they do about young children? Are those complaints justified as they are in this case?
"Being disruptive" is not a firm rule though. It looks really bad when someone gets thrown out of a restaurant. It's assumed what they did goes above and beyond what is the norm. It also makes everyone in the restaurant feel uneasy, which hurts on repeat visits. It's better to have a firm rule so that everyone who does go to the restaurant feels confident that they'll have an enjoyable visit.
How PalmSprings.com Was Built into a $1MM+ Destination Website
Did apple add kensington lock in new models? If not are there any viable options(besides carrying notebook or have lockable drawer)?
Internet Recovery simply looks amazing. From the sound of it there is special firmware on the device that can connect to the internet, download the software and install it to a brand new hard drive.

No more looking for install DVD's, no more having to worry that the media won't be read (on my older MacBook Pro the SuperDrive is slowly failing). Awesome.
Amazon should buy a mobile phone carrier
More press from today:
http://www.bloomberg.com/video/72722104/
http://www.adweek.com/news/technology/top-vcs-invest-doublec...
Beginning with the Dissertation
The writing of a dissertation may be a tough assignment to those who are beginning it. As long as students understand that a dissertation needs to be written in a sequential manner, they will be able to write and submit successful dissertations.
This is an AMAZING idea, and something I've made countless passive comments about before. I've had so many meals ruined, at all different points of the day, by crying/screaming children, whose parents seem to have developed a kind of immunity, and manage to ignore them completely. My friend can do this. He had a baby brother, and much like I tune out music at restaurants, he tunes out kids. I can't do it.

I really don't want to hear a slippery-slope argument. They do nothing for debates. This isn't a slope issue - it's a solution to a problem with well defined boundaries. You can't simply force customers with disruptive children to leave because then you have issues with securing payment. How do you define disruptive anyway? Having a defined age is a practical means of getting rid of disruptive children. Most parents aren't going to reasonably say "well my kid still cries and screams, but just turned 3... so he should be ok."

However, the underlying problem: Parents who take their children to restaurants (or anywhere public) should be respectful of their surroundings. If you're using public transit, or eating out, make sure your kids aren't causing trouble. If you can't control them, the you leave. Your kids are your own responsibility, and just as I leave a place when I feel uncontrollably enraged, you have an obligation to leave when you can't control your children, and they're disturbing others. If everyone did this, there would be no need for these kind of rules.

I can't believe someone didn't put in a rule like this earlier.
Who doesn't like PIE?
There is a great post on the macports mailing list that identifies and explains some issues installed software might have after upgrading:

http://lists.macosforge.org/pipermail/macports-dev/2011-July...

I got bit by the Libc part, and I bet a lot of homebrew users will be as well. FWIW, on macports svn at least, these issues are resolved.
Does anyone know if Backblaze will ever support Linux? I've wanted to use their service for a while now, but their lack of Linux support has being a big turn down, and I don't think they have made any change in their statements regarding this 'issue'.
Not everywhere. You think that a restaurant in, say, Princeton, Texas (a small podunk town where I grew up) that refused entry to Muslims would lose business? I'm pretty sure people would show up and order a bowl of grits and a coffee just to have a hearty laugh at minorities before heading off to work.
Betable got the UK license and runs everything through UK servers. Getting a license to do this legally cost a bundle. That's why there's the rev split as it is.
Why not? I can ban people from my apartment for any reason I choose, why should I not be able to do so for my business (if I had one)?
This is one of the greatest efficiency advantages of Go over Java, for the same task, Go code uses only a tiny fraction of the memory of what Java uses.

http://shootout.alioth.debian.org/u64/benchmark.php?test=all...
i also use web apps for my mail and calendar.
The irony being that GNOME 3 has slavishly copied (badly) various Mac OS X "features", one being the inability to resize windows from all sides. And less than a year later, Mac OS X changes to allow resizing from all sides.
OK, C++ then, or my own favourite, OCaml, for GC.
All I read in this article was "+ is NOT allowed in the .com TLD".
You would be better off with a language that gives you much more control over memory layout, for example Go.
You can already do this today: it's called first class. The high cost keeps the little kids out, usually.
I was rebutting a factual claim ("Most public libraries have relationships with JSTOR that allow members to access the articles online"), not a normative one. An analogous factual claim might be that most Zimbabweans drive Mercedes. Even without having access to Mercedes's sales figures by nation, that ought to appear unlikely to you?
The one point (OK, one of the points) which I think will be VERY confusing to the power user is that the "Automatic Termination" function will remove programs from the application switcher. Given that they're still existing as a process, what's the point of this? The whole point is that launching and quitting apps should be transparent. Why remove it from the application switcher - which will now be the only way to see what apps are running, given that the little doc light gems are gone by default - thereby making the user click on it to restore it? There's no benefit, and it's a jarring concept ("Hey, where'd my app go? I didn't quit it!") I don't see the point.
Agreed. I would love it if the local shops banned children too. Not that I mind children, but they shouldn't be dragged in after work screaming all over the store.
The Intel HD3000 can only support one 2560x1600 display and the built-in. It's safe to say it can't do multiples. And the TB->DVI adapter only has one DVI interface so you can't even try 2 lower resolution monitors.
Startup Monthly Ice Breaker - Startup Monthly (Palo Alto, CA) - Meetup
Great specs to go along with the great looks. I'm still disappointed that the smaller model uses a squished 16:9 ratio screen, it's useless for writing anything longer than a tweet.

Also, I hope the now backlit keyboards see some improvement in tactile feel, I thought these were a weak point on the previous generation.
It will swap much faster than a MB Pro with no SSD. For me at least, this alleviates the RAM concerns. If you really really need 8GB RAM, you probably need a Pro or a desktop anyway.
Can't find a quote right now, but this reminds me of what folks were saying about the real estate bubble: when your lawyer/doctor/grandma starts telling you about the next big thing, you know the bubble is close to popping.

That said, I'm not sure if the bubble is about to pop, or if we're just witnessing the beginning of a shift back to smaller companies and entrepreneurship.
I'm not sure I follow. You mean that when you are working on something, you just shut down the application to close all your open files?

BTW, the apps need to be updated to take advantage of resuming application state, so application authors can choose to not support it if it doesn't make sense (giant Photoshop files, etc.).
Who are your heroes and why?
Mine have changed over the years, and I suddenly realized that I don't have any left. I don't know many mindblowing people well enough, but I still have lots of time to find them.

Who are yours and what makes them heroes?
Don't forget to prep yourself properly before reading the review :)

Preparing for John Siracusa's Review of OS X Lion - http://www.youtube.com/watch?v=nhOG25fM8so
I didn't know HN was supposed to be a dumping ground for PR plants these days. Flagged.
Question to mac developers: Does Apple let you in any way develop/debug/test programs for older operating systems? If I bought a newly-released-today MacBookAir with Lion, but I want to develop software that would still run on 10.6 and 10.5 - what's the official (and unofficial) ways to do that?
I'm curious what HN's opinion of the Mac Mini server is. $999, quad-core i7 and unlimited users.

http://www.apple.com/macmini/server/
Yeah, I know that it's fully expected to have reduced functionality during a beta, but it's getting annoying that I can't use Netflix, HBOGo, or G+.
I want my 5 bucks back :-|
So the Muslim doesn't contribute to the Princeton, TX economy. They go on Facebook and tell all of their friends about it, and it spreads outward. Pressure is not just on the restaurant to look like racists, but anyone who goes there, knowing that they'll be labeled as complicit. Maybe it's not enough, and Princeton, TX is just a backwards isolationist town that doesn't want to participate in civilized society. They can choose that, if they want, and inbreed themselves into extinction.
0S03086 can be had for $100 in volume so that's another $900 in savings right there.

Recently was as low as $107 from amazon in retail package:

http://camelcamelcamel.com/Hitachi-Deskstar-CoolSpin-Interna...
Saving those $5 could just as possibly make him a millionaire.

Now, didn't Apple (or at least its fanboys army) said something like they couldn't legally make Xcode free to justify those 5 bucks? I'm perplexed...
Microsoft opens up Hotmail, Messenger, and Skydrive APIs to mobile apps
I believe most in this category only have a single bank. I think the MBA actually has zero -- it's soldered to the motherboard.
> One thing that I think would have worked better is ask his sales team "why do most of our sales come at the end of a quarter?"

Yes, why? It seems to be that case in lots of organizations. My current theory has to do with negotiation positions: Salespeople want bonuses, they get bonuses per quarter. As the quarter ends, the customer can drive harder for bargains as salespeople get more desperate to make a sale. Consumer just exploit that.

Anybody with a better theory, or some reasons why my theory would be right or wrong?

If my theory was right and the primary cause, then remodelling salespeople's incentive to be independent of quarterly boundaries should remove the hockey stick.
You are right because the current hardware is biased towards sequential computation where threads&locks are the most efficient. This gives rise to situations where a handful of specialists work years on giving you that one lockless queue in the JVM. They would indeed not give you that edge in any higher-level programming model. It does not help the average programmer however.

Our exploration of programming models seems to be stuck in the current processor architecture, which was designed for sequential work with some stuff bolted on to make it run parallel. I could say John Backus' speech is becoming relevant again.

This is not ivory tower dreaming. The GPUs have made insane progress because they weren't tied to any computational model to start with.

In other words, not being able to do some things is often exactly what is needed to go forward. I wouldn't for the world want to introduce shared memory in Erlang, nor would I want pointer arithmetic under Java's GC.
I'm kinda hesitant to get this as they always change a lot... all those iPhone development tutorials are very specific to a certain version. It took me awhile to find out how to deploy an iPhone app for the newer Xcode.
On the other side of the river, you'd still be paying $549.
It's definitely on my TO DO list. I had thought about it briefly, but I'm only just learning about the Amazon experience outside of the US. From what I can tell though, it should be as easy as pulling the data from the different Amazon sources, and all the rest should basically just work.

Famous last words. 0-]
List of Twitter employees on Google+
The i7 is going to use less power for a given workload because it will be asleep more.
I have a feeling that once the novelty of going to a child free restaurant wears off, this guy will regret his decision. Once a family has a favorite restaurant or three, they will probably continue going there even when their kids grow older, and he is removing himself from the pool of potential favorite restaurants. I hate screaming children as much as the next guy, but I think that he should have gone with one of the suggestions in the article and banned kids after a certain time or in a certain area.
Have you used Xcode 4? :)

Compared to Xcode 3, it lacks significant functionality that is quite likely to cause you problems immediately: no scripts menu, no disassembly window, no search'n'replace in selection, no remote OS X debugging, no Interface Builder plugins. Adding new functionality is nice, but if you've done without it so far, you can keep doing without it. Taking functionality away, on the other hand...

Whilst I've no doubt that Xcode 4 will eventually become better than Xcode 3 in all respects (not that Xcode 3 was all that great to start with...), at the moment it is not. So you're paying $5 for something that could easily end up worse for you than something that is free!

I think "waste" is a reasonable way of putting it. Perhaps a touch over-dramatic for my taste, but reasonable nonetheless.

(DISCLAIMER: if you don't mind what's not in Xcode 4, $5 might not seem like a waste. Unfortunately people can only argue from their own experience. This argument is made from mine. I'm sure yours was more fun, but mine is all I've got.)
Most likely they were worried about breaking existing scripts since 1.8 has been the official Ruby of Mac OS X for pretty much its entire lifetime. Ruby 1.9 is better, but it did manage to break a decent number of programs.
Is it a result, however, of business trying to plan/schedule/measure everything?