hacker news with inline top comments    .. more ..    16 Feb 2012 Best
home   ask   best   6 years ago   
I have a bad feeling about this raganwald.posterous.com
624 points by llambda  7 days ago   179 comments top 28
redstripe 7 days ago  replies      
The BBC commissioned a study [1] that claims the Charles Dicken's brand brings in about £280m/year to the UK's economy. This from a public domain "brand". Meanwhile companies like Disney lobby for perpetual copyright to protect their own interest at the cost of all the lost opportunities that will never exist.

I don't understand how politicians in the free enterprise countries, especially American republicans with their distaste of market regulation, could consider extremely long copyright protection to be a net benefit to the market/country. Is Disney going to stop producing movies if their copyright was only 20 years? Drug companies only receive 20 years protection and their products are ridiculously expensive to produce yet they're still very viable businesses.

I wish we could turn the argument against long copyrights to be one of the damage they do to the economy.

[1] http://www.bbc.co.uk/news/business-16914367

feralchimp 7 days ago 0 replies      
> More jobs and businesses have been created by the decline of IBM than lost in Armonk.

Actually, IBM and its mainframes/midrange have continued to prosper along with all of the newer growth markets in business computing. That's not just a correction about IBM, it's fundamental to noticing that job growth in these sectors was not "created by the decline of" anything. It was created by a huge expansion in the total amount of computing value that businesses found needs to consume in the marketplace.

When zero-sum your ideology is, 900 years-old you will not reach.

And not stray too far OT, but this is what I dislike about the "kill hollywood" meme. There isn't anything inherently hollywood-killing about the project of expanding the meaning of media production and delivery to include new (and great!) films that aren't produced by traditional studios...and there probably shouldn't be.

agentultra 6 days ago 0 replies      
The new technology will always replace the old despite the attempts to safeguard the latter by those with vested interests. It happened to the scribes when the printing press arrived; To the telegraph when the phone came along; to radio, records, and even television. Big companies with a lot at stake tried their best to prevent new technology from invading their markets and putting them out of business.

The only one that I think is different is the development of the mobile phone and tablet computers. These are devices that are sold with locks on them and legislation that discourages tampering. I don't think we've seen this kind of thing happen before and it sets a bad precedent. I've got a Kindle and I don't really believe that I own it -- Amazon can remotely remove content from it and brick it if they wanted to. I've got a phone that that has the capability to spy on me. If I modify any of these devices to serve my interests I risk "bricking" them and voiding any warranties that they came with.

Correct me if I'm wrong, but afaik that's a first for us.

twainer 7 days ago 3 replies      
Sorry, but this post is based on a false notion that intellectual property is a beneficial crutch propping up only corporations and piggybacks on the idea that destruction of entrenched interests is always regenerative. That second point is likely so - but the battle isn't about finding new corporate captains to pay creative individuals - it's about how not to pay creative individuals.

I find the irony very sad that we are supposed to move from an industrial to a post-industrial knowledge-based economy - one presumably underpinned by the ability and right of individuals to monetize their knowledge . . . but people have had their free lunch and prefer it instead, perhaps as some salve.

I've said it 1000 times - if you don't like how corporations conduct their business, set something up yourself and if you have a better solution, you'll eventually find yourself a real market. The willy-nilly urge to destroy intellectual property rights for individuals and corporations alike is nothing more than a selfish catharsis - without any sense - neither common-sense, nor business-sense, nor a sense of history. When you take power away, it hurts the weakest first and the strongest last - all the while preserving the existing power structure. That's not a smart solution for anything.

shingen 6 days ago 3 replies      
It's always curious when someone rails about a big government and its encroachment on freedom. Then in the same statement, talks about the use of big government to target specific companies to damage them instead.

As though you can really have your cake and eat it too when it comes to a big government. Big enough to break up AT&T, regulate IBM and Intel and Microsoft - big enough to take your freedom, silence your speech, regulate your Internet. Good luck getting something that big and power hungry to not keep getting bigger and more powerful and eventually wiping out your liberty. You give a government system $7 trillion dollars to spend regulating and growing itself, what do you think is going to happen? They're just going to be selectively hands off? You think you can negotiate with that?

mathattack 6 days ago 1 reply      
Every business likes to buy from perfect competition and sell as a monopoly. This keeps input prices low and output prices high. This model is so profitable that companies bribe politicians to maintain it. Donating to a SuperPAC is more cost effective than R and D and has anshoeter payback.

I see 2 ways of fighting this:

1) Civil disobedience - Pirate everything and share while willingly accepting the consequences.
2) Shine lights on the evil doers. Support wiki leaks. Publicize. Organize voting drives.

I have bills to pay so I support number two. Great social change requires number 1.

SethMurphy 7 days ago 1 reply      
This artical is dead on. With this as motivation, we should all be more like Stallman and un-marginalize his point of view. His point of view is also mostly dead on, and always has been ... We can not let the mighty few rule the majority, it is not the way the internet was envisioned to be, and we should fight for it to remain as envisioned.

In response to tnicola, $10 a month, max, if I do not get that much out of an internet service, it should be free. Unlike Stallman, I do believe in a bit of capitalism, but a majority of freedom.

tnicola 7 days ago 3 replies      
Great post. But, like all good rebels, I do believe that the cooler heads will prevail and that we will not have to surrender.

For the past year, I have been touting that the future of business is benevolence. We are too smart and too savvy to be able to carry on indefinitely in a malevolent way.

Google started it with the whole don't be evil philosophy and whether or not they are still following it, is largely irrelevant. It is, however, infectious. Facebook is following suit and (I hope) it won't be long before we all realize that the doze of benevolence will get you far. And by that I don't mean philantropy.

1) Don't charge people more than you have to. Make money, by all means, even get rich, but don't overcharge just bacause you don't have a lot of competition.

2) Pay your employees well and create positive work environments. Happy people remain working hard and make you more money at a nice and organic rate.

3) Loyalty is no longer a virtue of an employee. It is a privilege earned by an employer. Don't be a DB and expect people to stick around and work hard for your just cause you are putting bread on their families tables. That worked in the 50's. Get on with the program.

4) Share the profits with your employees, share the innovation with your customers and don't be afraid to try new things even if they appear to hurt your bottom line. You will never know until you try it.

5) Vote for a party that will better the world, not the one that will serve your selfish desires (I intentionally did not use a word needs here. (This is where I will exit on this one.)

I could go on. Perhaps I am naive in my thinking, but something (my gut) tells me that if we are in Act III, the good will win in the end. Doesn't it always?

It's either that, or this rebel will need all the force I can get.

anxrn 7 days ago 0 replies      
This, very much so.

"At every point in the last forty years, wealth, health, and happiness in our economy has been built on the freedom to disrupt the entrenched powers, not the preservation of their rent-seeking monopolies."

I would extrapolate this to progress in free societies at any given point in history.

Oddly, this evokes a strange feeling of comfort in the inevitability of disruption.

noibl 7 days ago 1 reply      
TL;DR: As I enter my twilight years, I know that Star Wars will continue to comfort me long into my dotage.

raganwald: 50's nothing, get back in the game.

America: The Cold War is over. There is no Death Star to blow up. You can't fight for freedom anymore. You can only create it.


To be clear: I don't mean to ridicule the point of the post. Bad laws are bad. But the status quo cannot last forever. It is a peculiar feature of the current discourse around IP law that it is the so-called entrenched interests (e.g. holders of large copyright portfolios) that are disrupting us and the way of life we hold to be normal, natural and good. It is our failure as a populace to get over the shininess of our new technological toys and actively build the futures we want, that allows these people to portray us as reckless children in need of a firm hand.

Hackers are, by definition, exempt from this generalisation. We know the world is messy. We like it that way. We want what doesn't exist yet, so we make it. Vague appeals to stale, simplistic and belligerent pop culture allegory should be beneath us.

dasil003 6 days ago 2 replies      
On a tangential note, I'm wary of relying on the job creation argument to validate new technology. The reason being that new technology can kill jobs. Particularly as programmers, one of our main goals is to automate things that previously required warm bodies. I don't feel guilty about this because I would never want to do those jobs, but on the same token, not everyone wants to be a programmer. And in the long term if we ever achieve AI then we're on the path to making programmers obsolete as well, which is a bit scary on a personal level (though I'm not really worried about this happening in my lifetime). At a societal level this is not necessarily good or bad, it's just the direction we are currently moving in. I do worry that our biology is not well-suited to an automated environment, but there's nothing to do but confront the problem when we come to it I guess.
camwest 7 days ago 2 replies      
I think things like a serious implementation of the Laws of Identity (http://www.ipc.on.ca/images/Resources/PrivacybyDesign%20Book...) are one of the missing pieces in giving back control to the people.

It's funny because the biggest players lately (Zynga, Facebook, Google etc) are building up these walled gardens like a bunch of wannabe imperialists.

Who exactly is leading the Rebel forces?

rooshdi 5 days ago 0 replies      
I have a bad feeling too...but for different reasons. I fear society just doesn't give a damn anymore. I fear all our warnings will steadily fall on deaf ears and we will eventually become ostracized into oblivion. I fear humanity will embrace a system which pushes profits before people, ego over empathy, and lust above love. I fear elitists will eliminate innovation and erase the integrity of the internet and information. I fear for our future, but I have some hope in knowing their future fears us. Game on.
abecedarius 6 days ago 0 replies      
Good story, but the only sense in which the heroes are sure to win is that whoever wins will be deemed the heroes.
RyanMcGreal 6 days ago 0 replies      
This is a beautiful, haunting essay brimming with sobering insights:

"At every point in the last forty years, wealth, health, and happiness in our economy have been built on the freedom to disrupt the entrenched powers, not the preservation of their rent-seeking monopolies."

knowtheory 7 days ago 2 replies      
I have only one question.

Who are the ewoks in this analogy?

FourSquareToo 7 days ago 4 replies      
Don't worry. Once China and India have a sufficient manufacturing, services and consumer base, I fully expect them to formally declare IP to be a nonsense and an impediment to growth.
draggnar 7 days ago 0 replies      
...that as we enjoy great advantages from the inventions of others, we should be glad of an opportunity to serve others by any invention of ours, and this we should do freely and generously. - Ben Franklin
peterarmstrong 6 days ago 0 replies      
Update: This is now the newest post in the Uncensored ebook (http://leanpub.com/uncensored) which we are producing to benefit the EFF. Thanks Reg!
asynchronous13 7 days ago 0 replies      
Sadly, I'm more incline to think we're at the beginning of Act II.
draegtun 6 days ago 1 reply      
>> ... recall playing with punch cards in the 1960s ...

And I recall still using/seeing them in the early 1980s here in UK!

They were still heavily used at that time in the Market Research industry for recording data entry (of surveys). In fact the term punching is still used in the industry to this day in reference to data entry.

CaptainDecisive 6 days ago 0 replies      
To continue the Star Wars analogy, the great thing about technological advancement is that as sooner or later some unknown farm boy shows up out of nowhere and bulls-eyes the fucking exhaust port and then, sha-boom, everything changes. And the powers that be never see it coming.

Now please excuse me, I have a movie to watch.

rmk 6 days ago 0 replies      
Excellent article, but I found this paragraph unclear:
And that's just how they run politics. If you want to create the future, the possibility of successfully navigating a patent minefield is approximately 3,720 to 1. And I noticed earlier, the electoral motivator has been damaged. It's impossible to go to political innovation speed.
chasingtheflow 6 days ago 0 replies      
"If you want to create the future, the possibility of successfully navigating a patent minefield is approximately 3,720 to 1."
shoham 6 days ago 0 replies      
But the focus is rarely on the inventors themselves. This is the hardest job of all! Consumers tend to get what they want, and eat what they're given. If we're not supporting "starving artists" what's the point in having a more open copyright regime?
lists 5 days ago 0 replies      
There's also the problem that IP law is premised on what amounts to folk psychology.
jarnix 6 days ago 0 replies      
I hate this kind of titles, unclear about what you're going to read, it looks like Reddit but without the fun.
c3ouieu28763 5 days ago 0 replies      
You are wrong and I am 'insulted.' My name is C3pio- the
descendant of the famous - infamous Chinese poet. My model
is chinese-american, duty lifetime 55+, similar environment.

Of course, I have worked for wall street, nuke plants and
dot com or dot boombs, but aint rich.

1.on the final rocketship ride the robot sacrifices himself
in the position of 'rear gunner.' The death star is stopped.

2.diverse, strange discussion is helpful.
3.Confucious saying I meet three class of persons:
one I learn from as role model
one I learn as ANTI-model, to avoid his bad character
one I learn from to be amused and just happy - that is C3Pio

4.of course, my character is resurrected in the MATRIX

5.unlike the droids that lack COURAGE, COURAGE is the universal PROTOCOL. Call it faith, hope, being a small
bit player on the SHAKESPEAREAN stage of life.

Shame on you! Without your early pathetic experiences
with phone MODEMS and secretly reading '2600' and MEETING
CAPTAIN CRUNCH at the germany rave you would not be the
DROID...errror MAN or human that you are.

My the BUDDHA be with you! and may you be re-incarnated
as a small insect flying droid. One that takes down the
preadator drones. The battle of empire continues.

afterword: thats to my Czech cousins. RUR - Rossum's Universal Robots. Many think C3pio is talking in modem.
WRONG again. He talks in protocol-hybrid-neo-Czech.

Back on Linux (after one year of Apple and OS X) dywypi.org
584 points by akheron  2 days ago   317 comments top 64
lloeki 2 days ago  replies      
Inactive memory is not an OS X specific, and it's actually implemented in a number of other OSes, including FreeBSD.

> when it's on disk, it definitely is not made active quickly.

If an application is unloaded then many operations need to be taken to initialize stuff, reading the disk for various stuff, processing some data, allocating memory (which will be zeored out, then initialized with whatever struct and data the program needs)

If an application memory is swapped, then reactivating that memory consists of:

1. paging memory back in RAM

2. there is no step two

Paging is key, as it means the data is in a format efficiently readable and that can be put back in memory at a very reduced cost. Compare this to reading random files entrenched in a filesystem and scattered on a disk, plus doing some more processing.

> First usually freed around 200MB of memory

Out of 4GB. Wow, what an incredible improvement! Pardon me while I go write a cron entry running that command every minute so that my system can stay in good shape!

> When arriving to work the first thing was to hit repair disk permissions

This is absolutely astonishing. Seriously, Repair Permissions is a glorified ch{mod,own} -R. Quiz time! Why do you thing it reduces the 'Inactive Memory'? Because it's hitting the disk. Hard. Actually every system file gets hit. And in doing so, those files make their way into the cache and the Inactive Memory gets properly evicted. So the supposedly non-functional memory management turns out to be perfectly functional after all.

> And of course this does not support installing Python, Ruby, Perl on any other software that has its own way of distributing software.

which is bullshit (although there's no Perl).

   $ brew install python

even gives you a distribute's easy_install out of the box. You can install Ruby the same way (and since it's 1.9 it includes rubygems) but I'd recommend using rbenv+ruby-build, which is also in the package list.

Apparently the author wants python/ruby/perl packages provided by the package manager, which might just be a bad idea given how bad the status of those packages is in Debian. One would be much better served with pip+virtualenv and rbenv/rvm+bundler.

There's a brew-pip if you really want to integrate

> And in case you mix up MacPorts and homebrew, you're deeply screwed.

How so? they live in completely different directory trees. As long as you don't screw up your PATHs or something they're oblivious to each other. I've had them living side by side for some time before dropping MacPorts without any issues.

> working command line tools

    $ brew install coreutils

But I'd hardly describe BSD utils as non-working (hint: I did not install coreutils yet I spend my days on the command line).

As for compile time, it's hardly a problem as Homebrew mitigates that (contrary to MacPorts) by not duplicating every library already available in the OS. Besides, the system (much like ABS on ArchLinux) is made to make you writing your own packages or tweaking an existing one a straightforward affair. Compare to creating a .deb properly, which is, ahem, non-trivial. Yes, it would be faster not building stuff (like Arch which brings the best of both worlds together) but hosting binary packages has a cost that skyrockets as you have more users (plus one would need to make binary builds for the various OSX versions, a problem that simply doesn't exist). What's more, having software compiled from the 'original' source instead of third party is interesting in a number of ways, including running vanilla software instead of the heavily patched ones of Debian.

I'm glad the author has found a place for him but going on such an uninformed rant is unfair.

beloch 2 days ago 7 replies      
Last July I bought one of the new Macbook Air's. The price for the hardware you got was unbeatable, and that was ignoring build quality! While previous Air's were anemic tarted up netbooks, the 2011 Air's were (and are) powerful enough for everyday use.

There was just one problem with the Air however. Horrible Linux support. I'd been using Kubuntu happily for years. After looking at all the ugly dirty hacks people were using to get their Air's running, I decided to give OSX a trial for 6 months or so. Long enough for Linux support to mature. I hadn't used OSX since the early 2000's and it looked like the OS had come a long way. To be precise, what really changed my mind was how far the OSX modding community had come. Despite being hated and loathed by Apple, they had managed to fill in some of the gaping holes in core functionality that Apple philosophy forbade, such as a way to remap keys (in all applications, not just some). I could finally remap the Apple key to something that didn't break my touch-typing habits on all the other OS's I use daily!

6 months later, I'm ready to jump ship. I like OSX Lion's touchpad gestures, but beyond that, I'll miss little else about the OS. OSX isn't bad mind you, but it's infuriatingly difficult to modify when it does something you don't like. It's buggy. It's actually pretty dated and ugly looking now too. OSX's virtual desktop management has absolutely nothing on KDE's.

Unfortunately, just as the next version of Kubuntu was starting to look like a good one for the Air, Canonical announced that they are ceasing paid development of Kubuntu. My favorite KDE distro is now officially on deathwatch. Maybe it will live on with community support, like any other distro has to, or maybe it'll fall by the wayside. I appreciate what Canonical is trying to do with Unity, but it's not for me. I'd long felt like Kubuntu, despite it's many virtues, was being treated like a red-headed step-child. This tears it. I haven't decided what distro I'm going to yet, but it will be one that puts KDE first, and that rules out anything Ubuntu.

4ad 2 days ago  replies      
What an uninformed rant.

When someone rants about memory usage it is usually a sign he knows nothing what he is talking about. On virtual memory systems with on-demand paging that use shared libraries and where all file system I/O is mmap(2) based, memory is managed in a very different way than what most people expect. It's understandable, most people don't know and don't have to know what virtual memory is, even if they have a superficial understanding of swapping. Most people, even most technical people, don't know about the implications of shared libraries in memory measurement.

The users are presented with data they don't understand. Everybody talks about things like "this app is using 300MB of RAM", when such statements don't make any sense in the modern world.
The way file systems, file system caches, virtual memory, and shared libraries in the context of virtual memory interact is architecturally identical on all major operating systems today, including Windows, Mac OS X, Linux, Solaris, and the BSDs. There are various differences in implementation making each system optimized for particular workloads, but understanding the differences between the system is out of reach of most people who complain on their blogs, and it only affect out-of-reach workloads anyway. It's funny how much can one advocate for something when all alternatives are the same.

But all memory management rants are nothing compared to mentioning Mac OS X' repair disk permissions feature. Of course, this feature doesn't magically repair anything, but it's sold as a panacea. I read the first paragraph about memory management and decided to give it one more chance, but then repair permissions was mentioned as a solution. Sorry, this is no HN worthy.

bwarp 2 days ago 2 replies      
I've had a few Apple machines over the years (mainly as test machines and toys). I've had two MacBooks, one MacBook Pro, an iMac and a couple of Mac Minis. I have nothing now other than a cheap second hand desktop PC (and some cash in pocket!):

I agree with the build quality - they are good quality as in good materials and good fit. However, with my EE cap on, the designs themselves are bad and are quite dangerous. When there is literally that amount of LiPoly cells sitting inside a chassis, you want to be able to isolate the power. One bit of water in it and it's effectively an incendiary device. I've seen one recent MacBook Pro (pre-thunderbolt) go up with my own eyes quite spectacularly and wouldn't want something you can't drop the cells out of rapidly if you inevitably pour your coffee in it.

With regards to the software, I found the OSX environment inconsistent and XCode absolutely terrible. The OSX environment is inconsistent from the "task focused" application designs that you see. Every shipped application has its own set of behaviours and pretty much ignores a common standard resulting in head scratching. The keyboard shortcuts system is horrid and doing anything without the trackpad is hard work. XCode was just a mismash of concepts thrown together badly. As a comparison point, Visual Studio is a lot more mature and consistent and that is saying something.

The whole Apple/OSX ecosystem is a good attempt but it's not good enough for the money on the basis that some of the fundamentals are flawed. I'd actually throw more money behind Microsoft at the moment as they are heading in what I percieve to be the right direction. Apple started at a good point and have got worse. Microsoft started at a bad point and are getting better.

TBH however, the best OS/hardware ecosystem I've come across so far was SunOS4 and Sun4 architecture in the early 90s.

seclorum 2 days ago 5 replies      
After two decades of Unix use, in 2000 I switched to Apple and OSX - the only reason I considered it was because of the design of the Titanium Powerbook, which I saw in those days as an amazing piece of hardware design, which - amazingly - gave me a Unix workstation in a fantastic portable package. I simply couldn't believe that Apple, of all people, were delivering what I'd wanted for years - a smart, functional, fully working Unix workstation in a portable format.

So I was very happy for a year or two, and am now on my 4th Macbook Pro. The Macbook Pro (17") has come to represent everything that I desired in the 80's and 90's for a Unix workstation.

But: only because I'm running Linux on it. Mac OSX, sure, has its time and place - but when it comes to putting the power of this amazing bit of hardware to good use, nothing beats having a proper Linux distribution onboard. Proper memory management, proper user security model, proper levels of abstraction between a user program and a system service, and so on. Its simply an amazing bit of gear, now that I've set it up right.

Oh, though .. how I wished SGI had gone a different path, and released their Indy laptop to great fanfare. How I wish they hadn't been usurped by Microsoft, it would be so, so nice to have an SGI laptop in the 21st Century ..

jakobe 2 days ago 0 replies      
I don't even know where to start with the author's complaints about the memory model. Inactive memory is not "memory from a recently used app". Inactive is just like active memory. It is not unused memory. Inactive memory is memory that has not been accessed recently and will therefore be swapped to disk first. Just like active memory, it can be be freed immediately if it has not been modified (eg. a memory mapped file, or a local copy of some shared memory), but if it has been modified, it must be paged to disk because otherwise data would be lost.

All the purge command and "Repair permissions" do is swap out lot's of memory. But this is not unused memory. This memory will likely be paged in again sooner or later. It does not help much if you simply have too little memory. That's why the author claims he has to run the commands again and again. But the problem is not the broken memory management system. The author simply has too little RAM.

Which leaves the question: Why does Mac OS need more RAM than Linux?

Well, there's the simple fact that there is much more stuff running in the background on Mac OS. You have automatic indexing of every file on your hard drive and file system monitoring. Try downloading an app that opens some file type. The moment it is unzipped, the Finder automatically uses it to open supported files.

Then you have an automatic version control and backup system running in the background, for every single file on your hard disk (Time Machine). Additionally, many Mac apps aggressively cache data in memory. Take iTunes. You can scroll lag-free through music libraries with tens of thousands of songs and their album artwork, and filter them instantly.

These things use up RAM. Lot's of it. And that's why you can't run 3 VMs on your Mac if you only have 4GB.

If you don't want the extra features / bloat of Mac OS please go ahead and use Linux. But don't write a completely ignorant piece about how you think the memory management model in Mac OS is broken without reading the real docs: https://developer.apple.com/library/mac/documentation/Perfor...

cs702 2 days ago 2 replies      
I agree with the author: Apple has by far the best hardware in the PC business -- here's a great example of the extremes they go to in order to manufacture superior machines: http://www.businessweek.com/magazine/apples-supplychain-secr...

Alas, Apple's #1 target user is not the developer; it's Aunt Tillie. And this shows in the choices they make for OS X.

IMO Linux distributions have vastly superior software installation and management tools because they had to evolve them in order to survive and thrive in the wilds of the Internet. There has never been an 'Apple Store' with a 'Genius Bar', so to speak, for Linux users.

I agree with the author that Debian and its derivatives, like Ubuntu, have perhaps the best software-management tool on earth: apt-get. The damn thing is fast, and in my experience never breaks anything -- the system is always kept in a consistent state. (My experience with other software management tools -- particularly RedHat's yum -- has been less than 100% trouble-free.)

mrich 2 days ago 6 replies      
Regarding hardware quality:

  "...why there's no PC manufacturers that would
have the same overall quality of the hardware."

In my experience, business ThinkPads beat MacBooks by a mile for working (e.g. programming). I am surprised to see so many coders use MacBooks. Thinkpads have better ergonomics, are more robust and better performance/configurable hardware (e.g. RAM).

ruediger 2 days ago 1 reply      
I prefer Linux over OS X as well. The OSX userland is a strange mixture of GNU and BSD tools in sometimes ancient versions. OSX has a UNIX certification but there are some bugs in their POSIX API or even missing functions like clock_gettime. Linux seems more POSIX compliant.

The OSX package managers suck. I tried fink, macports, and homebrew. A lot of packages are simply broken especially now after Apple switched to clang. You end up in all kinds of weird situations. A friend of mine recently wanted to install Octave and gnuplot with homebrew and it took him several days until he gave up.

It's hard to get help with problems in OSX. This might have been improved. But back when I started using OSX in 2005/6 it was really bad. It was rare to find people with a good knowledge of the deeper layers of OSX. It was a complete different culture than Linux or even Windows. Maybe that has improved now that OSX is much more popular.

And it feels like Apple is more and more ignoring the UNIX folks.

simonh 2 days ago 2 replies      
My first reaction was "Linux developer prefers developing Linux software on Linux - News at 11".

However, I suppose there is more to it than that. The issue is that the fact OSX is Unix under the hood is merely an implementation detail and always has been. I'd much prefer it if Apple used a solid, up to date Linux distro under the hood, but they don't. To me using the Unix system in OSX feels a bit like using Cygwin on Windows.

Conversely with modern virtualisation software, you can have your cake and eat it. I use OSX to run desktop and media apps, at which it excels, and have Linux and Windows 7 running in VMs. Perhaps not good enough if you're doing resource intensive stuff like heavy duty compiles on your Linux system, but for my purposes it works very well. It has the added advantage that if I hack around with the VMs and something goes wrong, I can usually revert to a recent VM checkpoint.

lwhi 2 days ago 2 replies      
I was considering going the other way - but after reading this, maybe I'll stick where I am.


One thing that does seem a bit odd:

>"I'm a long time Ubuntu user, but this time I decided to go with Debian. Why? Mostly because our servers are Debian and because latest updates of Ubuntu have mostly focused on breaking the desktop environment."


> "Do I miss something? Sure. Even though Linux in modern times mostly works out of the box, there's still slight issues with external displays, for example I can't set the 30" Dell monitor at work to be the only display without doing some xrand magic. I guess that's really the only thing I'm missing from OS X, a sane and automatic way of handling external displays."

I'm a bit sick of hearing this meme perpetuated. Give Unity a chance ... in fact, the author's main gripe about Debian is resolved in a really fluid way by Ubuntu + Unity. I think Unity's multi-monitor support is one reason why it's worth sticking with.

nimrody 2 days ago 0 replies      
I think the bottom line is that the author is used to working with Debian and thus perceives differences between OS X and Debian as bugs.

It is true that jumping between Linux and OS X can be difficult at times. It's also true that Debian's packaging system is better than OS X's.

super_mario 2 days ago 1 reply      
I really can't understand bitching about memory in this day and age. First thing I do when getting a new machine is to max out the RAM. My Mac Pro has had 32 GB since 2008, iMac all have 16 GB and Macbooks 8 GB. It's such a cheap thing to do and it improves your daily life so much, it's essentially free in the end.
tluyben2 2 days ago 2 replies      
Is there anyone who got Linux to work full on a Macbook or MB Pro? I get most flavors of Linux to boot and get a nice X running, however, things I cannot miss like the touchpad control, screen backlight controls and keyboard backlight are completely not working. Also the battery is falling faster than my Android under Linux.

Is there any Linux working well? I have no problem with tweaking (I hacked on device drivers on previous laptops when they didn't work), but even with tweaking I never managed to get it working well. Otherwise I can have nice Apple hardware with my favorite OS....

NathanKP 2 days ago 1 reply      
With regard to memory usage in OS X I have never had any issues with my current iMac. I have 8 GB of memory, and despite very heavy usage (Safari/Chrome/Firefox for browser testing, Coda as IDE, Tower for Git management, Skype, Terminal, iTunes, MySQL Workbench, occasionally MAMP) I rarely see any swap usage. Currently my swap used is 2 MB.

(I must say that I am still using Snow Leopard. I refuse to install Lion because it is pathetic compared to the much more efficient Snow Leopard. I have installed it on my other Mac machine and am not impressed.)

Interestingly the most memory hungry program on my computer is Chrome. It seems to spawn a ridiculously huge number of processes:

    Google Chrome 137.9 MB
Google Chrome Helper 29.5 MB
Google Chrome Helper 7.7 MB
Google Chrome Renderer 123.5 MB
Google Chrome Renderer 36.7 MB
Google Chrome Renderer 46.8 MB
Google Chrome Worker 26.6 MB
Google Chrome Worker 26.2 MB

That's a grand total of 7 processes and over 400 MB of memory for just three tabs. As much as I love Google Chrome its a little ridiculous.

iTunes is the second worst offender: 300 MB. I have a pretty large library, but its not that large. Perhaps it does some very rigorous caching.

sirn 2 days ago 0 replies      
>There are at least four different ways of installing software on OS X. Download a DMG image, drag the icon from there to Applications folder, run an installer, install stuff from Mac App Store or compile it yourself. There seems to be no standard way how to do this properly. Of course, being a software dev, I ended up using the last alternative a lot.

It sounds to me like the author expects OS X to be like Linux where its UNIX underlying is the centre point of the OS. That's true to some extend, however OS X abstracts a lot away so the user don't ever necessary to have touch the UNIX part of the package. Once you understands it that way, the way of "installing" software on OS X is reduced to 2 (plus 1) for most people.

One is drag and drop an icon into somewhere in your hard drive; which is not even "installing" since what you do is simply... copy it to your local disk. Installing applications via Mac App Store simply automates this (the plus 1 part). Another one is via PKG installer; if any app does this you should be alarmed that they're modifying your system, they're going to scattered files across your system, uninstalling this thing going to be nightmare, etc.

Once you stepped into UNIX land, you're on your own. It would be nice if Apple provide a central repository of packages, but then I have to worry about outdated packages (given the nature of Apple that avoid anything with GPL/GPLv3). Homebrew has already done a great job covering that.

CoffeeDregs 2 days ago 0 replies      
I run Debian unstable on a quad-core T520 since our servers run Debian testing and everything Just Works, but most of the developers in my shop run Mac OSX and they have endless it's-not-quite-Linux problems: installing MySQL fails because the build thought that it was a fat binary or that it was 32-bit-but-the-libraries-were-64-bit; Mac OSX system paths are kinda weird; or homebrew installed a binary in a bizarre directory.

I can't help but wonder: since all the WMs are adopting Apple's desktop experience, are the multi-touch gestures worth the minor-but-frustrating lack of compatibility? I use Gnome3 and, while I complain about X,Y or Z, it's basically the same as Mac OSX.

kokey 2 days ago 0 replies      
I think this is mostly a case of someone who develops for Linux, but prefers to develop on his desktop instead of a development server that is close to the production environment. This results in requiring the desktop to be closer to that of the production environment. I think this is the main reason I've seen people switch away from having a Mac. Personally, I've always seen my desktop and laptop as a terminal and this approach has been working for me for 20 years now, it also allows me to not having to upgrade my desktop a lot or waste a chunk of my life fiddling with it.
mike-cardwell 2 days ago 0 replies      
I recently went back to GNU/Linux (Ubuntu). This was after a three year stint on OSX though. OSX is good for people who don't like to tweak. I'm much happier with my Ubuntu laptop than I was with my Macbook, now I have it set up how I like. I'm generally happier using free software anyway.
alwillis 2 days ago 0 replies      
Everything is a tradeoff. There's so much more going on in Mac OS X (especially Lion) than a typical Linux distro that you are literally talking apples and oranges.

For my money, Mac OS X makes the right set of tradeoffs to give an overall good to great user experience, even at the command line. It gets enough of the right things correct that for a developer/hacker/tinkerer, they can take it from there and add whatever else they need.

For me, Vagrant (http://vagrantup.com/) has been amazingly useful. I can install any of the popular Linux distros and configure them anyway I want without worrying about Mac OS X's installed apps and libraries. A killer feature: because Mac OS X and VirtualBox share folders, I can still use all of my Mac OS X tools (editors, IDEs, whatever) with Linux. And thanks to Chef, I can spin-up specialized configurations in just minutes. Having access to apt-get is cool and all, but being able to create specialized, configured environments using Chef cookbooks is faster and way less error-prone.

All of this (and more) and I still get all of the benefits of Mac OS X native applications, superb driver support, etc. And all of this on 4MB 2009 MacBook Pro.

bborud 1 day ago 0 replies      
95% of my problems with any computer occur as a result of me wanting to use a piece of software that requires me to upgrade something. be it the OS or just some library.

in the old days when I ran Red Hat Linux this was the main reason my system would rot: I would want to run some piece of software, the developer had decided to depend on some very recent version of a library not present on my system and I would have to roll the dice and install it. usually it would be okay, occasionally things would break, but eventually it would lead to my system becoming unusable from all the dodgy packages that were installed.

things got a bit better with Debian. and even better with Ubuntu.

to this day I still have this problem. this weekend I had to upgrade my laptop to the latest OS and in the process I managed to brick it. I spent most of my weekend getting it on its feet again.

the thing is: I spend perhaps 1/10 as much time dicking around with my system now as I did when I was running Ubuntu on a Thinkpad. and more of the system works more of the time. I think most of this is down to Macs and OSX being a much less diverse environment. the hardware is well defined, the OS releases are far fewer and thus more defined etc.

that being said: when things go wrong on a Mac it is much more of a pain to sort things out. it is much easier to find solutions online for Linux problems -- and Linux is much easier to diagnose. I'm not entirely sure why.

Craiggybear 2 days ago 1 reply      
Interesting. I am using OS X 10.5.8 with only 2G memory and when programming with Python, PHP, gcc and Apache this is actually OK. Not brilliant, but not slow either. The machine tends to be on all day. I have noticed that Linux does seem to page more than it used to in recent years, this varies with the kernel. There is more Linux disk activity these days than in previous versions, regardless of what swappiness I tell it to use.

I use nano or vim as my editor mainly. The setup I use on Linux is much the same. I don't notice much of a difference in terms of performance between OS X or Linux for the text-based and command-line related stuff that I do. I could sit down and be happy in either OS X or Linux and it wouldn't matter to me which one I'm using. I also use mutt for my email and cmus for playing music in both environments so I am seldom out of the command line for anything.

Although I do find apt-get much more efficient and I can get packages faster and with less fuss with Linux.

I do also use brew on OS X.

As far as I'm concerned, for what I do, there isn't a lot of difference ... I hardly ever use XCode, though.

Derbasti 2 days ago 2 replies      
I have been a Mac user for the last four years. I used to really like it, everything was stable and polished and just worked really well.

But in the last few months, things started falling apart. My computer would freeze every few days, syncing would destroy parts of my data, the iPhone would crash every now and then, there would be weird random glitches...

I'm certainly not ready to abandon ship yet, but I can see it coming. The Mac is not what it used to be any more.

rmc 2 days ago 0 replies      
These complaints about OSX, esp. installing software, match my problems exactly. I'm a programmer and programme lots. It Just Works™ on Linux with a proper package manager.
ldehaan 2 days ago 0 replies      
On the memory side of things (in Linux)
RAM is cheap, buy 32GB or whatever your machine can support.
Once you have a large amount of memory set /proc/sys/vm/swappiness to a low number like 10 (sysctl -w vm.swappiness=10)
if you want to free up memory because some application was eating it up run
sync; echo 3 > /proc/sys/vm/drop_caches
I rarely if ever have to do this, but it helps to know if you need to do it.

I run Debian/KDE and Kubuntu and it's a fantastic setup.
Setting up multiple monitors (I have 2 27" monitors) is a breeze with twinview using kde's systemsettings program.
Some xorg optimization tips
Option "UseEvents" "On"
Option "RenderAccel" "O"
in your xorg.conf file under device will speed things up even more

I run all the other os's in virtualbox, its fast (windowsX boot time is about 2 seconds, osx takes a bit longer), and you can even do some 3D stuff, though I don't play any games so I have no idea if those work.

Out of all the operating systems I've used over the past 21 years of working with computers I have found Linux to be the best fit for customization, speed, available software, ease of use, and friendly community. Though I did like vax/vms when I was a kid, I had a mouse! it was awesome :D.

Overall though I would say if your going to be doing development, especially in a server type environment, use Linux, osx was built for your average joe who doesn't know how to use a computer. Linux is usable by your average joe, but it goes beyond that so easily allowing for extreme customization on just about every facet of the operating system that you can imagine. I feel lost without my build, the nice thing is, I put it on a usb stick and I can use it on any computer, thankfully I have never had to do that :D.

And don't worry about KDE, We have a great community, and we'll keep it going. Its not about profitability, and that is what a lot of these business people seem to forget. We work on Linux because we love the system. Not because we get paid to work on it.

TamDenholm 2 days ago 1 reply      
Just out of interest, does anyone know what linux distro has the best Macbook Pro support? Like the author has said, I've always admired the hardware but want to use linux, ideally a debian based one.
thomanil 2 days ago 3 replies      
I can relate to the OP: I like OSX for general work, but prefer Linux for programming workflow and tooling (mainly because of the debian package system). My solution from now on is to do my dev work inside a Linux VM (through Virtualbox). Seems to work well. Would love to see others experiences with similar setups, anyone else going a similar route?
yason 1 day ago 0 replies      
I also once spent a year or so trying to rebuild in OS X what I had working in Debian/Ubuntu until I just gave up and went back. The lure of the "Unix inside" was good but didn't fly far in reality. And no, an operating system doesn't get to dictate my desktop when I have under my belt 20 years of experience on it. But the h/w quality is good, I must say--though compatibility with Linux isn't, obviously.
ww520 2 days ago 0 replies      
May be too late for the Inactive page discussion, Windows has this concept of Standby page. It is in an intermediate stage between working set and the Free page list. It's not in a process' working set but still has the data for the process. If it's accessed, it's brought back into the work set. If the system runs out of Free pages, the Standby pages are "freed" into the Free list, becoming available to other processes.

It is like a weak reference memory page that can be brought back to life immediately but also be readied to be freed for other purposes.

Most disk cache memory pages, terminated process pages, and others are in the Standby list. They are read-only pages that can be reused or repurposed either way.

lrvick 2 days ago 2 replies      
This is fairly spot on. Apple makes really nice laptop/desktop hardware, but though OSX as been getting a lot better, it is still a terrible playschool excuse for a unix-based operating systems go when compared to *BSD or Linux.

OSX is certainly a better choice for the pointy-pointy-clicky-clicky masses than windows by far, but we have chromeos and ubuntu for them now. Lets face it, OSX is made to suit the needs of people who just want to use social networks, play farmville, and not worry about running constant spyware scans. It is also largely appeals for people that have been trained that the Adobe Suite is the only way to do professional media/web work, but at least know enough to realize the entire windows ecosystem is irrecoverably broken. (Obviously I am generalizing and there are certainly exceptions but you must admit this is the majority)

OSX is not, nor will it ever likely be made for serious hackers or sysadmins that actually care how things work at a low level, like to choose their own window manager, manage memory, write/apply kernel patches to support new hardware, run enterprise-level systems with rebootless kernel upgrades, have low level file-system control/choices, get and apply same-day security patches, have custom kernel-level security extensions that compile into every binary on the system etc. It is also certainly not for the wider range of users and developers that want an operating system they can install on their existing hardware that for most common tasks "just works", and/or want to easily manage all the software on their system with a mostly unbiased package repository system where everything is free, and where most of it can be legally modified.

I also found it interesting the author chose to give up the multitouch trackpad he liked for a lenovo, after just saying the macbook was nicer hardware. Debian runs great on Apple hardware.

I personally run Arch Linux on my macbook pro and I have full multitouch trackpad with the same gestures, keyboard backlight, all the special buttons work, etc. Many other major distros also have run smoothly on my new and old style mac minis, friends macbooks, and my macbook pro. I daresay many major Linux distros support a lot of Apple hardware better than Apple does.

Decent hardware, complete control over the software, and I can dual boot OSX when I happen to need to open some proprietary formatted file once in a while. Works out fairly well.

desireco42 2 days ago 1 reply      
I can only applaud the author for switching to Linux. Developers using Linux will develop for Linux and we will all be better off. What exactly reasons are, are of less importance.

I really tried several times to switch completely and it's not easy. My bigest gripe is that even with graphics acceleration firefox and chrome are still sluggish in certain aspects and also productivity shortcuts are missing on linux. I tried different flavors and just couldn't make things work. It can't be my everyday machine yet.

If someone would make distribution focused on developers, that would be the best things that happened to linux. Do I really need to install git as package and get stupid office packaged? Zsh and gvim and emacs out of the box.

feralchimp 2 days ago 1 reply      
If I were in the OP's position, I would just run my preferred Linux dev environment inside a VM.
nagnatron 1 day ago 0 replies      
Will gladly swap my Lenovo W500 with anyone who would prefer it to a similar or later gen MBP. I love the hardware, and like using Linux to program but for everything else it's too basic.
jrminter 2 days ago 0 replies      
I must be missing something. Why waste 10 min running purge and repair disk permissions to retrieve memory when a restart is much faster???

I abandoned MacPorts for Homebrew. One feature I like is that I can build any package I want (that doesn't have a formula) with './configure --prefix=/usr/local/Cellar/name/version-no' and then do a 'brew link name' to make all the symbolic links or 'brew unlink name' to remove them. Helps solve annoying problems.

My main grump with MacOSX (still on Snow Leopard) compared to Linux is issues with 64 bit Python and MacOSX seems to store files all over the disk. Basically, if you want to work differently from the Steve Jobs Way, it takes a LOT of work. Couldn't agree more about the superior hardware quality.

akeck 2 days ago 0 replies      
To me, the three major operating platforms are tools that all have strengths and weaknesses. In the same way that I wouldn't use my nice chisels to loosen a laptop screw, I wouldn't use a MacBook for writing code for our Linux infrastructure. I am more efficient doing that work on Linux itself.

At the same time, I shoot photos and video, and do some writing to take a break from IT. I've tried doing that work using the included tools on all three platforms. I find the Mac platform the most efficient and trouble-free for that work. Linux is second, but is frustrating at times - especially regarding video.

At work, even though we have a heterogenous server environment, we communicate using Office and SharePoint. Also the wireless network seems to work best with Windows. Thus, at work I use Windows 7 with PuTTY, Gnu Screen, and several Linux VMs, and at home I use a MacBook with a Linux VM. These two setups let me use the three PC platforms for the workflows for which they seem best suited.

I think it's missing the point to debate which is the one true platform. We all have things we want to do, things we want to create. In my experience, the question is not "which platform is better in general?", it's "on which platform can I most easily get my work done?". If my current platform no longer works well, I try the others. In the end, I'm paid more for getting more work done in less time, so the efficiency of a platform for that work decides the question.

rsanheim 2 days ago 0 replies      
There is a very valuable post and discussion to be had about why a developer may choose Linux over Apple for their primary dev workstation. This isn't it.
ldesegur 2 days ago 1 reply      
The issue with transitioning back to Linux is not the OS or its applications. The main issue to be able to find decent laptops that are able to run the software. Lenovo, HP, and Dell are among the brands that won't offer a quality experience (think antiglare screen, lightweight, battery efficient and decent weight.) Noise is also an issue with the fan level on most PC laptops today. SJ didn't like fan noise and it may have helped in designing the best laptop on the market today.
Craiggybear 2 days ago 0 replies      
Repair Permissions -- seldom does anything.


zobzu 2 days ago 0 replies      
using kde, xrandr magic is automatic.
including the mode that integrates all screens into one, regardless of the resolution (unify screens)
makira 2 days ago 0 replies      
In one paragraph he says he has four gigabytes of memory, and after switching to LInux, he says he has eight.

It seems he's misunderstanding inactive memory, which can be either filesystem caching (since it's already backed on disk, can be freed with no penalty) or allocated memory by the processes but not recently used (which would count as used under Linux, and when running out of free mem, would be paged to disk on both Linux and Mac OS X).

ciparis 2 days ago 1 reply      
That's a pretty self-indulgent rant. I've got nothing against the ultimate decision by any means, but that decision is being rationalized -- and rationalized poorly.

8GB of RAM costs $39. If the OPs time is worth so little that they'd rather stew for 5-10 minutes every day waiting for repair permissions to finish, then that's simply their choice. FWIW, I haven't done anything like that on my 4GB MB Air since I bought it, and it almost never gets rebooted. Granted the SSD makes VM usage a lot more transparent, but still...

The software installation comment displays a lack of understanding of what's going on with the App Store; e.g., it's new, things are still ramping up, etc.

As an aside, my 2-cents to anyone new to the platform is to stay away from MacPorts. It does things just differently enough to make future updates (outside of what they provide, or before they get around to providing it) a potential time-sink to sort out. Not worth it to me; it's easy enough to build what you need, and there are plenty of places for excellent guidance.

cahuk 2 days ago 0 replies      
I had a similar memory problems with my 2011 iMac. It had only 4 GB of RAM. The machine started pretty fast to filling up my swap. After it started paging out the machine was unusable for some minutes. I don't know if this is true but I think the HDDs in the 2011 iMac are not that good.

I upgraded the memory to 12 GB. Since then working on my iMac is a lot easier.

But the troubles are still there (from time to time). A few days ago I ran Virtualbox and Parallels Desktop 7. I had a 5 GB big swap, the machine started paging out and it slowed down. I had to quit some apps to solve the problem.

So I have to agree with the author of the article that Lion has a weak memory management. Apple must fix this. Running a 12 GB of RAM machine and getting a sluggish machine?

I think that if I would install an SSD my iMac would be a lot faster. Also the paging out.

cpleppert 2 days ago 0 replies      
I have a Macbook Air and a windows desktop that runs all my test browsers and a linux VM through virtual box. I use VNC to test everything on the browsers I have installed on the windows box and additionally run databases on the linux VM. Super smooth, I have never had any performance issues at all. Modern CPUs are more than fast enough to really do any type of development on as long as you have the ability to offload the occasional compute intensive tasks.

I also only have 4GB on air and yet I can't remember when switching to an application wasn't instantaneous even with 20+ applications open. I won't go back to running Vmware on the laptop, so much faster as a virtual desktop.

dreamdu5t 2 days ago 0 replies      
Who cares? Some anecdotal blurb about not liking OS X is HN worthy? How is this on the front page?
kahawe 2 days ago 2 replies      
Just because homebrew wasn't your thing doesn't make macs or OSX "stupid".

And I used to do Java development in eclipse/netbeans with db, ide and appserv all running on one machine that had 2GB and I never had any issues... memory hogs hello.

I have and am developing on nix, OS X and windos and I can still simply not understand what this guy is all about - basically it comes down to: for his style of work, some nix distribution where he can compile all sorts of additional packages might be the best option. But I never had any of the problems he talks about.

Also, OS X comes with python and perl on board...?

p0wn3d 1 day ago 0 replies      
For those of you who got sucked into this conversation. Use whatever OS you want and then use vagrant for your development OS. http://vagrantup.com/ I promised myself to never use Windows again. I'm happy with my 27 inch iMac and my two laptops running Linux. Life is good :)
ebbv 1 day ago 0 replies      
I developed under Linux for over a decade (along with Irix, BSD and Solaris), and started doing web development on OS X in 2010. It's completely painless and I have no idea what this guy is bitching about.

My MBP only has 4GB of memory and it's more than adequate for web development.

the_mat 2 days ago 0 replies      
I'm beginning to wonder if the memory "issue" is psychological. I run OS X Lion on a 2GB notebook. I use Xcode, Python, ImageMagick, Firefox w/Firebug. I've never had noticeable paging issues or felt the desire to upgrade.
donniezazen 2 days ago 0 replies      
I was an ardent Ubuntu user and then I bought a Sandy Bridge-Optimus Thinkpad. The high temperature and constant fan forced me to move to Windows 7. The temperature on Linux was at least 10C higher than on Windows.
jebblue 2 days ago 0 replies      
After years of DOS then Windows (various versions but not Vista or later), various RPM based Linux distributions with all the weird corruptible state RPM distros can get into this statement rings true to me:

"Most notably I get the ultimate software installation tool, apt-get. A tool that installs binary packages with their dependencies. A tool, that's universally supported by Google et al., so I don't even have any problems installing newest Chrome, for example."

kaushiks 2 days ago 0 replies      
I switched for a slightly different reason. In my case, some of the bleeding edge branches of projects I cared about weren't even building on OSX. Also, system default versions of software like GDB aren't quite as recent as their Linux counterparts - which forced me to have to deal with MacPorts and the like.
namidark 2 days ago 0 replies      
If you have enough ram you can just disable swapping all together which is what I've done on 2 computers that have SSD's and 14+gb of ram
ddon 2 days ago 1 reply      
just tried purge on my macbook, and it really did freed some memory. never heard before about this command... any ideas why OS doesn't do it automatically from time to time by default? I agree that it doesn't make sense to use swap to move inactive memory.
djbender 2 days ago 0 replies      
It's unfortunate, but people open up Activity Monitor and get confused by what they see. This is why "FreeMemory" app listed on the Mac App Store went to #1 awhile back.
sdfjkl 2 days ago 0 replies      
I stopped reading at "repairing disk permissions".
Alind 2 days ago 1 reply      
HomeBrew and MacPort do screwed up lots geeks' Mac, seriously.
hackermom 2 days ago 0 replies      
Well that was a few amusing misunderstandings about OS X :)
gregory02 2 days ago 0 replies      
angelortega 2 days ago 0 replies      
Finally, and article that is not pure "Apple punditry and curmundgeontry"... Upvote!
hmans 2 days ago 0 replies      
"Of course, being a software dev, I ended up using the last alternative [compiling things manually] a lot."

Yeah, whatever.

potomak 2 days ago 0 replies      
This is the same transition I'm about to have. Goodbye osx, welcome linux and thanks for yor feedback.
erkin_unlu 2 days ago 0 replies      
you got a simple point, why the hell the inactive memory does not get smaller? i think apple should put a list showing which apps leave an inactive memory
virtualeyes 2 days ago 0 replies      
Had an iMac for 2 years, loved it for the first few months, and then, over time I grew less and less enamoured with the OS.

1) Finder just plain sucks
2) Window manager is complete azz
I guess I prefer Compiz keystroke-snap-to-grid style window management vs dragging windows to desired positions and generally having a cluster-fuch of windows all over the place
3) Spinning beach balls, fun, OSX, the new Windows
4) Overall a McDonald's Linux for the masses

Yes, hardware support is excellent, out of the box works fine, blah, blah; in fact, for those suffering in Windows, I always suggest they buy a Mac; however, saying that, if you are comfortable outside of the GUI, why waste another moment on OSX?

Absolutely stoked here on Fedora 14/Gnome/Compiz ;-)

paulgrins 1 day ago 1 reply      
The author is absolutely right. People tend to like Macbooks and iPads for irrational reasons. This is what has been described the "reality distortion field". It's all marketing hype and Apple fanboys who make Apple what it is, the technology has nothing to do with it. The obsession with "Think Different" has brainwashed these vulnerable people.

The reality is that as an avid user of Macs since the old days when the Mac was the real "elite machine" back in the PowerPC days I can say that the new Mac OSX based machines are terrible and do not represent Apple's past level of quality. The new machines are consumer toys, not serious machines like they once were. The comment about a "McDonalds version of Linux" is true.

I actually ended up moving to Windows because around 1999-2000 Apple started moving into it's "Walled Garden" software model and they failed to embrace other hardware setups, this made the Apple too expensive and not nearly flexible enough for a real business/engineering user. At first Windows was a bit of a shock, but by the time Windows XP had arrived I forgot all about the Macs. Yes, the blue screens were annoying but Macs also crashed too. Microsoft has hit a home run in terms of how it generously treats Windows developers too!

Then working on a web development project I was forced to use Linux in the server environment. I can tell you, Linux blew me away. There's a real reason that IBM and Oracle are using Linux as their base OS's. Linux is the OS for engineers and now I use it for desktop along with Windows XP. Steve Jobs ripped off Linux and then broke it to make it into a toy device with OSX and iOS, both some of the worst OS's ever made.

My chart is as follows...

Mac OS-X and iOS = toys for consumrs...

Windows XP and 7/8 = serious business tools...

Linux and Unix = engineering tools for scientists...

Game Developer Gives 7-Year-Old Best Birthday Present Ever martinkool.com
575 points by mrtnkl  1 day ago   45 comments top 17
snorkel 1 day ago 3 replies      
I'm embarking on a similar hands-on exercise with my own 5 year old son called "let's make an iPhone game". I'm letting him completely define the plot, the characters, the actions, and overall requirements no matter how nonsensical it all seems, I don't debate his choices, I just take requirements as is. I have him involved with every step from designing the artwork, the music, the sounds, the actions, and he is quite obsessed with working on this project continuaously. I don't expect he'll know all the details of how the game works but I want to demonstrate that he can create fun things using a computer.

The refreshing part of getting software requirements from a child is there's no tedious debate about implementation details, timelines, and business value. "The cowboy is only on level 2 and level 4 because his friend is the mosquitto." OK, whatever, nonsense but perhaps no more ridiculous than Pac Man.

albertzeyer 1 day ago 2 replies      
In the beginning when I saw the pictures, I thought that you could build levels for a 2D platform game with Lego and the game automatically reads them in via Webcam or so and you could play them.

That would be fun! :)

skystorm 1 day ago 0 replies      
Incidentally, the game in question (Edge) is part of the current Humble Bundle, including a version for Android devices. I've already had quite a bit of fun with it on my way to work. :)

Edit: Kinda obvious, but here's the link http://www.humblebundle.com/ only 4 hours to go!)

ThomPete 1 day ago 0 replies      
Why can't the world be much more like that?

Such a fantastic present. And it makes you wonder if there is some untapped potential in there.

tete 14 hours ago 0 replies      
Isn't that what indie game development is all about? That the developers actually care.

At least that's a lot of why I like indie games. They often do awesome things. They usually don't just develop games to make money, but to make people happy. I think that's a lot about why they are more creative and not just another implementation of the same boring game with better graphics.


reinhardt 9 hours ago 0 replies      
Apologies for the meta comment but this is the thread with the highest points/comments ratio I've seen in HN. Almost six hundred readers upvoted it but less than 10% posted a comment, which is pretty unusual. I'm guessing it's the overwhelming "this is amazingly cool/touching/lovely but other than I don't really have anything to add to the discussion" feeling.
erikpukinskis 1 day ago 3 replies      
This is a lovely story, great parenting, and a lovely gesture.

But I could not stop thinking about how many extraordinary coincidences would be required for this to happen to a little girl.

Would her parents have encouraged her relationship with video games?

Would her friends support it?

Is it even physically possible to make an "Edge" level with the new "girl" Legos?

These are the tiny little experiences that turn little boys from future Biologists into future Computer Scientists.

hobin 1 day ago 0 replies      
There's not much here to say except: this is the awesomest thing I've ever seen game developers do.
hieronymusN 1 day ago 0 replies      
Such a great story. Such a great ad for a game. Downloading now.
gtrak 1 day ago 0 replies      
Yes, for that kid this will be something to look back on in pride. That's amazing.
6ren 1 day ago 0 replies      
Unfortunately, they need to license his level; and if it is sold with the official game, they arguably should pay him.

This issue wouldn't occur if they coded his map for him as an independent modder's map - but a big part of the coolness of this gift is that it's part of the official game. (I mean, when I was 7, such a gift would be like becoming a god - legal issues, even money, would only diminish that).

/sick of negotiating licenses for my code

slewis 1 day ago 0 replies      
And the developer gets positive karma from the press for doing this, which leads to more sales. Sweet!

(disclaimer: I'm not at all insinuating that they did it for the press. I just like that a good action is being rewarded.)

idan 1 day ago 0 replies      
Am I the only one who is curious to see gameplay video of this 7-year-old?
richardlblair 1 day ago 1 reply      
This is a really touching story.

Above that, it will really spark this young man's creative mind. For his eighth birthday get him a laptop, and get him programming.

Sounds like a really awesome kid. You are one lucky Dad.

damian2000 1 day ago 0 replies      
Well done to the game devs to support their fans/players like this ... they deserve all the exposure they will no doubt get for their game because of this story ...
SkippyZA 23 hours ago 0 replies      
Lovely story. If I were a kid and that happened to me, I would be ecstatic!
mathattack 1 day ago 0 replies      
They're awesome and you're SuperDad!
What I've Learned About Smart People. tmac721.tumblr.com
538 points by tmacwilliam  3 days ago   171 comments top 50
edw519 3 days ago  replies      
Going to Harvard means I have the very unique opportunity to be around a lot of smart people.

Good for you. Even better for you is the fact that you recognize your opportunity. How sad that so many people in your situation never do until it's too late.

Now, when I say “smart people,” I don't mean that guy who always wins trivia night. I mean, blazingly intelligent individuals who are regarded as the pre-eminent scholars in their field.

There are many vectors of smartness in both magnitude and direction. Some of the smartest people I've ever known never went to college. You don't have to be a "pre-eminent scholar" to be smart and there's nothing wrong with winning trivia night.

It's pretty amazing to pass by Turing Award winners and leading political science scholars grabbing a sandwich.

The smarter you get the less amazing that will feel.

Before I go anywhere, let me make one thing clear: I am not one of these smart people.

Hmmm, not sure I like the sound of that. Where are you going with this?

This is perhaps the biggest lesson I've learned after 3 years here.

Then it's a good thing you have one more year. Hopefully you'll learn a bigger lesson. (Read on...)

There is an absolutely incredible number of smart people in the world, and I can name a whole bunch of students and professors alike who I know for a fact I will never ever ever be as smart as, no matter how hard I try.

How sad to hear you say that...

The purpose of college is not to become a greater repository of data.

The purpose of college is not to become a better accumulator of data.

The purpose of college is not to become better than anyone or anything else.

The purpose of college is to see the possibilities and put yourself in position to go after them.

You may not believe me now, but you are probably a whole lot smarter than many people, including the smart ones you cite, at something, perhaps many things. And once you put yourself on the shoulders of giants, including your own, you can geometrically catapult yourself into much higher spheres of measure, including "smartness". But even then, so what?

It's now how smart you are, you rich you are, or even you good you are, it's what you can imagine doing with all those "assets" and how you can positively affect the lives of others. If you learn nothing else in college, I sincerely hope that you come away with this mindset.

...but I have noticed one overarching theme among smart people: they ask questions.

Wow. It sounds like you learned something in college that I didn't learn until years later. And I thought I was so smart.

After all, I don't want this person to think I'm a moron.

Smart people don't care about that.

The intonation of the question and the intensity with which the professor listened to the response definitively suggested that the professor's question was genuine, and that the answer was of great importance.

What a great lesson. Which reminds me that two of the smartest things you can ever do is keep learning and keep teaching. Thank you.

Smart people challenge the very limit of human understanding, and push the envelope of what's possible farther than many people would argue it's meant to be pushed. Smart people don't take claims at face value, and smart people don't rest until they find an explanation they're comfortable accepting and understanding.

Therefore, you become smarter simply by claiming that you're smarter, right? (Notice this is the opposite of "I know for a fact I will never ever ever be as smart as, no matter how hard I try.".)

Smart people challenge everything.

Hmmm, I wonder if "challenge everything" = "see the possibilities". I think I've learned something.

(You know who taught me that? A smart person.)

That's great, but please don't overlook all that you can learn from people that may not seem so smart.

Maybe someday, people will call me a smart person.

The smartest thing you can ever do is stop caring how smart others think you are.

For now, I'm going to keep asking them questions.

I take back what I said before. It sounds like you've already learned more in 3 years than many learn in a lifetime. But you probably already knew that, being as smart as you are.

Thanks for the great post and the chance for interesting discussion. I feel smarter already.

[EDIT: Any notion that I was making fun or teasing OP was most definitely unintended. This was a great post! (Sounds like I now need a <NoSarcasm> tag.)]

kevinalexbrown 3 days ago 6 replies      
What the article doesn't mention is that the smartest of people perpetually ask themselves questions regarding what they believe they understand. It is remarkably easy to convince yourself you understand something - a mathematical proof, the Halting Problem, advantages of some programming framework/style/language, when you're really just going through the motions and remembering what others have said, kind of memorizing the proof rather than reproducing it. "Of course I understand how genetics work, there are genes and codons and RNA, and DNA helicase, etc" - I can say that, without any ounce of extra understanding. Often I see this in mathematically oriented people who know how to perform X data mining trick, but have no idea how it works. That's perfectly fine - you don't always need to understand everything to use it - but sometimes it breeds an arrogance. When people have a lot of success without knowing the inner workings, they'll sometimes view questions about them as pedantic at best.

But the article does hit dead on that smart people don't just ask questions about things they don't understand themselves. They ask questions that challenge what the world believes to be settled, 'obvious' and extremely clear.

My favorite How-To-Be-A-Smart-Person-By-Asking-Questions story, about Wittgenstein, from Bertrand Russell:

When I was still doubtful as to his ability, I asked G. E. Moore for his opinion. Moore replied, ‘I think very well of him indeed.' When I enquired the reason for his opinion, he said that it was because Wittgenstein was the only man who looked puzzled at his lectures. [1]

Incidentally, on the same page, I found perhaps my favorite genius quotation:

The genius is always puzzled by answers, it is the fool who is satisfied by them.

[1] http://readingmarksonreading.tumblr.com/post/2565799967/pg-4...

espeed 3 days ago 7 replies      
Humility is the key to understanding, but hubris often prevents people from growing because they believe their understanding is right from the beginning.

For a while I have understood that people see the world in fundamentally different ways, but about two years ago I had an epiphany that really crystallized it for me. Now I see people existing in either one of two camps:

  1. Those who believe the world is the way they see it.
2. Those who realize how limited their perspective is.

Alan Kay (http://www.ted.com/talks/lang/eng/alan_kay_shares_a_powerful...) has a developed a similar view. He often quotes the Talmud saying, "We see things not as they are, but as we are.” And he often says, "We can't learn to see until we admit we are blind".

When Jim Collins was doing his research for "How the Mighty Fall", he identified hubris as being the first stage of decline for great enterprises (http://www.charlierose.com/view/interview/10565). This is the concept of "pride goes before the fall," and I believe one of the reasons for this is because we stop asking questions and begin to "lean on our own understanding."

We become complacent with our picture of the world and continue on whatever trajectory we were on when we stopped recalibrating. Unless we were right from the start (which almost never happens in a dynamically changing world), we'll veer farther off course.

A better way to go is to constantly be asking questions -- continually adding to your perspective, refining it, and recalibrating your path based on what you learn. As the saying goes, "you don't know what you don't know".

This seems so simple, but admitting you don't know everything and continually asking questions requires humility.

kenjackson 3 days ago 3 replies      
A lot also has to do with comfort. If I'm the smartest person in the class I feel a lot more comfortable asking questions. I know that if I have a question then a good percentage of other people do too.

But if I'm not the smartest in the class (or simply not familiar with the material) I may be more inclined to look on Google or follow-up afterwards with the presenter. I don't know if the question I have is worth the time of the 20 or 200 other people in the room. I just don't have the context to know.

So to me it's unclear if smart people ask questions because they're comfortable or because that's what they naturally do. A good experiment -- take these same Turning Award winners to a basketball court and have them run through some plays. See if they start asking questions like, "OK, I go left here, but what if someone is setting a pick, should I switch?" or do they nod their head...

mmaunder 3 days ago 1 reply      
Asking questions and knowing what you don't know and being honest about it is super important. But so is moving forward, getting things done and leadership and sometimes constantly questioning your world with fresh eyes every morning can mess with these things. It's also exhausting.

I find folks who have been surrounded by extremely smart hands-on analytical types most of their lives are slow moving and not great leaders because they question absolutely everything. It's a reflex that develops because if you're working with 20 other engineers building a rocket you don't want to be the guy who said "lets just assume" or "screw it, lets just get it out the door".

Sometimes though, it's useful to have an arrogant ass around that makes a few assumptions and keeps kicking the can down the road. Steve Jobs comes to mind.

j45 3 days ago 2 replies      
Truly smart people have always come across to me as not needing to prove how smart they are

Smart people don't care to convert me to their way of seeing the world. Be it using Ruby, Apple, or not, they are able to see a bigger, wider picture where everything is possible with the right amount of understanding and well placed effort.

Smart people see the patterns and similarities in everything that unite, instead of the differences and exceptions that divide.

Smart people aren't righteous. They don't seek external validation / conversion to fuel their own beliefs.

Smart people don't add to a situation if they're merely replacing one set of confusing concepts with another (theirs). They are driven by clarity.

Smart people are genuinely, insatiably curious about everything.

Smart people know how to take the good from everything, and deeply understand little knowledge is new, or truly unique.

Smart people I've met live in a mindset of possibility, not doubt or skepticism. One fuels creativity, and the other douses.

ryanwhitney 3 days ago 5 replies      
Reminded my of this, from Gladwell's Outliers:

"The way you were raised, namely with wealthy or less fortunate parents, also plays a role. Gladwell explains that when wealthy parents drive their children to the doctor, they tell their children things like, “Johnny, now if you have any questions, be sure to ask the doctor. This is your opportunity to talk to him about any health problems you're having….” And so on.

In contrast, the children of poor parents may feel less entitled to this same questioning. Instead, they accept what the doctor tells them straight out, without surfacing concerns or criticisms. Gladwell then uses Chris Langan, a genius with a 195 IQ who wasn't able to succeed in college, as an example. Langan failed to get a PhD (his goal) not because he lacked intelligence, but because he had a mentality to passively accept the conditions and limitations others imposed on him. Langan ended up dropping out of college because he couldn't convince his teachers to accommodate a simple change in his schedule (a change he needed because his truck broke and he could no longer get to campus early in the morning)."

csomar 3 days ago 2 replies      
Is there a difference (or some way to differentiate) a smart person from a very skilled professional?

I'm asking this question to see if a Smart Person is the byproduct of getting skilled in a different set of areas, and getting very professional and focused in one or two.

I'm certainly not as smart as some fellow HNers here. But, few minutes ago, I have been reading blog posts and emails I wrote 6 years ago. "What a retard I was!"

tnicola 3 days ago 1 reply      
Asking questions is not only a trait of smart people, but it is quite possibly the simplest most effective tool that can set you appart in many things.

Think about the last time you bought something where you had a great sales experience. How many questions did the sales person ask? Think about last time you were on a great date? Did the person ask questions about you.

Asking questions is a sign of validated learning and active listening and those two concepts are the way we better ourselves and our surroundings.

jarrett 3 days ago 0 replies      
It's not so meaningful to compare the relative intelligence of people within the upper echelons of intelligence--which is where you appear to be, along with those award-winners you mention. Which is not to disagree with any of your points. Rather, I'm just saying you don't need to worry about being less smart than all those eminent Harvard professors, because you're already in a league where such comparisons don't work.

What defines this league, and how can people in it be compared?

I think its boundaries have something to do with a general ability and desire to learn, and a breadth and depth of knowledge about important things in the world at large. (The knowledge criterion has to take into account age. You know less now than you will at 50, but that's obviously not a mark against you.)

Amongst such people, the only meaningful comparisons are far more specific than "more smart" and "less smart" can capture. You can meaningfully talk about, say, one's ability to solve an electrical engineering dilemma, or to pleasingly arrange the samples in a hip-hop song. But not relative smartness, not in this league.

This is one case where the truth is actually more comfortable than the myths we tell ourselves.

c0riander 3 days ago 0 replies      
Smart people ask questions because they have enough confidence that they are smart to expose their ignorance.

Acting like you know everything doesn't come from a place of intelligence - it comes from a place of fear, that the other person knows more than you, that they will judge you, that a "smart person" would know what you don't know. I've forced myself to ask questions many times in meetings when I thought the answer was probably obvious to everyone else - only to discover that others had been wondering the same thing.

daviddaviddavid 3 days ago 1 reply      
It's worthy asking "Why do smart people ask questions?"

I think the answer is that when they don't fully understand something there is some sort of mental itch that just has to get scratched. Things just don't feel right until all of their questions are answered.

Also, I can't help but note how much these endlessly inquisitive smart people sound like the old gadfly Socrates. If philosophy has anything going for it, it is that it teaches one to ask questions about matters that are typically taken for granted.

gbhn 3 days ago 0 replies      
Another thing I've learned about smart people is that they're basically always willing to tell you what they know. This is super-encouraging to me as someone who is nowhere near as smart as them.

Another way to think about this: the smart people are happy to tell me what I need to know to succeed, so I don't have to be disadvantaged by not being as smart. I do, however, have to be humble enough to be a good listener, and have some discernment to know who to listen to.

kmfrk 3 days ago 2 replies      
Don't get caught writing "very unique" at Harvard. Being unique is binary. :)

I don't like words like "smart" - and "stupid" - but I can recognize some of the qualities associated with them. One of the biggest is to know what you don't know, to not be complacent and arrogant. The people I respect the most are humble people, and I think it comes down to this.

I don't know what the definition of "smart" is, but I think you sound like a smart person for knowing that you don't have it all figured out - and want to fill in the gaps, even though it means telling other people.

codeonfire 3 days ago 0 replies      
I think you have to be careful about making blanket statements and whether you are saying that smart people ask questions or are trying to imply that people that ask questions are smart.

It is in the interest of the speaker to claim that audience members who ask questions are in some way smarter. Being asked a question implies that the speaker has knowledge that the audience doesn't. So of course the speaker is going to claim those people are smart.

It is also not a good thing to presume that audience members are not asking questions simply to draw attention to themselves and to impress other audience members. People with awards are more probably than not to be smart, but they needed a lot of visibility to get those awards.

An important question would be to ask, "which non famous person is asking lots of questions, and is that person smart?" Since the author seems to define smart as having won awards and being well known in a field, this question fails immediately.

Personally, unless it is unpublished research, I can get most of my questions answered immediately by surfing along while listening and without disrupting the talk. It's also funny when I pull up wikipedia and it either turns out to have the same content as the talk, or directly contradicts the talk.

saulrh 3 days ago 0 replies      
So far I've been one of those smart people (though I'm finally finding people that are smarter than I am, and it's a great feeling), and I have my parents to thank for it. As far as I can tell, one of the big things they did was answer my questions. Without fail. Even through the entire "why?" stage, I cannot consciously remember a single instance in which my parents didn't at least provide at least a hook that I could use to keep looking on my own.
Confusion 3 days ago 1 reply      

  Smart people challenge everything.

I don't understand why that is offered as the take-away, because the article does not support it. It supports the take-away that smart people ask questions. The examples do not mention questions that challenge what has been said, but rather questions that result in a better understanding of what has been said.

Challenging people is not always the optimal way of exchanging information. When you think someone is wrong, asking questions to understand why they think something will work or is correct is sometimes much more constructive. This is in cases when it leads you to discover a different underlying assumption, a different main goal, a piece of information you missed, ...

iskander 3 days ago 0 replies      
I would like to ban the word smart from common discourse. It looks like it describes something, but actually masks the reality of the how someone can look 'smart' in a situation.
75c84fb8 3 days ago 3 replies      
So do they ask questions because they're smart, or are they smart because they ask questions?
Craiggybear 2 days ago 1 reply      
Sigh. Define "smart people".

A lot of people I've seen described as smart are either a) actually good at making money (not necessarily legally) or b) good at manipulating people to get what they want. I describe this as cunning, rather than smart. Although they may be smart, too -- but that's quite rare in my experience.

But, yes, smart people tend not take anything at face value or believe everything they are told by the media.

Going to institutions like Harvard is not in itself a measure of smart, necessarily. All it usually represents is a disposable income.

afterburner 3 days ago 0 replies      
"After all, I don't want this person to think I'm a moron."

Kudos for him recognizing that in himself. It is the single most problematic and annoying aspect of most middle and upper managers. Fear of looking dumb feeds on itself.

lurker17 2 days ago 0 replies      
> Going to Harvard means I have the very unique opportunity to be around a lot of smart people.

My high school English teacher mocked Harvard students who used term "very unique". "uniqueness" is a binary (not continuous/leveled) attribute (and "very" is a near-meaningless word).

wisty 2 days ago 0 replies      
I think it's a hasty generalization to say "smart people ask questions". It's more general to say "smart people get to the bottom of things, unless it's obviously an intellectual tarpit (hello postmodernists)."

That's why they ask questions. Even if they hate doing it, they have to find out, at just about any cost.

zeynalov 3 days ago 0 replies      
I think it's a paradox. What does smart mean? Smart = knowing as much information as possible (or knowing how and where to get information when it's needed) + gifted with normal logic. So if smart knows best, why does he/she need to ask? If he's smart enough, doesn't it mean that he/she must be least asking one?!

Edit: I remembered something. There was a man called Said Nursi in Ottoman Empire in 20th century. He is recognized as one of smartest people ever. When he was in his 20s, after graduating 4 universities he opened a bureau in Istanbul and wrote on it's door "Here will be all questions answered and no questions asked" After answering most paradoxal questions ever he was already famous in Europe. In first days of Turkish republic people invited him to parliament, and then to be the president of Turkey. He rejected and started to write his famous books. Nowadays there are 300 millions of his students calling themselves "Nurcular" in turkish.

MrJagil 3 days ago 0 replies      
The one quote that has led me on to _greater smartness_ is that of (i believe) Socrates:

"The only thing I know, is that I don't know anything."

Remind yourself of that whenever you feel smart, and you will soon feel your mind expanding.

yason 2 days ago 0 replies      
I don't necessarily want to be around smart people but around wise people. However, there's no specific place to go. They're both all around but also in very small quantities.
stretchwithme 3 days ago 0 replies      
Another reason to answer every question your child asks and reward them with useful information no matter how probing the question might be.

And also take care that schools reward this to, to the extent possible.

omerta 3 days ago 0 replies      
I think the author of the article is pretty inaccurate in his analysis of students at Harvard. I think the article reflects poorly on Harvard, to be honest. The author is about as smart as my shoe.

Usually, the ones who continually ask questions and run their mouths in class are the ones who are extremely interested in their respective field of study. Interest creates curiosity and excitement, and both are required for someone to continually want to ask questions and learn more about whatever subject.

The other students who do not continually ask questions are either shy or are just going through the motions at college, so they do not really care.

If you are a student at Harvard, you probably have above-average fluid-intelligence, regardless of what you accomplish with it. The more you ask questions and the more interest you have in a subject, the more knowledge you will gain in that said subject (crystallized intelligence). But it doesn't mean people who do not continually ask questions have any less fluid intelligence.

jroseattle 3 days ago 0 replies      
In thinking about "smart" in the abstract sense or in relation to others, I draw on the logic of Forrest Gump: smart is as smart does. (Forrest said "stupid is as stupid does", but same corollary applies.
aDemoUzer 3 days ago 0 replies      
The article made a good point and I agree with it. In most of my classes, I was usually one of the or the only person who would either ask questions or attempt to give an answer. Equally important trait of a smart person is the willingness to answer a question - even when you are not fully sure. It is a great mean to understand new concepts.

1. If I am right, it validates my understanding of the concept.

2. If I am wrong, it bring misinformation to surface and gives me a reason to go over previously discussed material. If I never had experience where I was wrong, it puts me in the cycle of "I know everything, so I don't need to study."

3. It keeps me awake in class because asking and answering questions requires paying attention in class.

davidf18 3 days ago 0 replies      
IMHO much of asking questions is largely cultural. For instance, at the Passover Seder the youngest child asks (with prior coaching from their parents) the "four questions."

My father is a prof at a "top university" and in my family we were always encourage to ask questions and discuss issues. My friends grew up in similar households. But I don't think these were typical households. My perception is that in some Asian cultures the children are less likely to be encouraged to question than the environment that I grew up in. Also, many women are more shy than men and perhaps less likely to ask a question that was on their mind.

Regarding hiring decisions, the one thing I look for is whether people will argue with me or not. I look for the people that question and argue with passion.

thewisedude 2 days ago 0 replies      
Somebody told me once, if you ask a question - you may appear to be a fool for a minute. If you dont ask the question, you are a fool for the rest of your life. Of course, this saying cant be taken too literally, but I think the idea is: to learn something new, keep your ego aside, ask questions and improve your understanding!
jczhang 3 days ago 7 replies      
So what do you do if you're in an environment that discourages asking dumb questions you might have?
arvind_bhat1 2 days ago 0 replies      
There was a similar post posted on Friday I think which spoke of the concept of 'Flow'(http://en.wikipedia.org/wiki/Flow_(psychology)) and how to achieve. It also referenced Gladwell's 10000 hours theory.

Does anyone remember what the link was? Please post it here if you do. Thanks :)

ramses 2 days ago 0 replies      
One point the author may be missing, is that smart people do not learn to ask question. Instead, asking questions is a side-effect of being extremely curious, which is a core characteristic of smart people.

Similarly, how can someone learn to ask questions without being sufficiently curious, or at least sufficiently motivated to learn about a particular subject? I guess the answer is: with a lot of work.

juiceandjuice 3 days ago 0 replies      
Smart people ask questions because they are smart enough to know what they don't know.

You can't know until you don't know.

UK-Al05 3 days ago 0 replies      
I think this mostly comes with age. Older people tend to sceptical and challenge everything anyway. Probably because they have been screwed over a few times in their life and ask questions.
stretchwithme 3 days ago 0 replies      
Knowledge is built from the ground up. The more knowledge (and experience) you integrate into your brain, the smarter it is.

There is an innate ability to do this integration and some people do it more easily.

But those who use their abilities most often and without fear build their brains faster.

drstrangevibes 2 days ago 0 replies      
if correlation does not imply causation, then asking questions will not necessarily make you any smarter, no?
rryan 3 days ago 0 replies      

MIT is actually pretty great with financial aid. 76% of students receive need-based aid. ALL financial aid is need-based. Merit and abilities don't even enter into the equation.

99% of students in 0-50k income bracket get a full ride.
98% of students in 50-100k bracket get mostly covered
94% of students in 100-150k get a lot of help.

The average debt upon graduation is 18k.

makronized 3 days ago 0 replies      
Not asking questions may also mean that we're losing our contact with teachers (in this case specifically), not meant as those trying to teach you how to do something, but as people who can teach something that's not written inside a book.
zinnaglism 3 days ago 0 replies      
I agree and I've written about this in 2012: http://lukas.zinnagl.com/2010/12/asking-questions/
Mordor 2 days ago 0 replies      
Unfortunately, this also means 'stupid' people accept everything they're given :-(
Joss451 3 days ago 2 replies      
I've noticed the pseudo-smart are quite annoyed by questions. RTFM, they reply. That's pseudo-smart for "I don't know".
mangoman 2 days ago 0 replies      
I ask questions...

if only correlation implied causation...

hnmember 3 days ago 0 replies      
smart people may or may not ask questions, that depends on the situation. professors, however, usually do ask questions; most of the time just to announce their presence and attract attention.
sagantio 3 days ago 0 replies      
How are intelligence and knowledge related? I perceive that for many people intelligence depends on how much do you know about something.
jcdietrich 3 days ago 0 replies      
What did you learn about smart people?
FredBrach 3 days ago 0 replies      
"The important thing is to not stop questionning" - Albert Einstein
vacri 3 days ago 0 replies      
Smart people also:

- don't use low-contrast text, which obfuscates their message

- have a comments section for feedback, rather than a 'reblogged' section for desperate popularity

14 years ago: the day Teller gave me the secret to my career in magic. shwood.squarespace.com
452 points by Sukotto  7 hours ago   35 comments top 17
kevinalexbrown 6 hours ago 1 reply      
It took me a while to appreciate it, but what I enjoyed most about this was the letter from Brushwood to Teller. Teller's letter was awesome in all of the general ways, and he makes great points about about doing something besides the thing you want to excel at.

But Brushwood's email was great because it asked for advice for a specific problem, and it was a problem that Teller had the expertise to answer. Not "Oh Teller! I want to be a great magician just like you!" Not "What are 10 things an aspiring magician should do?" Not "Dear Teller, would you mind sending me information you find relevant or letting me pick your brain over coffee?" It was "I want to develop my own style, here's what I've done to that end. I've had some success, but here's how I struggled with taking it to the next level. What do you suggest, as someone who's accomplished this?" Emails like that tend to get the best kinds of responses.

boredguy8 5 hours ago 1 reply      
Is anyone else as impressed as I am that Teller remembered the name of an up-and-coming magician they met after a show more than a year earlier? And that he referenced the 'inside joke' with no prompting?

Also, I think folks are missing what seems to me to be the key takeaway: "And if I'm good, it's because I should be a film editor. Bach should have written opera or plays. But instead, he worked in eighteenth-century counterpoint." He's taking something that's well understood in one area and bringing it to an area where that thing is not understood. Sometimes people call that a 'distinctive'. Sometimes it's a 'paradigm shift'. Teller could have been an average film editor, or he could take ideas from film and bring them to magic.

alanfalcon 5 hours ago 1 reply      
"Here's a compositional secret. It's so obvious and simple, you'll say to yourself, 'This man is bullshitting me.' I am not. This is one of the most fundamental things in all theatrical movie composition and yet magicians know nothing of it. Ready?

Surprise me.

That's it. Place 2 and 2 right in front of my nose, but make me think I'm seeing 5. Then reveal the truth, 4!, and surprise me."

Teller absolutely means this. Watching the Penn and Teller Magic and Mystery Tour, this was the one best scenes in that show or in anything else I watched on Netflix last year:


Yes, Teller is speaking, but that isn't what matters at all. The takeaway for me is that you must KNOW YOUR AUDIENCE! This is a magic trick that would not be a magic trick at all if it weren't performed for someone like Teller, a master of his craft. This scene from an otherwise interesting but forgettable show blew my mind.

Sukotto 7 hours ago 3 replies      
I think there are some great points that adapt well to the startup mindset.

* [Ship stuff]. A lot. Try stuff. Make your best stab and keep stabbing. If it's there in your heart, it will eventually find its way out. Or you will give up and have a prudent, contented life doing something else.

* We did not start as friends, but as people who respected and admired each other. Crucial, absolutely crucial for a partnership.

* Have heroes outside of [startups / technology / business]. ... You're welcome to borrow [other people's], but you must learn to love them yourself for your own reasons. Then they'll push you in the right direction.

* Love something besides [technology / startups / business]. Get inspired by a particular poet, film-maker, sculptor, composer. You will never be [ $famous_startup_personality]. But if you want to be, say, the Salvador Dali of [startups / technology / business], THERE'S an opening.

mattmaroon 5 hours ago 1 reply      
Humorous story: I once got yelled at by Teller. I was in Vegas for the World Series of Poker which was held at the Rio, the same casino where their show runs. The previous night I had had dinner at Okada with Penn's wife, Emily, who was a friend of the friend who put the dinner together. I also had tickets the next day to see their show for the first time.

On a break from my tournament I stopped by Starbucks to properly caffienate and saw Penn and Teller sitting in a corner. I went over to introduce myself, as I would to the spouse of anyone I had just met if I somehow recognized them. Right when I got there Teller gave me the evil eye and said something like "Can't you see we're working here?".

Of course they were just sitting at a Starbucks talking. They didn't have any props or anything. And probably they were hashing out details for the show or something, but I still found it quite rude, especially since I know they greet people outside of the show every night afterward.

But mostly I just thought it was funny to get yelled at by a guy most people think is mute.

randall 5 hours ago 0 replies      
First: Brian is the man. (Had him on a show I used to be on called The 404, and he had me both laughing and vomiting by the end of the show.)

Second: Teller's advice is echoed by another great... Ira Glass. He talked about how to make it in broadcasting. http://shorty.randallcbennett.com/post/36484012/ira-glass-gi...

The thing with all of this is pretty simple. When you start, you have taste. If you have good taste, you'll know what you're making isn't quite what you want, but it's on the way to being good. If you keep perfecting your taste along the way, you're making positive progress. For startup entreprenuers, that often means starting lots of insignificant companies / working at insignificant companies on your way to perfecting the sense of who you are.

I feel like I'm _just_ starting to know who I am professionally. It's been about 7 years, and now I know that the only thing I want to do is make it so anyone can create TV quality video without a TV quality budget.

Failing in numerous ways has finally led me to figure out who I am. Now, it's time to take what I've learned and actually contribute something to the world.

For Brian, it's kickass magic which people can consume online. For me, who knows what my end "product" will be, but either way, if you don't enjoy the taste refining process, you'll probably both be dissatisfied with your life, but also miss out when you're about to break through.

I hope anyway.

jasonkolb 1 hour ago 1 reply      
I recall reading a study once where the brain waves of people listening to a story literally synchronized with the brain waves of the person telling the story. Quite literally the storyteller was controlling the minds of the listeners.

Apparently we are hard-wired to become entranced by stories, but there is a skill to telling them in a way that doesn't break the trance--or, as Teller talks about, leading people to a place where you can smash the trance in a dramatic way for maximum impact.

Storytelling has fascinated me ever since I read that study. I must go find it again.

ctdonath 1 hour ago 0 replies      
Great letter. Thrilled at the start where he remembers, without prodding, one of thousands of people he briefly met long before. Great insights, prompted by the questions I want to ask great people but could not put in words.

P&T have a great show. As the letter, they tell so much more than just clever tricks - they comment on the human condition. Because of its insights into Occam's Razor "Teller Smoking" is my oft-recounted favorite ... Well, that and the bullet trick, but that because I inspected Teller's bullet, shell and gun, and still have the shell I marked and the bullet (also marked) Penn "caught" and spat into my hand.

moreorless 6 hours ago 0 replies      
Brian Brushwood is an amazing magician, but as a person, he is even more amazing. I had the fortune of meeting him last weekend at a common friend's house and saw him take time out to entertain a kid. If you're not familiar with his work, he has a weekly podcast on Revision3.com (http://revision3.com/scamschool).
mgallivan 6 hours ago 5 replies      
Why does transferring knowledge across domains have such exponential returns?

Is it only because the time it takes other fields to adapt to new methodology is longer - or are there other factors?

EDIT: Holy crap, I worded this terribly.

Rewritten: Why does going across domains with new ideas have such high returns? Obviously you're a fresh idea but are there other reasons that influence your success?

abalone 5 hours ago 0 replies      
Teller closes with a great point about where to draw inspiration from. Look beyond your own field. If you can distill something about the greatness you admire in a different art and adapt it to yours, then you will have accomplished something original. Study the masters, but especially the masters of other arts.

I wonder if the same could be said for software engineering. Maybe it's pretentious but I like to think of it as a practical art. Certainly much of what Teller teaches about "how to surprise" could apply to Steve Jobs' keynotes. Withhold information. Tease. Throw in a false ending. LAND the real ending.

Sounds like Jobs had a lot in common with magicians.

huhtenberg 2 hours ago 0 replies      
> Surprise. Withold information.

Works well for Apple.

mathattack 5 hours ago 0 replies      
Yet another reason to love P and T. Although unmentioned he captured the valley spirit of execs mentoring youngsters who might nonetheless become competitors.
kposehn 6 hours ago 0 replies      
Teller's letter is amazing, and I think we all have much to learn from it.
jackreichert 4 hours ago 0 replies      
This is truly relevant to all who strive for greatness.
rglover 5 hours ago 0 replies      
michaelkscott 5 hours ago 0 replies      
Not a very relevant HN material. Still puzzled on why it got so many votes.
Startup dudes: Cut the sexist crap danshapiro.com
414 points by gurgeous  6 days ago   255 comments top 37
c0riander 6 days ago  replies      
Some of these comments baffle me.

Look, it doesn't matter what someone said before or after they sexualized someone in a professional context. Here's why: human beings are smart. They know that things people say matter. Thus, if you are commenting on someone's appearance or sexiness in a professional context, that must matter to you.

Why is that important? It serves to undermine the person it's said about. Rather than being judged on their work, or their connections, or what not - they are now being judged for their appearance. And that steals credibility they may have had in other, legitimate arenas.

It says, I like you because you're attractive, not because you deserve it.

("Oh, Nancy's not a good lawyer - everyone just thinks she's pretty." "Well Bob got that promotion because he's so good-looking. He didn't really deserve it." Etc.)

And yes, in some contexts, we expect to be more casual and colloquial. But if you're in a professional setting, unprofessional remarks do insidious harm to the subject.

fishtoaster 6 days ago  replies      
For context, here's the text of the audio of the guy introducing her:

"So Rebecca Lovell is the chief business officer of Geekwire, and I got to know" you can read the bio" what's written, but just for some personal color: So, Rebecca took over as executive director of the Northwest Entrepreneur network while I was on the board there and just blew us all away with her expertise, her knowledge, her connections, and her charm. And when we were putting together this program, we were looking for a real dynamite moderator who really knew the subject area, might know some of the potential panelists, and who could really add something" some substance to the program.

Rebecca's one of the smartest ladies ..."

drivebyacct2 6 days ago 5 replies      
I'm disgusted at the amount of sexist crap everywhere and I'm horrified when I see it here on HN and am still surprised at its persistence on reddit (ie the trainwreck #1 post this morning). It's been a while but here on HN there was a series of posts and discussion about women's pay and negotiations that left a bad taste in my mouth from the dripping sense of entitlement and ignorance that resulted from posters arrogantly asserting that "women should just ask for more", revealing their ignorance of the complications of sexism in various tech industries.

Sadly this reaction is typical when confronting a majority about their taking advantage of minority groups. "It's just a joke". (Hint, this response has already been offered up more than once in this thread). It doesn't affect males and it's a male dominated industry, thus the issue has low visibility and personal impact to those who are causing the problem or have the influence to fix it. This all compounds to make this issue hard to solve unless people are willing to vocally confront these incidents as they happen, when they happen, and take responsibility for treating people with respect and equality.

yason 5 days ago 2 replies      
What the hell?! Someone has really stretched the definition of sexism here or the alleged problem exists in some alternate universe only.

I took the time and listened the audio recording. What happened is:

- The guy spends minutes talking about how good and smart Ms Lovell is and how she suits the role perfectly

- And in the end makes the short remark about that a sexy single lady who is now a sexy married woman, obviously to celebrate the recent happy event.

- He even pointed out how lucky her new husband was instead of, say, drooling at her sexiness himself.

- Everybody laughed.

- Ms Lovell laughed, and made some witty comments before starting with the real business.

And then some third party guy gets upset because he thinks there's a problem somewhere. Excuse me but this reeks of steep hypersensitivism.

It might certainly be sexist to say somewhat that would expand to "she's so smart that we picked her for this role eventhough she's only a woman" or "we chose her and that is because she was just too sexy to pass". That would be somehow implying that women are lesser but at least they can look good.

But this was clearly not the case in this event. What happened was a compliment, both on her recent marriage and related to that, her good looks.

Emphasis on the word "good". It was a compliment: the man stated what he thought were positive facts about her, and especially not pointed to anything negative nor exhibited, say, disturbing personal interest in her.

The strange thing is that it's not only that as if women couldn't take compliments anymore"I think most of them can"but, rather, it seems that some men can't take it anymore to observe women being complimented. This is just crazy.

We're all men and women and men do pay attention to good looking women and women do pay attention to good looking men (at least if only they let themselves). That is perfectly normal and there's generally nothing wrong in making a compliment about one's good looks. While there are subtle but complex rules about social interaction, flirting, including making comments about good looks or of even sexual nature, most of all that used to be the norm, and generally well received and lavishly given, without the slightest hint of sexist nature.

gibybo 6 days ago 7 replies      
I don't know the context here (full audio is not loading for me), but doesn't it seem reasonable that it was just his way of congratulating her for recently getting married? I could imagine a similar intro being used for a guy that was just married too.

EDIT: I got the full audio to work and the introduction is longer than the quote he pulled out. Judging from his tone and the earlier part of the introduction, I really don't think he was doing anything but trying to compliment/congratulate her (though admittedly he could have done a better job).

nailer 6 days ago 3 replies      
There's another side to this as well: it distracts from your message and makes you sound weird and creepy.

Don't introduce people as sexy unless you're trying to make a joke about being weird and creepy. In which case, make it a guy, and compliment the way their hair smells for extra weird and creepy.

boredguy8 6 days ago 2 replies      
This exists in more than just the startup world. I was in a meeting today where a technology leader said, "Let's have X take the meeting notes, she's a woman." This person also had her administrative account set to a pathologically trivializing username.

I think the term "microaggression" gets overused, but the story referenced in the article says that what's important about the person is her gender, attractiveness, and marital status. To the point that her "lucky" spouse deserves special recognition. What?!

jfarmer 6 days ago 0 replies      
I see this shit all the time, and most men don't even realize they're doing it. Lots of startups quickly converge to a culture that's little better than a frat house.

If you think this is much ado about nothing, consider this: the subtle sexist parts of your company's culture will turn off any qualified woman from working there.

And we all know how EASY it is to hire in Silicon Valley these days.

I'd also like to add, one of the most positive experiences in my startup life was working for Brian Sugar and Lisa Sugar at Sugar, Inc.. This was my first job at a proper startup and as a male I was in the minority.

I joined as #10 or so, and the first non-founding engineer. One third of the founding team were female. The second engineer we hired was Lydia Wagner.

From #10 to #30 or so I think I was one of only two or three male hires.

The stereotypical Silicon Valley startup is founded by N engineers, probably male, who graduated from college in the last 5 years.

Put those people in a tiny room for 10-14 hours a day, 6 days a week, for a year or two and it's kind of inevitable.

But it's also easy to stop if you're self-aware about it, and the founders make it a priority.

Also, guys (if I may be so bold), this thread is acting as an existence proof for the point the article is making.

SarahKay 5 days ago 2 replies      
I'm a girl in tech, and I think nothing in that introduction is offensive.

I feel that there are five points here that need addressing.

1. Women rarely become attractive by doing nothing. We have to work at it. You have to take care of yourself, go to the gym, eat right, choose appropriate clothing, and etc. I have never laid eyes on Rebecca Lovell, but if she's attractive then I think it is a safe assumption that she is trying to be attractive. If I were Rebecca, I would be pleased that my efforts had been noted and approved of.

2. If the fellow who introduced Rebecca had implied that her attractiveness was her only useful quality, I would be more sympathetic to Dan's complaint. But the introduction didn't do that. In fact, he led off by saying how smart Rebecca was, and then he went on to describe her as "perfect" (for the position) and "talented." At no point did he imply that Rebecca was chosen for her looks or that her looks were her claim to fame. On the contrary, his introduction seems genuinely kind, respectful, and affectionate.

3. Even if this introduction had been offensive -- if the introducer had said "Rebecca is hot and stupid and we will enjoy looking at her while she moderates" -- is it really that big a deal? Men insult each other all the time in similar contexts, and it's very rare that they get criticized for it as when women are insulted. If we women are worth a damn, surely our egos should be sturdy enough to handle this sort of thing like adults.

4. I have often heard men say "No wonder there aren't more women in tech; they get treated like sex objects!" It should be news to no one that men like sex -- least of all to women. People in all industries and with all interests are insulted all the time. Can it really be true that womens' interest in tech is so fragile and tenuous that vague insults and sexual innuendo are enough to discourage them from it entirely? I don't believe that, and I'd further venture to say that women who do say that are just making excuses because they're interested in something else. I got my CS degree from Georgia Tech, and in the College of Computing men outnumbered women 9 to 1. I was often the only girl in my classes, and sometimes I was exposed to immature male freshmen being immature male freshmen. This wasn't a trial for me; it wasn't difficult. I wasn't alienated. It sounds crazy to even consider that references to breasts or sex (gasp!) would make me leave my chosen field of study. Who cares if I know that someone wants to have sex with me?

5. Dan Shapiro is clearly trying to do right by women and be a good man, and I respect and appreciate that. But I think he is selling Rebecca (and all women) short by suggesting that that introduction should hurt her feelings.

grannyg00se 6 days ago 2 replies      
Is this necessarily sexist? He's not showing any belief in being superior to women, nor is he discriminating against her in any way. In fact, he complimented her at length on her professional success.

At one point he described her as a sexy single woman. He even mentioned her husband and asked for him to stand up. While I would consider that to be a very odd and uncomfortable way to end his introduction, it doesn't seem sexist. If somebody went on at length about how great I am professionally, and then threw in a statement about me being a sexy single man, I'm pretty sure I'd just consider it as an added complement.

I understand there is real sexism in the industry. I just don't think this is it. It's just an odd comment from a person who may be odd/uncomfortable around women.

spking 6 days ago 1 reply      
I'll be the first to admit that before I had my daughter, this type of stuff never really bothered me (shame on me). Now that I have a little girl, I'm much more sensitive to it and really, really don't want her to grow up in a world where she gets introduced to a professional audience as "sexy".
phzbOx 6 days ago 8 replies      
Here's the male version:

John's one of the smartest guy I know, and I thought that he was a perfect pick for the role of moderator. When we selected John and he said yes, he was a handsome single man. And since that time, he's become a handsome married man, and so I wanted his lucky new spouse to stand up. So we've got not only a very talented, but a happy moderator.

Would someone saying that get to the top of hacker news? I do agree that this is far from a good introduction thought.

jballanc 6 days ago 0 replies      
How about this: Cut the unprofessional crap!

The programming world is so used to breaking the norms, revolutionizing industries, and wearing T-shirts and sneakers to work that we forget, sometimes, that some aspects of "professionalism" actually do serve a purpose. There's a reason that senators don't call each other by name (hint: how vitriolic can you sound when yelling "I respectfully disagree with the senator from Kentucky"). Respect is a currency in the world of intellectual pursuits. At one time, we showed that respect in the way we dressed. At the very least, shouldn't we show that respect in the way we speak? You might be surprised how far a little respect can go.

ekanes 6 days ago 0 replies      
Argh. This continues to happen. Was in a boardroom meeting with a company recently with my female cofounder, and she was all but ignored by the CEO (others were fine). On the surface, nothing will come of it. In actual fact though, the behavior spoke volumes about what kind of environment they offer in terms of a deeper integration/commitment, and who knows what opportunities were lost for them (and, in theory, for us).
littlegiantcap 6 days ago 1 reply      
Being sexist, racist, or anything else really distracts from the mission of the startup.

That being said we take the same approach that south park does. Everything is on the table or nothing is on the table. Everyone in my group constantly rags on each other for everything including some off color jokes. However we've been friends for years, and when we work with other people we cut that stuff out immediately. The comments he made were fairly demeaning, and I guess a strong lesson here is know your audience or if you can't figure that out then don't do it at all.

To clarify I judge a person based on their ability and how they treat others. It's really the only way to go about things.

jrockway 6 days ago 0 replies      
I look at remarks like this as a result of not practicing in advance. As programmer types, we don't typically get up in front of people and make personable comments. If we are up in front of people, it's discussing something technical, which is something we are qualified to talk about. But introducing panel moderators -- when have you ever done that before? All you have to go on is cliches you've picked up from TV or movies, and you saying something that sounded funny when a comedian said it might not sound as funny. You don't know until you try. You don't know until you practice.

(Personally, I think the best way to navigate uncharted waters like this is to stick to the facts. "Here's our panelist, she has a PhD from Harvard and likes skiing." I'm not going to get any laughs or win any awards for that sentence, but I'm also not going to make anyone feel bad. And that's more important to me.

larrys 6 days ago 1 reply      
"And if you see someone doing this, call them on it. I didn't… that was my nervous laughter in the background of the recording."

"Here's what the man introducing Rebecca chose to say"

So, who is this "man"?

Easy to say but hard to do depending on your relationship to the "someone".

Let's say the person doing this is of the stature of PG and you are looking to get into YC.

Is it safe to stand up to him?

Sure that might get you points for taking a stand, he might actually like that.

Or maybe not. It's double or nothing.

It's easy to take a stand when the person being sexist is of no significance to you. Much harder if you have something to loose.

This is why things like this happen many times. And important to keep in mind. Power.

Karunamon 6 days ago 3 replies      
So someone explain this to me.. how is this "sexist"? That to me takes on an air of discrimination. I didn't see any undertones, nor would those (assumed by the author) undertones exist if the gender roles were reversed.

This "controversy" seems like a lot of bunkola, to me.

DanBC 6 days ago 0 replies      
It's staggering that in 2012 we still have to remind people about this.
kafkaesque 6 days ago 0 replies      
I apologize for this (my) post because it adds no real value to this topic. But I just have to say, as a male, I am disgusted when guys talk like this in a professional environment.

I do not know anything about the person who said it or the companies involved, but I associate this kind of talk to a particular type of person, which may or may not be an accurate portrayal of "guys who talk like this", and I guess it is this very archetypal man that rubs me the wrong way. Here I am no longer talking about the person who said this sexist comment, but the image of a guy in my own head: a yuppie, clean-cut, trendy, smooth-talker, that thinks (and certainly can be) cutting edge in the IT or business sector, that also thinks he's got it all figured out and knows exactly what each person (not just women) is worth. He's got us all "figured out", but is really just full of himself. I've met a couple, and again, I'm not saying this person is that type, but having gathered extremely little information on him, he reminded me of this "theoretical" person, and I just have no tolerance for these "slick" smooth-talking men.

If my post is inappropriate because you deem it to be an overreaction, please delete it or advise me to, and I will follow through. I just feel very strongly about this.

I can write a whole essay on how calling anybody "sexy" sends the wrong message. Good on him for going for the un-PC, hip talk, but it absolutely fuels the image of what our society deems to be a standard/pre-defined sense of beauty or a definitive definition of "success". And the problem is that many people point out what "sexy" is to the point that we start seeing a pattern and assume "Oh, this is what sexy is", or "Oh, this is what beauty is". It takes all types to make the world go 'round.

And just to add a point that is not contentious: Calling anybody sexy in a business environment is disrespectful, regardless of gender, or how in-tune/hip with the kids you may feel you are. I feel women in power tend to downplay it or act like they don't mind for the very reason that they may be blamed for falling into the "typical sensitive, overreacting" woman role. It's like they can't escape it. Damned if you do, damned if you don't. A catch-22. So might as well make the best of it and put on a smile. (Or talk about it privately with your bestfriends.)

I'm new here, so if this rant is inappropriate, please let me know and I'll remove it or edit it, instead of getting a flood of down-votes.

Proleps 5 days ago 0 replies      
I guess part of the problem is how women are presented in the tech industry. Whenever you see women on a tech event they tend to be booth babes, or they have been send to the event to attract men.

I was at a career event last week. None of the women representing a company could give a clear story of what the company does from day to day. They where just there to be pretty.

If we want to stop sexism we have to stop this, but i don't think this will happen any time soon.

efnx 6 days ago 3 replies      
I would be very complimented if an introducer said these things about me, replacing 'woman' with 'man'. Maybe I'm sexist - I think (those who are upset) are a little too uptight. It feels like (they) would like to take sexuality out of the workplace entirely.
j45 5 days ago 0 replies      
Taking the focus away from intellectual and professional capacity with something else is just that, indirectly downplaying and trivializing the person.

The interesting thing is many guys probably wouldn't say something like this about a close female they knew themselves, be it their own wives, girlfriends, sisters.

Nor would we want anyone speaking like that about our wives, girlfriends, or sisters.


jtchang 6 days ago 2 replies      
How to do introductions 101:

1. Say something about why the person is here. Speak to their credentials and establish credibility.
2. Know your audience. Let them know why the person being introduced is important to them.
3. It's okay to make a small personal comment. It establishes rapport.

If the entire intro is #3 you've screwed up. This intro was clearly out of line. My guess is that the moderator didn't even realize it which is twice as bad.

icarus127 6 days ago 0 replies      
A lot of the comments here compare this to saying a man is sexy and conclude "it sounds a little weird, it's out of place in a professional setting."

This completely misses the point that in our culture women are frequently (practically _always_) objectified sexually in some way. There's a gulf between what it means to call a man sexy and what it means to call a woman sexy.

I think this is what men so often completely miss. The male equivalent of this is not
"John's one of the smartest guy I know, and I thought that he was a perfect pick for the role of moderator. When we selected John and he said yes, he was a handsome single man. And since that time, he's become a handsome married man, and so I wanted his lucky new spouse to stand up"

it's something closer to:
John's one of the smartest guy I know, and I thought that he was a perfect pick for the role of moderator. When we selected John and he said yes, he's a single man with just has a gigantic penis. And since that time, he's become a married man with a gigantic penis, and so I wanted his lucky new spouse, who gets all that in bed, to stand up"

It's not 'out of place' it's appalling that something like this is acceptable _anywhere_.

snth 6 days ago 0 replies      
Regardless of the merits of this blog post, we seem to have to discuss this at least once a week on Hacker News. At this point I'd classify it as a "classic flamewar topic". Flagged.
j_baker 6 days ago 3 replies      
I think he chose a pretty bad example to lead in with. Yeah, the comment to Lovell lacked taste, but it was hardly the worst thing that could have been said.

That said, there was a good point here:

Think before you open your mouth.

Couldn't agree more. Far too many faux pas (including some that I've made) could be avoided just by thinking about what you're about to say before you say it.

shpoonj 6 days ago 0 replies      
If someone called me a sexy single man, I would be flattered.

I don't see a problem.

pbhjpbhj 6 days ago 1 reply      
Typical men, all sexists ...

Shouldn't the title be "startup people" if we're "cut[ting] the sexist crap" - unless of course it's a documented fact that no female involved in a startup has ever made a sexist comment.

drunkenmasta 5 days ago 1 reply      
Way too many conflicting messages in this American culture of ours. I can understand the frustration felt by those who feel that their qualities are not recognized because of one reason or another, but honestly, I don't think it was the speaker's INTENT to sexualize the woman. It is an important topic but poor guy!! Why not focus on more subtle messages like the fact that CNN or your local news hires women to be on camera that do not look like the average woman you may see on the street?
HedgeMage 6 days ago 3 replies      
Somebody was (reportedly) rude. This is only news when the person being rude is male and the person on the receiving end is female. THEN it's proof of how horrible men are.

Kind of like the reverse of: http://xkcd.com/385

drats 5 days ago 0 replies      
I agree, but I flagged for the headline.
joedev 6 days ago 0 replies      
Terrible introduction. Gives insight into how that man's brain works around women, causing him to trip over his tongue and mention what he saw - "sexy" - vs. what qualifications she had for moderating.
xentronium 5 days ago 1 reply      
I am not sure I understood this post correctly: is it the phrase "a sexy married woman" that is a crime against humanity?
throwaway488 5 days ago 0 replies      
low cut shirts, mini-skirts, hose, lipstick, eye-liner, perfume...

seems like being sexy matters a lot to women. you just better not acknowledge it out loud.

gaius 5 days ago 1 reply      
Flagged; flamebait.
iDisapprove 6 days ago 1 reply      
Really? Women do not start or get involved with tech companies because the male programmers make sexist jokes?! Get real. Women are just as competitive as men, and the reason they stay out of tech has not much to do with sexism. I am all for women and men being equal, but putting men on the burning stake for something like this seems unfair to me.
Show HN: Github for Designers pixelapse.com
403 points by lominming  6 days ago   83 comments top 44
kerryfalk 6 days ago 5 replies      
I've been thinking about how a GitHub for designers would work. This doesn't quite seem like "it" to me. Don't take that remark the wrong way, I like what's been done here. It's well designed and I could see a use for it.

But that's just it, I have to find a use for it. It isn't immediately obvious to me. I'm not the typical designer as I don't have clients and my job isn't 100% design but I have been designing everything from packaging, to print advertisements, to websites for ten years. I don't know why I would use this. If I need alternate versions of files I just save them with version numbers. The poor man's version control. But I don't need anything more than that - do other designers?

The power of Github I believe is that it allows programmers to share their work with their colleagues, learn from others, and work together with others.

I like Dribbble because it allows designers to do what they want to do with their colleagues. Show off their work and get inspiration from other designers. To me, Dribbble is the closest thing to a Github for designers.

What's missing from Dribbble is the collaborative part. Coders working with coders, designers with designers. But that's the problem. Coders have to work with other coders all the time it's the nature of the beast. Designers do not in the same way. In my experience.

So if it's not designers with designers then it's designers with coders. And a place for those who (like me) both design and code to both showcase our work and to work together with others. If you could turn this into a Dribbble + Github I think that would be interesting.

andrewheins 6 days ago 1 reply      
I'm trying to come up with something more interesting to say than "Wow". I've wished I had this a few times.

I think the only thing that you lose here is access to an actual "diff", but visually, you get most of it.

Grats on a fantastic achievement.

PStamatiou 6 days ago 2 replies      
Nice to see others in this space. Kelly Sutton et al run the slick http://layervault.com which comes to mind. "Simple version control for designers"
daralthus 6 days ago 0 replies      
Oh cool, just last week got the same intent to do this, after someone mentioned layervault.com in the comments.

Version controlling for design is great but if you want to differentiate from layervault or pixelnovel.com then you should try and see if designers would collaborate in an opensource fashion, ala github. (I am really curious about this, as that's the real reason people use github AFAICT)
So I would go and add some social aspect for it, make it a bit more like dribbble, behance, flickr (portfolios, inspiration) as these are the sites that designers use.
Also adding stockphoto/illustration selling and job board features would probably make for the best designer platform ever. (not mentioning the business options...)

And after this feature suggesting madness, I would like to point out that if you want to keep this simple and stupid, then still please get a designer and work on the ux.

Keep up the good work!

jskopek 6 days ago 1 reply      
Clever of them to show a custom welcome message for Hacker News visitors. I love how it jumps you right into a demo app with no login or registration steps.

The functionality and usefulness of this service is fantastic, but I wonder how hard it would be for github itself to compete; they've shown that they can do simpler binary versioning and comparison with PNG/JPEG images, so all they'd have to do is add support for previewing PSD files as well. Whether that's a simple thing to support is not something I'm qualified to answer though :)

harisenbon 6 days ago 0 replies      
Very cool. Is especially like the automatic syncing. Getting designers to actually upload things to a server, or got forbid have to type in commands to git is just not going to happen.

I did find a small bug:
in the X/Y view, your scrollbars are draggable, so if you scroll the image, then release the mouse button the view panel gets stuck to your mouse.
(Chrome win7)

collint 6 days ago 1 reply      
Why do I buy this instead of Layer Vault?
Osmose 6 days ago 1 reply      
How do I fork a design? Can I make another layer and merge it into the PS file so that others can tweak my changes?

Just ideas that popped into my head looking at this. It's pretty awesome, great job!

ThomPete 5 days ago 0 replies      
Love it but I fear it's not the right solution and I even don't think it's the right problem it's trying to solve.

When a designer is working in photoshop they are not actually part of the development process yet. They are still in design mode, they are for the lack of a better word sketching.

Not until they start to actually output assets for developers do the github concept start to make sense.

Designers often have different versions of the same design inside the document in the layers and groups and smart objects.

They will for instance have a couple of version of a header or some styling on their elements, perhaps different layout for main content.

So for this to be useful it would need to create a kind of master psd that save the state of which layers and groups are turned off and on.

This way you can sketch away and not have to worry about creating a billion different versions inside the documents that just make them bigger.

But that is a different problem.

OoTheNigerian 6 days ago 1 reply      
Nice idea.

Try and chose a 2 syllable or a less tongue twisting name.

georgemcbay 6 days ago 0 replies      
Cool idea but I suspect by the end of this year anyone who seriously uses Photoshop will be using Adobe's Creative Cloud solution to solve the same problems.

Granted, Creative Cloud isn't fully released yet, but it will be soon and it is basically this plus Dropbox plus full native integration into all the Adobe apps.

networkjester 4 days ago 0 replies      
Looks cool; nice job!

Some notes:

When playing around with the |X|Y| functionality

BUG - Dragging the slider on a compare window beyond the container and releasing the mouse causes the window to follow your mouse around. Your drag and drop "sorting" functionality seems to kick in.

BUG 2 - Adding multiple versions to the compare frame works well, however it was initially hard to tell how to remove a given frame. Some ability from the frame would be nice, but that wasn't the bug. When you add multiple versions to compare you see them highlighted below. Then when you go to another view (i.e. the single revision view) and back to the |X|Y| compare view the frames you were last comparing are still there, however they are no longer highlighted.

Again, this looks great, just keep going! :)

marcamillion 6 days ago 0 replies      
So...as an indirect competitor...let me just say...well done. This is pretty awesome!

This is something I have thought about doing for a while, but to be honest, I never had the technical chops to do it at the time.

Sure, parts of this still needs polishing - got some quirky JS issues with the comparison of the two images side by side in Chrome on Windows.

But you guys have done and awesome, awesome job!

Edit: Btw, this is the quirky issue I encountered - http://i.imgur.com/MOY9c.png To replicate this, in Chrome on Windows 7, click on the 'X Y' side by side icon and then just try scrolling the images up and down, or side to side, and then moving the mouse. It moves the entire DOM element.

Congrats on the launch.

chrislloyd 6 days ago 0 replies      
This is a great idea! Often when doing work for clients I've wanted to show them something more than just the finished PSD. They've hit upon the idea that with design the through process is often as important as the final result. Pixelapse will definitely will help me extract more value from my time.
dryicerx 5 days ago 0 replies      
A few months ago I made http://artevolve.com pretty much to mimic github for graphics/art... but doesn't seem like designers or artsy folks were that interested in it.
XLcommerce 6 days ago 0 replies      
Great work. I can really see a use for this kind of thing for designers.

My favorite is the side by side view. Speaking of which there is a bug in latest chrome on win where the side by side panels get dragged when using the scrollbar.

apsurd 6 days ago 3 replies      
I've always thought, in a working environment, it would be best for everyone involved if designers got up to speed with git. I know git is hard, and I know designers are not necessarily command-line junkies.

Rather, my point is simply: it's worth it.

So for me, downloading a client that syncs, while useful, is not the _answer_.

The answer is for designers to embrace git and also for developers to make git easier to use. Whether that requires a better UI, better documentation, better tutorials, etc.

Git has the power to do all this and more, there just needs to be an intuitive wrapper for the workflow maybe?

softbuilder 6 days ago 0 replies      
If you like this you might also like my friends at http://revisu.com. Can't quite tell where the features overlap or diverge. Would love to know more.

Congrats on a sharp looking launch, Pixelapse!

peteforde 6 days ago 0 replies      
Instant utility, nice UI, good workflow that came from people scratching their own itch.

Fuck it, I'd fund this.

freshfey 6 days ago 0 replies      
I think you might be onto something here. However I'd focus heavily on the designers who don't know github. Because hackers 'round here are going to tell you to just use github, because it make so much sense for them.
josscrowcroft 5 days ago 0 replies      
Anybody else see the resemblance between the logo and that of http://www.premiumpixels.com?
michaelmartin 6 days ago 1 reply      
Really liking this. I'd be curious to hear how you've approached the storage problem?

Are the full files for each revision saved? Or have you developed a way to store only the differences?

With large PSD files, the former could get expensive quickly, which makes me wonder the same thing as ARolek asked, what will pricing be based on?

egypturnash 5 days ago 1 reply      
I would be interested in fooling with this, but I'm an Illustrator addict! Photoshop used to be basically what hosted my scanner drivers, and now that I do most of my work direct in AI, and TWAIN seems to be a dead standard, I don't even use it for that.
ranvir 6 days ago 0 replies      
For some reason we have a real problem hanging on to previous design iterations and we often want to go back and try incorporating things from previous iterations. This is going to be really cool, especially for distributed teams.
Sandman 6 days ago 0 replies      
Just a word of warning - the site's broken when viewed in FF 9.0.1 on Linux: http://i.imgur.com/Y24CX.png
ejreynolds 6 days ago 0 replies      
I'm still cracking up: They make you sign your name in Comic Sans on the invite page. :-)

Also, really neat concept overall. Can't wait to try it!

j_c 5 days ago 1 reply      
One problem is that your average designer will not know what versioning is, never mind have an opinion as to whether it'd be useful or not.

I see this as a case of applying a successful model from one field to another without consideration around whether this is actually a problem in the first place.

AtTheLast 5 days ago 0 replies      
I store all my designs in dropbox. This has worked pretty well. If I need a design I just go into dropbox and grab it and make changes to it. It works, but I'm guessing their is a better way. And when I need feedback I use a combination of droplr and instant messaging. Their is definitely room for innovation.
ttruong 6 days ago 0 replies      
Gorgeous app and well done! I really like how all the images scroll together when you are comparing multiple images.
swatthatfly 6 days ago 0 replies      
You should allow this technology to be deployed on a local server. Many companies consider their design to be confidential information, and they do not allow storage on an external server, especially in U.S. where their data can be subject to warrantless interception (Patriot Act and all).
dsawler 6 days ago 1 reply      
Is this only for Photoshop? What about Fireworks or Illustrator?

When I click for an invitation, I get an Application Error (An error occurred in the application and your page could not be served. Please try again in a few moments.

If you are the application owner, check your logs for details.)

akazackfriedman 6 days ago 0 replies      
For me the biggest thing about Github is the ability to learn for other programmers. I am a CS grad student though so I recognize that for others collaboration is the secret sauce. Provided this solved my problem of trying to learn something about design, I'd use it frequently.
ARolek 6 days ago 1 reply      
Really cool idea. We could use this everyday. Have you thought about what the price is going to be? Will it be per doc, or per GB of storage used?
stchangg 6 days ago 1 reply      
Awesome! But.. why comic sans in the signup?
_feda_ 6 days ago 0 replies      
Very slick (which is important, because designers by nature have high standards). Quite a lot of potential I think.
miles_matthias 6 days ago 0 replies      
How is this helpful? On projects I've worked on, I've been able to teach the designers how to use github for Mac and they picked it up really easily and felt good learning something programming-ish.
_feda_ 6 days ago 1 reply      
Is it just me or is the server very slow? I guess it's getting hammered to death right now.
jhsi 6 days ago 0 replies      
I went into the demo expecting more of reapplication of git workflow (with some sort of staging area equivalent) for design, but after playing around with the demo it's clear the combination of auto-saving and milestones is both simpler and more elegant. Amazing work guys!
jansen 6 days ago 0 replies      
Have been in private Beta and I love it! Keep up the great work!
acerimmer 6 days ago 0 replies      
What technologies do you use on client side?
evanm 6 days ago 0 replies      
This is fantastic -- looks great, guys.
nodesocket 6 days ago 0 replies      
Great work guys.
webbruce 6 days ago 0 replies      
ColdAsIce 5 days ago 0 replies      
The web site repels me as a GNU/Linux user. It seems to be designed only for people who own iProducts and own a license to adobe photoshop.
Iran Shuts Down Major Websites and Https Protocol
388 points by Sara70  5 days ago   146 comments top 37
peterwwillis 5 days ago 3 replies      
I haven't checked yet whether they're using layer 7 filtering or just blocking ports, but assuming it was a lame combination of the two, you can try tunneling through HTTP on port 80.

Download proxytunnel and follow this guide to set up Apache (or whatever server you prefer) to http proxy ssh connections to port 22: http://dag.wieers.com/howto/ssh-http-tunneling/

Then run ssh with proxytunnel as the ProxyCommand (as shown in the guide). It will make a plaintext HTTP connection, request a CONNECT yoursite.com:22, and if they aren't inspecting "too deep" you should be able to get an ssh connection.

If that doesn't work there's always icmp tunneling (hans), dns tunneling (iodine), and various other options. See if you can make a udp connection over port 53 to a remote host and transmit non-DNS packets; if they aren't intercepting DNS traffic, just make an openvpn udp connection over port 53 for your tunnel.

I actually have a whole paper on circumventing captive portals and firewalls and a crappy tool to probe them if anyone wants it.

csomar 5 days ago 1 reply      
I'm grateful for the Tunisian revolution. Internet Censorship (including ports disable) is at 0. The court justice has ordered to censor a few pages (because of some reasons) but the Global Internet provider in the country did not accept. The head of this agency is also working that the law prohibits any kind of censorship for any reasons. He was responsible for censoring content in the Ben Ali era, but he now thinks that it just doesn't make sense.

The problem is, with the people (in the court or the gov.) who don't understand how the Internet works.

charlieok 5 days ago 1 reply      
TOR has a blog post up about exactly what they've been able to determine about what Iran is doing:


Regarding HTTPS, it appears they detect and disrupt the SSL handshake.

For those who can't access TOR's site, it may be useful to quote their post in full:

“Over the past two days we've been hearing from, and working with, a number of Iranians having difficulty using Tor from inside Iran. It seems the Iranian government has ramped up censorship in three ways: deep packet inspection (dpi) of SSL traffic, selective blocking of IP Address and TCP port combinations, and some keyword filtering. For instance, they have partially blocked access to Tor's website, torproject.org, via IP address (such as and port 443 (which is the HTTPS port). The third level of blocking is by keywords, such as searching for the word 'tor' via regular, non-encrypted search engine websites.

The blocks on SSL are not complete and not nationwide. Where blocking is in place, initial investigations show they are identifying the beginning of the SSL handshake and simply interrupting the handshake. We continue to research and investigate solutions with the assumption that SSL will eventually be blocked nationwide inside Iran. Our goal is to defeat their dpi signatures and allow tor to work by default.

The Iran Media Program has posted their thoughts on what is happening from a journalist's perspective.

So far, it seems the majority of Tor users are not affected by these blocks. Iran is still the #2 country based on direct usage, https://metrics.torproject.org/users.html?graph=direct-users.... This number is on the decline, however.

More details to follow as we have them.”

ya3r 5 days ago 2 replies      
I live in Iran.

The fact about the shut down is correct. I would also add that secure connection to servers inside Iran is possible. I've tried some, and they work. But trying to connect to services like Github and PivotalTracker, which we relay on in our starup, results in no response.

Also I will note that the ssh protocol is the same. I can ssh into my university machine (inside Iran) but I can't access my rackspace VPS with ssh for example.

One thing to add is that `Sara70` creator of this thread, mentions some non-related reason for this (The reason for this horrible shutdown is that the Iranian regime celebrates 1979 Islamic revolution tomorrow.) which is wrong.

Here nobody officially said anything about this. But as this shutdown is getting more attention in the media, I suspect this issue to get resolved soon.

soult 5 days ago 2 replies      
FYI, Jacob Applebaum just asked[1] people to set up TOR bridges using a new protocol called obfsproxy[2].

1: https://twitter.com/#!/ioerror/status/167922546807812096
2: https://www.torproject.org/projects/obfsproxy-instructions.h...

bwarp 5 days ago 3 replies      
This is why good old analogue amateur or personal radio should still be a powerful force for people who are rebelling against their governments and corporate overlords.

The Internet is easy to kill, as are digital cell-based radio networks. Proper amateur radio is not.

Jamming is not that effective over a large area before anyone suggests that.

jcr 5 days ago 3 replies      
As it so happens, I've spent the last day trying to break in through the
technical restrictions of a regime from the outside. There is a country
with a very oppressive government that prevents outsiders from observing
them. It's a tiny island monarchy that doesn't matter much in the grand
scheme of things, but you may have heard of them; it's called the
"United Kingdom" or "Great Britain" or whatever.

If you don't live within their control, they don't want you to see the
propaganda they put out on their "British Broadcasting Corporation"
(BBC) television stations and web site. Needless to say, there are ways
around their entirely pointless technical restrictions.

(Note_To_Self: As somewhat dyslectic person, I'll never forgive patio11
for nick-naming his product "BCC").

I would like to say that by-passing government sanctioned Internet
restrictions is simple and easy, but it's not true. Doing it safely can
be impossible at times, and considering the rather severe punishments
for getting caught (i.e. death), it may not be the smartest choice you
could make. If you want to take your chances, there are often
technically possible ways to by-pass the restrictions. It's not easy,
and it may not be entirely safe, but usually, it is technically

There are free solutions out there like Tor ("The Onion Router"
https://www.torproject.org/), but they mostly suck. If you don't believe
me, then just try using them. The other problem with the free solutions
is a lot of government filtering knows about them and adjusts
accordingly (when possible). There is also a lot of monitoring an
profiling done on the traffic on the free solutions like Tor since the
traffic is interesting.

If you need a solution that sucks less, you'll need to pay for it. As
much as many would like to believe otherwise, bandwidth and servers are
not free, so when a service is unable to support itself through
advertising, then you'll need to pay for it. The commercial VPN vendors
are more reliable and have far better security, privacy and performance
than the free alternatives.

I've been a paying customer of https://www.tunnelr.com for over a year,
and really enjoy their service. I'm on friendly terms through email with
the two founders, Daniel and Jared, so I'm probably guilty of some sock
puppetry or fanboyism. They also run the "devio.us" free shell provider
service which is very impressive.

The thing to realize is the people responsible for controlling the
network you are on and enforcing the restrictions probably have a way
out of their own. It could be that their "day job" gives them access to
the "other" side of their censorship filters, or possibly they've left a
few holes here and there that they can use to by-pass their own
filtering system. If the latter, it's probably done with a VPN of some

In the case of a good commercial service like tunnelr.com, you don't
need to worry too much about figuring out where things were left open.

Typically, if UDP traffic is found going to port 53, most people expect
it to be DNS lookups from client systems. Again typically, if TCP
traffic is going to port 53, most people expect it to be DNS lookups
done by DNS servers. Of course, if you see TCP traffic going to port 80,
you'd expect it to be going to a web server...

The common expectations are not "wrong" in most situations, but these
expectations can be wrong if things are configured differently.

In the case of good VPN services, things are configured differently!

For example, I can use TCP and connect to port 80 but establish a SSH
connection, or use UDP and connect to port 53 but establish an OpenVPN

This kind of trickery will not fool filters with the capacity to do
"Deep Packet Inspection" ("DPI" e.g. protocol profiling), but the vast
majority of filtering tech out there can't do deep packet inspection all
of the time. It requires too much computation to be effective on fully
saturated links, so it slows things down terribly. There are a few
products out there that can do DPI at "wire-line" speeds, but they are
hellishly expensive and fairly difficult to manage properly.

BTW, if you go the SSH route, check out dsocks by Dug Song. It runs on
most UNIX systems, on MacOS, and on MS-Windows through cygwin.

EDIT: I totally forgot about countless the payment options you have
available in Iran (i.e. none). If that's an issue for you, contact me
privately (email address is in my HN profile).

pooriaazimi 5 days ago 0 replies      
Almost all websites that worth visiting are either blocked by Iranian government or by US export laws (SourceForge, Google Code, ...) so people rely heavily on VPNs and proxies. One of the most used proxies is YourFreedom[1] that offers a special service for Iranian people (a free 512 kbps socks proxy). It sounds great, but unfortunately they have been compromised. About 10 months ago, I contacted them (they didn't respond, which makes me a little worried).

It looks like Iranian government uses a transparent proxy, so all connections to ems01.your-freedom.de (ems01 through ems24) first redirect to iran.ir and then go to YF's servers!

(YF is blocked right now, so I can't re-do this test right now. These images are from my email to YF 10 months ago)



A page accessed without a VPN/proxy:

The same page, but with a VPN:

In the third image, the response is from iran.ir's transparent proxy, not YF servers...

[1] your-freedom.de

humanfromearth 5 days ago 2 replies      
They control the physical network. As long as they have that control they will be able to do what they want. The only way to deal with these fuckers (not just Iran) is to start using collectively Ipsec or something similar. All SSL movement is just the beginning. I'm sure every big service will try to encrypt it's traffic more and more to protect itself from governments that try to criminalize their users.

Forcing countries like China, Iran and US to go into dark ages if they don't use the new all encrypted networks.

It's a shame that we are so paranoid as a species that we need to do that, but I don't see any other way.

I know this is extreme, but I don't want to see the freedom I enjoy right now taken away by these obsolete power hungry entities.

lorddfg 5 days ago 0 replies      
That sucks, in Pakistan they're banning websites left and right, most of the websites can be accessed with Proxy but I have to use VPN just to upload files now. It's not only the porn websites they're banning, websites like pastebin etc. are getting axed as well.

In short, if any website goes against their stupid and yes effed up ideals they will ban it. The ISP's can't do anything because they're forced to comply.

Forget ACTA or SOPA, these idiots just do whatever they wish.

forcer 5 days ago 2 replies      
I am really passionate about this problem. We are currently working on the VPN solution for consumers and I could dedicate some of our servers for this to develop a VPN that would work when governments shut down encrypted connections. where should we start? it it even feasible to do a secured tunnel hidden in normal traffic undetected?
sepent 5 days ago 2 replies      
Moreover, SSH has stopped working, too. But, finally I found a way to circumvent it. A simple twist in the client side, could simply bypass the filtering.

I wrote a simple script to do this, and I would like to share it with all of my countrymen:


To use it, just replace ssh command with issh like this:

issh user@hostname [other-ssh-options]

mrud 5 days ago 0 replies      
If you can't believe that governments are using deep packet inspection and block access to popular sites have a look at the 28C3 talk How governments have tried to block Tor
- http://www.youtube.com/watch?v=DX46Qv_b7F4 it covers different governments and how they tried to block access to the TOR network
tetha 5 days ago 0 replies      
So its time to grab our steganography handbooks and build a cute little animal picture channel patch for open ssh.
sycren 5 days ago 1 reply      
Are there any solutions for web browsing like Onlive (http://www.onlive.co.uk/) does for video gaming? It would be significantly harder for them to datamine a video stream..
dutchbrit 5 days ago 1 reply      
And here I was, about to ask HN to force SSL on the login page..
ck2 5 days ago 3 replies      
Maybe http://m.gmail.com ?

What about ssh tunneling over an alternate port?

Gosh I cannot believe governments that do this to their people.

I wonder if they are ironically using American engineered equipment and software to do the block too.

deno 5 days ago 1 reply      
Is it possible to bypass their physical network altogether? For example, is satellite Internet available/legal over Iran?
teopeurt 5 days ago 0 replies      
Realise ALL encryption handshake are blocked but Maybe this might work.


You do need a server on the 'outside' though. (oh bugger, github uses https)

zckevin 5 days ago 1 reply      
We Chinese use VPN or SSH port forwarding.
wyck 5 days ago 0 replies      
Most posts here are about tunneling, which is akin to whacking a mole and not a solution.

The only solution is in space, or a mesh net run by citizens, http://www.reddit.com/r/darknetplan/

rorrr 5 days ago 0 replies      
So no more online banking, no more credit cards? Whatever businesses they have are fucked, when it comes to secure communication.
ilaksh 5 days ago 0 replies      
The invasion of Iran has been planned for many years. The occupation of the two countries immediately to the west and east of Iran were preliminary steps in the same long term military campaign.

I assume that this level of internet censorship will go away because it is playing into the hands of Western imperial propagandists who are working hard to "justify" or motivate the next major invasion.

jbrodkin 2 days ago 0 replies      
Any update from Iranian users on the current situation? Are the blockages still in force? I covered this issue for Ars Technica on Friday: http://arst.ch/sg1 and would like to be able to provide an update. Thanks.
corford 5 days ago 0 replies      
Would running through a socat tunnel (http://freecode.com/projects/socat) defeat the DPI?

If yes, you could setup a tunnel on port 80 and then run openvpn through it.

I did this for a friend in China and it worked.

saizai 5 days ago 0 replies      
I've tested this as of today (2/10) and have technical details of exactly what filtering is going on, and what isn't.

tl;dr: Iran gov't is the actor, not ISPs; filtering most but not all SSL in a couple different ways; specific targeting of privacy tools & Google.

See here (will be updating it soon w/ more): https://plus.google.com/u/0/103112149634414554669/posts/PT3e...

cicloid 5 days ago 1 reply      
Is Tor still working?
jetpackjello 5 days ago 0 replies      
Hello! You can use encrypted Secure SMS for Android. The app is free, and available at:

The instruction manual is at:

the app needs no licensing, so can be passed from phone to phone via SD card.
Good Luck!

siculars 5 days ago 0 replies      
Shutting down the borders in advance of military action. They don't want sensitive data getting out.
rd108 5 days ago 4 replies      
Does anyone know how they "shut down https"?
antihero 5 days ago 0 replies      
Can you get a virtual server with SSH running on port 80?
l0nk 5 days ago 0 replies      

Just let you know that I used that when I'm in "not-really-freedom-friendly-country" =)


Slow but works =)

bbrizzi 5 days ago 0 replies      
Pure speculation here, but would it be possible to use some kind of exotic Content-encoding HTTP header to avoid the DPI checks?

Of course it would also have to be implemented on the server-side but that's another problem.

alkasir 5 days ago 1 reply      
Do SOCKS proxies work at all? One can test if they work. Xroxy.org is a good place to start.
Email me at admin(at)alkasir.com to send you free socks proxy servers for testing.
i_love_rabbits 5 days ago 1 reply      
Would it be possible to DDoS the deep-packet-inspecting routers with fake SSL handshake requests, or some partial part of it? Sort of like a TCP-SYN attack at the SSL level, and force them to give up DPI?

In other words, if we know that they are cutting off the handshake at the ServerKeyExchange phase, for example, couldn't we generate large amount fake SSL traffic that stops one step before that, cause the router to hang?

chrismt 5 days ago 0 replies      
All the companies who provide censorship knows hows to Iran should be banned for ever.

To download Hotspot Shield, TOR or Ultrasurft

Visit http://www.unblocker.co.nr or http://www.proxysoftwares.co.nr

jacklei 5 days ago 0 replies      
aaawwwww mannn... :(
Reddit takes a new direction b-list.org
387 points by tswicegood  2 days ago   250 comments top 23
jasonkester 2 days ago  replies      
People tend to think of online communities as democracies where the freedoms they're accustomed to from their normal lives apply.

So when a post gets deleted by a moderator, people tend to think of it as a freedom of speech issue. There's a whole constitution out there specifically defending anybody's right to create a pro-Nazi subreddit, and to otherwise post anything they please on the site so long as it's not illegal, right?

Not really.

Not at all, in fact. Reddit is not the United States. It's Reddit. Online communities are not democracies any more than your back garden is a democracy. You pull weeds, plant seeds, and otherwise encourage the plants in your garden to comport themselves in a manner that ends up with a pleasing result. It's your garden, so you have the absolute right to pull weeds. The weeds get no say.

Reddit seems to have forgotten this for a while, and as a result they started sliding until they became, well, Reddit. The community we're currently discussing this in, on the other hand, has been a lot more conscientious in cultivating the type of garden it would like to see. And I think we can all say the result is a lot more pleasant than a less tended place such as Reddit or 4chan.

Jun8 2 days ago 3 replies      
I can't believe the narrow-minded approach a lot of comments here suggest. Most of the people seem to subscribe to the argument, which in simplified form says, (1) the subreddits were full of child pornography (2) the people who frequent these were "pedos" and therefore (3) it's a good thing that these got axed.

The terms CP and pedophilia are being thrown around without much thinking, the same way the general public thinks all who are on torrent sites are pirates and "hackers are baad and steal your CC numbers". This sort of blunt scare mongering demagogy is commonly used to create support from the masses, I am amazed that the HN crowd is also susceptible to it.

Here are the facts as I believe them, please point out the ones you think are wrong:

1) Some of these subreddits may have contained CP, the illegal ones were being actively removed by admins.

2) Calling pictures of 16-year-olds in bikinis CP is not very useful and dilutes the term.

3) What is legal and morally right usually does not overlap 100%. Law may say one thing about CP and people may feel another thing. This is OK. Also different cultures, of course, have different attitudes.

4) In light of (3), to me there's "definitely bad CP" and "tolerable CP". The moral distinction is not clear cut and the law does not differentiate these. The situation is similar to the 55 mph speed limit, people break it everyday (avg speed on I-90 is more like 75mph) but if you do 85 the police will get you. So there's a tolerable zone and to me (2) falls in that category.

5) One has to be very careful with these outcries because they have the effect of ratcheting the law machine ever more tightly. Remember, no politician will put relaxation of sex offense laws on their ticket.

But, please THINK A LITTLE AND RESEARCH before you pick up the pitchfork, e.g. read this (http://www.economist.com/node/14164614).

ADDENDUM: For (2), also consider the widespread use of young girls in advertising and movies, e.g. the Vanity Fair topless photoshoot of Miley Cyrus who was 15 at the time (http://en.wikipedia.org/wiki/Miley_Cyrus#Controversies). This is just one that came to mind instantly, many more examples can easily be given.

pilif 2 days ago 4 replies      
While I agree that the world is better off without forums where people can post their child porn or similar ilk, this policy change in reddit shows that there's in inherent issue with centralized platforms.

Back when there was usenet, everybody could post what ever they wanted (some news servers might not have carried the group, but there was no policing the source).

Same with blogs: You wanted to post content the masses dislike? No problem. But you want to post that same content to a centralized platform like Twitter, Facebook or any of Google's properties, now the masses (and/or governments) dictate the content you are allowed to post.

To really make use of the internet's capability of providing an incredible freedom of content you can create and publish, you cannot use a centralized platform.

While sites like reddit or facebook might make it easier for other people to find your crap^Wcontent, they also make it infinitely easier to have it removed again.

jballanc 2 days ago 0 replies      
There is a problem with online communities. Let's call it the problem of "false association". Humans have been forming communities for millennia. Inevitably, in these communities, there are bad apples. However, if there is a child molester that lives in my town, that fact does not (on its own) reflect poorly on me. Even if that molester was my next door neighbor, there may be a bit more suspicion ("how could you not know that was going on next door?"), but I am confident that 9 times out of 10 I would come away with my reputation unblemished.

Of course, before the internet, communities were a more-or-less involuntary phenomenon. They were defined by geography, history, a common resource, or a common industry. Contrast that to online communities that are largely viewed as self-directed, voluntary organizations. This is the view, I think, that will eventually have to change.

This view is poisonous for two reasons. First, as we see here, if anyone, anywhere in an online community (no matter how large) does something offensive, objectionable, or illegal, the knee-jerk reaction of society today is to allow that bad apple to spoil the bunch. Second, this makes it very difficult to form heterogeneous communities online. If I associate with people randomly online, I am a Google search away from being associated with a potential thief/pervert/whatever. The end result is that online communities become insular, or they can only function well under a banner of anonymity, but anonymity has its own problems.

Reddit, it seems to me, struck a useful middle ground: partial anonymity with history (I can create an identity that does not lead back to my real life identity, but can still build up a reputation). Unfortunately, Reddit is still a business. It seems to me that something like Reddit, but based on a distributed model, is what we need.

Let's call it...usenet

alecco 2 days ago  replies      
Reddit is changing. It's currently in a renewed and stronger Eternal September. Bastion subreddits like /r/AskScience and /r/Truereddit are reduced to junk and fads. The hope for the group of moderated subreddits (Republic of Reddit) didn't really take off, it's just a handful of submitters.

The top voted comments on threads about censorship are mostly 1 to 3 months old users. And now reddit (had to) surrender to a decadent SOPA-supporting forum and a bunch of trolls from /r/ShitRedditSays (wich starts to look like a *chan long troll instead of a bunch of ultra-feminists).

Sure, a lot of questionable/creepy subreddits shouldn't be there. But where's the line? And who draws it? Also, isn't this an ongoing process? Those subreddits can reopen in minutes with more subtle names. The censorship whack-a-mole is pointless.

It's weird how reddit was a bastion for resisting SOPA/ACTA but fear mongering in US can take over a site. It seems that's the real frontier and we are losing. Next up /r/trees and /r/atheism.

Like so many times before it's time to move on. I wish the best to the owners/admins, they were cornered and probably had a tough choice. And I sincerely hope the new users enjoy this new reddit.

evmar 2 days ago 0 replies      
The comment about "everything that's happened, has also already happened on LiveJournal" really rings true for me. Recent instance: the breast-feeding protesters recently descended on Facebook, which is mostly amusing to me in that they had waited so long. It would be interesting to construct a "here are the trials any internet community is likely to go through" handbook distilling these experiences.
Locke1689 2 days ago 2 replies      
I'm not against Reddit's move, but I do think they're being more than a little naive if they think it will stop here.

hueypriest (Reddit admin) says:

/r/trees isn't in remotely the same legal area as CP stuff. Not even close. They'll ban /r/trees when they pry it out of our cold dead hands.

And yet, facilitating a drug transaction is almost definitely illegal. Posting torrent links is at least legally dangerous. Sure, these things haven't become problems yet, but neither were the other things a couple years ago.

What the Reddit admins are saying right now is that anything goes, as long as it doesn't represent a plausible legal threat that can be waged against them. This is fine. The problem is that Reddit doesn't know that they're saying this. They think it's about CP, but it's not, it's about legal threat.

josefresco 2 days ago 4 replies      
What about utilizing the community to police this undesirable content? I'm sure that opens up other exploits but if the community wants to stay healthy, it has to take responsibility for itself and not just rely on the admins to come up with a magic algorithm that will solve the problem.
TheSOB88 2 days ago 2 replies      
It's interesting, I think, how much sheer emotion there is behind these child protection issues. Is there anything more emotionally provocative than the thought of harm to your children? Your own flesh and blood, who you've raised from before they could crawl. The amount of emotional and physical pain you've gone through (and willingly continue to go through) for your children far surpasses any other possible source.

Of course, people do overreact sometimes, but I think this is our instinct for a very good reason.

trb 2 days ago 1 reply      
Policing a community is where humans excel and policies/computers fail.

I ran a community once, with around 30k active users. Definitely not big, but we faced the same problems. Our solution was simple, aside from adhering to the law: "Mods delete what looks icky".

We felt that automated systems would always fail (users would use "4" instead of "a"), and strict policies always led to debate about whether something was allowed or not.

Instead we tried to recruit mods that knew the community, the direction it was heading and were able to keep a level head. Sure, someone went overboard once in a while and deleted o.k. stuff, but we'd just remove their mod privileges and reinstate what they deleted (thinks were removed from the database 14 days after they were marked as "deleted").

We were never accused of harboring pedophiles, or going overboard with removal. Those that complained about free-speech were always radical political groups well outside of "acceptable" for most communities.

The key is to find moderators in line with the community, in a benevolent dictator way. No idea if reddit could find enough of those, but it worked well for us and should scale with community size, as reddit has a larger pool to recruit from.

sien 2 days ago 0 replies      
It's surprising how people have these discussions and don't discuss Metafilter - the discussion site that works.

What has set Metafilter apart from slashdot, K5, Digg and Reddit was that after the initial burst of building a good community it became $5 to join.

That keeps out the morons and pays for moderators to get rid of the asshats.

If HN wants to keep up the quality before the hordes arrive it'd be a good move here too or it will be a matter of time before the idiots kill the place.

starfox 2 days ago 2 replies      
Doesn't every website that gets used by the unwashed masses eventually have to deal with this problem? How does facebook or youtube deal with it? How did AOL deal with it?

Is the issue just that Reddit is run by a smaller team than these larger companies?

kooshball 2 days ago 1 reply      
My biggest concern over all this is that the policy change came so quickly after the SA thread (similar timeframe as the Anderson Cooper clip). Even though startups and usually praised for moving quickly, I agree complete with the OP that this can be a major directional change (positive or negative) for Reddit overall. This kind of stuff should be thought over long and hard, rather than come down from their parent company. Reactionary policies that sprouts from avoiding bad PR will be good for the short term, I just hope they thought it all out what they will do in the long term.
sjs382 2 days ago 1 reply      
Every time I see k5 get mentioned, I get all nostalgic and think there will never be a community as eclectic as k5 ever again...
doki_pen 1 day ago 0 replies      
Reddit is open source. If anyone thinks that this will ruin them then step up to the plate and compete on "freedom of speech"
rseymour 2 days ago 0 replies      
"I originally cut my teeth on sites and services that, frankly, make 4chan and reddit (today's all-too-frequent bogeymen) look like a knitting circle."

WUT NET WUZ THIS GUY ON? K5/adequacy/early slashdot/b3ta/whatever... nothing like the internet of today. the volume of users alone leads to emergent (gross) behavior that before was drowned out in an invisible minority. USENET, IRC, same thing. You could find shady things if you looked for them, but no one (I knew of) actively did. Occasionally gross stuff would pop up in a listing of newsgroups, but you just didn't click.

No one envies reddit, but they should've changed their policy earlier. Better late than never.

wavephorm 2 days ago 2 replies      
Reddit had the biggest hissy fit of all about how child porn laws like SOPA were going to go too far and ruin the internet. And here they go banning anything involving a bathing suit.

The hypocricy is strong in this one.

erickhill 2 days ago 0 replies      
I think playing the 'endless game of whack-a-mole' really is their only option in the short term. Yes, it can get expensive. But if they want to continue on their current insane traffic trajectory and gain a wider audience, they need to be on top of the human moderation process.

This traffic report isn't accurate, but the trend is right (from what I've heard): http://siteanalytics.compete.com/reddit.com/

DannoHung 2 days ago 1 reply      
Y'know, it's one thing to be against laws that are ostensibly made in favor of prosecuting child pornography because they can be abused to censor things that are politically unpopular... it's a whole other bucket of beans to be against removing stuff that's basically child pornography because you think something that's politically unpopular might be removed.
dholowiski 2 days ago 0 replies      
It's a business decision, plain and simple. Get over it.
Mordor 2 days ago 3 replies      
It's simple, shutdown anything criminal and keep the rest open.
throwawaymar2 2 days ago 6 replies      
I confused about why he thinks it ironic that Nabakov is banned... I mean, it got grandfathered in when child porn laws were written, somehow, but it is certainly fiction about a paedophile, right? Anything that bans other kiddie-fiddler fiction while allowing _Lolita_ is quite obviously inconsistent, and those in favor of this inconsistency probably ought to examine why they like _Lolita_.
zotz 2 days ago 4 replies      
I've been banned from posting articles on some larger subreddits some time ago. My political, economic and historical opinions aren't welcome for some reason.

My point? Reddit began banning political opinion long before it banned kiddie porn. Reddit's admins don't give a damn about freedom of speech and opinion.

Why Python is Important for You haard.se
386 points by zzzeek  4 days ago   224 comments top 21
sdfjkl 4 days ago 5 replies      
Many years ago I've decided it was time to pick up a modern programming language. In the past I had written lots of (Turbo) Pascal code, some x86 (and more exotic) Assembler and a bit of C, but then for several years I only did shell/awk scripts and ported C software to IRIX and SINIX/RU.

So I sat down and decided to find a nice general-purpose language that I would focus on learning. I wasn't quite sure what for yet, but I decided I was going to pick one and stick with it. I didn't have the time to learn multiple languages and I didn't have a lot of time to try out different ones, so I just looked around a little bit. Some I ruled out early: C and it's relatives were just too verbose, I didn't want to spend the time writing all the error handling necessary just to read a damn file. I was doing a lot of sysadmin type work at the time and had therefore developed an intense disliking for Java. This was based on too much badly packaged Java software that even if you got it running at all was sluggish, hogging way too much memory and crashed with arcane error messages. I did like the quick & dirty way I could make things work in a shell script, so I looked mostly at scripting languages.

I looked at Perl, which was the standard scripting language at the time and had a huge library (CPAN) of modules, which was great. I hated the syntax though and found the code often unreadable and there being too many ways of doing the same thing.

I looked at Pike, which had the benefit of using a C syntax (which I already knew, so that was a plus), but it seemed not widely supported and nobody was using it (this hasn't changed since, it seems).

I don't remember what else I looked at, but then there was Python. The syntax was a revelation. Here someone had finally made the most of creating a language from scratch and spent the time thinking about syntax and how to do away with largely pointless stuff (brackets), replacing it with things that everyone did anyways (indentation). It also came with a sizeable library of stuff that did almost everything I could dream of at the time. It was love at first sight.

Recently I've spent £35 on a stainless steel mill that grinds salt when you twist it one way and pepper when you twist it the other way, just because I really love well thought out and engineered things that make stuff that's been around forever just a little bit better. That's how I feel about Python. It's not doing anything fantastically new or unique, but it's doing the stuff that others do just a little bit better.

Today I'm doing lots of web stuff, some sysadmin stuff and random hacking of various things on the side. I'm still doing almost everything in Python and whenever Javascript bitches at me about a missed semicolon I do think: "All these fantastic things you can do in a web browser these days and you couldn't figure out that this command in an entirely different line isn't part of the previous line?".

The only thing that I can't do in Python is write software for my iPhone, which bugs me a bit. But every time I try to get into Objective C I just get annoyed by the syntax and amount of cruft I have to write to do anything.

ak217 4 days ago 6 replies      
I like to call this cognitive compatibility - the amount of effort required from an uninitiated English-speaking observer to understand what a program does. Most people who are deeply familiar with a language will have a tendency to discount this effort, but really it is essential because it minimizes the translation layer that your brain has to use any time you read code.

Python encourages code which is readable in English and reasonably brief. Having readability, consistency, and the "principle of least surprise" as primary language and community principles ultimately saves developers time and makes them more efficient.

And the maturing of PyPy is incredibly exciting.

keypusher 4 days ago 4 replies      
I do love Python, but I often wish there was more rigor for some things. I currently work on a large project (>500K LOC) and have started to see it fall apart with a bigger team. Lack of enforced typing in function arguments, inability to create strict interfaces, inconsistency in standard library conventions, and package management would probably be my biggest gripes.
pranjalv123 4 days ago 9 replies      
My biggest problem with Python is that projects larger than a given size tend to become unmaintainable rather quickly.

This is in large part because of the lack of strong typing and type annotations; if you aren't the only author or can't keep the codebase in your head, it takes real effort to figure out what a function does. Even the type annotations provided in a language like Java or C++ make this task much easier, not to mention languages with real strong type systems like Haskell.

That's not to say that building large systems in Python is impossible, but it takes a lot more effort and documentation that it would in other languages.

wging 4 days ago  replies      
As a commenter on the article wrote: what about Ruby?

I say this as a happy Python user. Ruby seems very similar but I'm reminded of a pg essay on language power: looking up the power curve, you see '$Language plus a bit of weird stuff that is probably irrelevant.' So I don't trust myself.

As someone who loves Python and doesn't know any Ruby beyond a few bits of syntax and the obvious bits that are common to most languages, what am I missing?

agentgt 4 days ago 2 replies      
I have used Python for a rather long time (I think 1997 when I was 17 was when I first used it). As the the writer of the article stated Python is awesome for writing "tools" and throughout my career I have used it for such.

However I have used Python also for big projects and that is where its gets a little messy. I know I am going to get down-voted to kingdom come but I think Java is a better language for big projects mostly because of the static typing (try renaming a class in Python compared to Java).

Modern Java is for sure more verbose than Python and more complicated but the languages are extremely similar (Guido has even take some of the design consistency from Java for Python 3.0).

The reason I bring it up is Java is very often in various circles crapped on to no end. The reality its basically just more verbose Python. Not to mention Java offers an introduction to Parametric/algebraic typing (generics) and more sophisticated concurrency (futures ... yes actors are better but python really has neither).

espeed 4 days ago 3 replies      
Python doesn't have the glyph noise that brace-based languages do, and well-written Python is beautiful and easy to read.

But lately I have been having an internal debate on whether using autodoc and inline docstrings detracts from its beauty and makes it harder to read because it reduces the amount of code you can see on the screen (see Steve Yegge's rant on this http://steve-yegge.blogspot.com/2008/02/portrait-of-n00b.htm... from a few years back).

If you use Sphinx to document a method's description, params, param types, and return type, then it can easily turn a three-line method into a 12 line method, and then you can only see ~5 methods on the screen at a time.

So if the code is already readable, would it not be better to put the docstring comments in an external file to keep the code density?

Django does this, and I'm starting to think it's the right balance.

jtchang 4 days ago 3 replies      
I work with python daily. I find that when I first started I avoid a lot of the "fancy" constructs such as list comprehensions, dynamic arguments, and decorators as well as meta programming.

The great thing is the bar to being effective in the language is so low. You can pretty much pick up most python code and just read it and get a general feel for what it does. Not only that but it is much easier to read because of whitespace delimiting.

I can generally tell the quality of a python program but how nicely indented it is. If there are lots of indents like 5 or 6 levels deep I know something is wrong. For a newbie if your code is hard to understand and it is in Python you are writing it wrong.

tete 4 days ago 4 replies      
I am kinda afraid of getting down voted, but I have used Python and I feel like I get all this and more (CPAN) when using Perl. The major difference in my opinion is that Perl gives you even more freedoms, which causes you to need some self discipline, but you get stuff done even quicker that way.

It feels a bit like Python is better for programming beginners or people that tend to be too lazy sometimes and Perl is for people who want to be able to be lazier since they know what they are doing.

Also, I think Python (and most other language projects) should clone CPAN (including CPAN testers). Seriously it's a major deficit.

I also think Python is the easiest to grasp for people coming from static languages. Perl and Ruby are way harder.

pnathan 4 days ago 6 replies      
I have a list I wrote up once about Python's problems. Some of these are more exotic than others. Most of them are kludgearoundable. A couple are fixed in Python 3. Some are simply design choices that are exactly different from my mental model of the world, and due to the TOOWTDI Python world, it is frustrating to work with them.

Some Things Wrong With Python

* Immutable strings[0]

* Everything a reference[1]

* Environment copied on loop entrance (implying assignments often break when done in loops)

* Lack of braces[2]

* Lack of enums[3]

* Standard debugger pdb reminds me of the first debuggers ( used on the PDP-1 and EDSAC) in its feature list.

* Exception-oriented design, which clutters code with "try/catches" everywhere.

* Exceptions aren't just exceptions, they are also overloaded to provide signals.

* Two forms of objects (old style vs. new-style)

* Object inheritance is pointer to parent. Metaprogramming becomes an exercise in hackery.

* Objects are actually dictionaries with some pointers behind the scenes.

* Duck typing will automagically cast certain things[4]

* As an interpreted language, code that is not tested can be assumed to be syntactically correct but in error (this is a horrible problem when testing for rare error conditions)[4.5]

* When Python is fast, it's because it's calling out to C.

* Python objects are gigantic. An empty string is 40 bytes, for example. This adds up.

* Python can not meaningfully multithread, due to the global interpreter lock.

* Python suffers from many different versions being installed on different versions of Linux[5]

* Lambdas are totally broken[6]

* Large-scale module importing is a half-baked job[7]

* Python 3 routes around some these issues by using generators for everything[8].

[0] Ever try to step through a string and modify it in-memory? Well, you can't. Sorry. ;-)

[1] I.e., a function can modify something unexpectedly.

[2] Which means block commenting or commenting out tops of loops means a complete reindenting of the block, that is, editors can't do the smart thing, they don't have enough context. This is a waste of the engineer's time. Delimiters were figured out in Lisp, a very long time ago.

[3] This was figured out long ago as well.

[4] But not others. Object design is a bit funky.

[4.5] This is a general design 'con' in dynamic languages. It's partially solvable with a sufficiently smart compiler, most compilers aren't that smart.

[5] This is why serious Python programs (that don't come bundled with their own version of Python) are written to target Python 2.4, released in 2004.

[6] A 'lambda' function in Python can not have statements. Most interesting functions have statements.

[7] Python (similar to Java) relies on a very specific directory structure for a given program to be able to import libraries. This means that if you are doing anything remotely exotic with layouts (e.g., libraries are in a peer directory, not a child directory), you have to commit hackery.

[8]This avoids the fact that the end result has to be emitted in some fashion.

yason 4 days ago 0 replies      
It's important because it reminds me I should keep looking.

I should keep looking instead of turning it into my Blub. I love Python but its boundaries have been hitting me frequently for years. There probably never will be a total sweet spot between functionality, syntax, compatibility, support, and platform-crossing but I know I have to keep looking for a language that's more sophisticated yet more practical.

kevinburke 4 days ago 3 replies      
When I was at Google there was a paper titled "Please don't use Python for large programs." Can someone post that? It would be an interesting counterpoint.
Peaker 4 days ago 2 replies      
"Weirder languages (e.g: Haskell)" sounds like something a Blub programmer would say.

How is Haskell "weird"?

I've used Python for many years, but only recently have I migrated my last Python niche (simple scripts) from Python to Haskell. I've found that even there, Haskell has become more productive.

khyryk 4 days ago 3 replies      
I like Python the language, but the standard library can often annoy me as there is no unified style. thereAreMethodsLikeThis or_there_are_methods_like_this orevenworsefullylowercase. Gah.
danbmil99 4 days ago 1 reply      
Python is great in every way except one -- it isn't Javascript.

(to clarify: I'm not saying JS is a superior language. I'm just saying it's going to win out in the end because of the history of its implementation. There is a serious benefit to having one language everywhere, and JS is the only viable candidate because of the investment in client-side sandboxing and performance -- two features which turn out to matter almost as much on the server as well.)

aDemoUzer 4 days ago 0 replies      
I could not agree more. After learning the python idioms, I realized how much time I have wasted doing similar things in PHP. Python has gotten lot of things right. I don't feel cramped by a language as I have with Java.

Python idioms : http://python.net/~goodger/projects/pycon/2007/idiomatic/han...

DodgyEggplant 4 days ago 0 replies      
True. The real magic: The basic constructs are so simple, so how the output is so robust? And picking old or library code is always easy!
a_a_r_o_n 4 days ago 0 replies      
Executable whiteboard.
user0398 4 days ago 2 replies      
Mostly true 'cept for pythons built in pasta makers:


keypusher 4 days ago 0 replies      
igorgue 4 days ago 0 replies      
Haskell is not weird.
The FBI's files on Steve Jobs muckrock.com
370 points by morisy  6 days ago   168 comments top 36
johngalt 6 days ago 4 replies      
From the background check interviews:

"<Blank> concluded the interview by stating that even though he does not consider Mr. Jobs to be a friend, he (Mr. Jobs) possesses the qualities to assume a high level political position. It was <blank>'s opinion that honesty and integrity are not required qualities to hold such a position."

scott_s 6 days ago 4 replies      
Wow, back in 1991, he was being considered for a Presidential Appointment: http://www.muckrock.com/static/foia_documents/Jobs.pdf

That's what all of the documents seem to be from. To be clear, the FBI wasn't keeping tabs on Jobs because they thought he was up to no good, it was the standard background check they do when someone is being considered for a high level government position.

Now the speculation starts as to who the people were that the FBI interviewed.

corin_ 6 days ago 1 reply      
So a little more information from this document about the Presidential Appointment that was being considered:

The president was George Bush senior, and the appointment was "President's Export Council" (not Senate-confirmable) - and this was happening while he was President of NeXT.

Jobs was aware of the possibility and indeed had filled in his details on the "Questionnaire For Sensitive Positions" for it.

He stated that he had not used or dealt illegal drugs in the past five years (of interest due to his speaking in favour of LSD).

munin 6 days ago 1 reply      
"On February 25, 1991, <redacted> Security Clerk, Status and Inquiry Branch, DISCO, Columbus, Ohio, was personally contacted and she advised she located the following security clearance in their files identifiable with the appointee, STEVEN PAUL JOBS, SSAN: 549-94-3295:

Top Secret clearance dated November 3, 1988, based on a Background Investigation by the Defense Investigative Service dated August 30, 1988. This clearance terminated July 31, 1990, and the employing agency is:

San Rafael, California"

sjtgraham 6 days ago 1 reply      
I don't know how to check this myself, but are the redactions flattened, i.e. so they cannot be removed, or are they just shapes on a another layer drawn over the relevant areas, i.e. is the redacted data still recoverable by editing the pdf?

It wouldn't be the first time a "redaction" turned out to be no more than a mere obfuscation in practise.

joshaidan 6 days ago 2 replies      
My favourite snippet: "Several individuals questioned Mr. Jobs' honesty stating that Mr. Jobs will twist and distort reality in order to achieve his goals."
troymc 6 days ago 1 reply      
"He belonged to no organizations other than the New York Athletic Club however he had never been in the New York Athletic Club and knew nothing with regard to their membership policies."

Why was he a member of the New York Athletic Club? Did someone give him a membership as a gift?

(At the time, he did own an apartment at 146 Central Park West in New York City. [Edit: I didn't know that either. It was stated in the paragraph directly above the one mentioning the NY Athletic Club.])

culturestate 6 days ago 1 reply      
The most interesting thing in these documents is among the last few pages which appear to be fingerprints (presumably SJ's) lifted from a telephone receiver at SFO. I wonder why? Can't just ask the guy for his prints?

EDIT: it appears from further reading that they're related to a bomb threat involving him at SFO. They're labeled as "misc notes on extortion at Apple."

mvkel 6 days ago 1 reply      
"Several individuals questioned Mr. Jobs' honesty stating that Mr. Jobs will twist the truth and distort reality in order to achieve his goals"

If you've read the book, it's no surprise to see "distort reality" written here. Still, it's eerie (but understandable) that the FBI dives this deep.

samwillis 6 days ago 1 reply      
"Has any of the following happened to you in the last 15 years?


5 - Left a job for other reasons under unfavorable circumstances


Date: 09/85

Code: 5

Employer: Apple Computer"

wbhart 6 days ago 1 reply      
The confusing thing about this lot is the redundancy. They got at least 15 people to make statements, but it looks like multiple SA's interviewed the same people and they all said pretty much the same thing (with the exception of the one dude who thought integrity and honesty weren't prerequisites for a job in the government). Does this mean all of these people had multiple visits from different field agents? That must have been incredibly tiresome. And is there some kind of special cut'n'paste they do to end up with practically the same language in every report? Or are they just recycling the same information over and over.
jrockway 6 days ago 2 replies      
I enjoyed reading this. Sometimes I watch too many cop shows and think that I want to become a detective. Then I read reports like this, and realize that 99% of police work is producing reports like this one. You may get to interview the occasional reference, but you're probably not going to be getting into many gunfights.

I feel mislead by fictional television programs :)

rsmiller510 6 days ago 5 replies      
This is outstanding reporting requesting and staying on the request for information, and it's a fascinating look at Jobs and the government process of vetting White House appointments in 1991.

Note that they are still obsessed with the idea of anyone belonging to or contributing to the Communist Party and even checked if had relatives in foreign countries who might have been Communists (they couldn't find any).

I also particularly like the comments from people who knew him in the background check documents--not always a flattering picture, that's for sure (but we knew that).

chrishenn 6 days ago 0 replies      
Glad to see the FOIA worked in this case.

AP did a report last year showing how ineffective FOIA and similar laws are: http://hosted.ap.org/interactives/2011/foia-global/

draggnar 6 days ago 0 replies      
at one point owned a mine with friedland?

<BLANK> Described as a "former hippie" had at one time run an apple orchard in Portland, Oregon, in partnership with Steve Jobs.... Jobs was at one time part owner <redacted> of Timerland in Oregon, which included a mine.

philwelch 6 days ago 0 replies      
I suspect the "business official" in Dallas, Texas (page 127) was actually none other than NeXT investor Ross Perot.
shimon_e 6 days ago 1 reply      
Of interest, the FBI could not find his birth records.
swiecki 6 days ago 0 replies      
Pg 43- "[REDACTED] commented that, although he does not consider Mr. Jobs to be a friend at this time, he considers Mr. Jobs to be a successful individual because he can delegate tasks to individuals."

I wonder who that woz?

samwillis 6 days ago 0 replies      
Interestingly the last few pages are about a bomb threat against Steve Jobs made in 1985 at the Hilton at sf international!
chubot 6 days ago 2 replies      
Wow, interesting. A background check was initiated by the White House in 1991, since Jobs was being considered for presidential appointment?? By the elder Bush? or Clinton?

The check brought up a 1984 shareholders lawsuit against Apple.

nl 6 days ago 0 replies      
He had extensive foreign travel and had been to Japan and the Soviet Union

Highlighting travel to Japan shows how different things were in 1991.

blario 6 days ago 1 reply      
As to character, this is far more revealing than that sanctioned bio. I found the bio to be biased: the author never failed to use "genius" but as far for negative qualities, they were brushed aside.

Roughly 40 interviews in this pdf, from close associates, friends, classmates, co-workers, and industry colleagues. Not for profit; only meant to give an accurate depiction. And people seem to have been very honest also; maybe the interviewer being the FBI and probably confidentiality promised as well. I find roughly 60% of the people say he's morally and ethically questionable.

tingletech 6 days ago 3 replies      
I find it odd that the did not redact his social security number.
annon 6 days ago 2 replies      
In question 17, he lists two code 9 relatives, which means sister. I thought his only sister was Mona Simpson?
troymc 6 days ago 2 replies      
"At the time of his dismissal [from Apple Computer] he was the general manager of the Mackintosh Division of Apple..."

Did they spell "Macintosh" with a 'k' back then or did the FBI person spell it wrong?

The fruit is spelled "McIntosh".

emilepetrone 6 days ago 1 reply      
"Based on the background information furnished by Mr. Jobs, he has no close relatives residing in communist-controlled countries."
andrewpi 6 days ago 0 replies      
I can't tell, but did he leave the foreign travel section blank, or was it redacted? We know Steve definitely had spent time in India at the point.
caublestone 6 days ago 1 reply      
"2.65 GPA on a 4.0 scale" at Homestead High School . What a boss.
bluetidepro 6 days ago 1 reply      
This may be a dumb question but can you request this information on anyone? Like can I request my own info? I imagine it's blank but I'm just curious how that works...
blafro 6 days ago 0 replies      
The documents toward the end are interesting. At first I thought, "wtf they sent out field agents to dust for his fingerprints?" But a few documents later and apparently he and a couple others at Apple where victims of a bomb threat and the fingerprints where of the suspect. Haven't finished reading Isaacson's book so not sure if this was in there. Otherwise (from my cursory read) nothing else was new or unexpected.
nachteilig 6 days ago 0 replies      
This has a surprisingly (?) large number of errors for an FBI background check. They mistake his position at apple, and even how his name is spelled at several points.
nivertech 6 days ago 0 replies      
"... and has a tendency to distort reality in order to achieve his goals" ;)
julian25 6 days ago 1 reply      

There are absolutely fascinating. I wonder what "Level III - Full Field Investigation" means.

nilsbunger 6 days ago 1 reply      
Cool, now I can apply for his social security benefits!
robinduckett 6 days ago 1 reply      
Hmm, 17 pages were deleted.
ullrich 6 days ago 0 replies      
Super interesting!
Thanks for making the files publicly available.
How a big movie studio (unfairly) forced a student to give up his senior thesis reddit.com
359 points by switz  19 hours ago   88 comments top 27
dctoedt 14 hours ago 3 replies      
Some observations:

1. If the studio had filed a lawsuit, there's a very good chance that, after seeing the Asimov estate's permission, the judge would have quickly tossed the case on summary judgment --- and quite possibly awarded the student his attorneys' fees under section 505 of the Copyright Act,[1] as happened recently in several of the Righthaven copyright-troll cases.[2]

2. A copyright lawyer might have been willing, for little or no money, to explain the facts of life to the studio lawyer on behalf of the student. The student then might have been able to respond to the studio lawyer (with utmost politeness, of course), "do what you gotta do." He could then have started making his movie and waited to see what the studio did.

3. It's likely that any lawsuit by the studio would have been quickly resolved one way or another, without much in the way of legal expense:

• If the student had won quickly on summary judgment, the odds are that his lawyer would have been paid by the judge.

• If the student had found he wasn't going to win quickly on summary judgment, then he could have caved to avoid further expense. The odds are that the studio would have gone along --- and might even have been willing to pay the student's legal fees just to get rid of the matter.

4. Either way, both the student and his lawyer would have gotten at least some reputational benefit from the resulting publicity.

5. Heck, they could have proposed settling the case along the lines that Southwest Airline's CEO settled a trademark dispute years ago over the term "Just Plane Smart": Herb Kelleher arm-wrestled the other side's CEO for charity, resulting in good PR for both sides.[3]

6. All this assumes, of course, that the article accurately states all the relevant facts. Lawyers know from hard experience that this always has to be confirmed.

[1] http://www.law.cornell.edu/uscode/text/17/505

[2] http://www.copyrighttrademarkmatters.com/2011/11/01/righthav...

[3] http://en.wikipedia.org/wiki/Southwest_Airlines#.22Just_Plan...

[Edited for style]

arethuza 17 hours ago 2 replies      
Back in '97 I was the CTO of a VC funded startup. Within weeks of our funding closing a company we had been working with for about a year initiated litigation over an IP matter.

Even though it was the company, and not me personally, who was being sued that time was the most stressful time of my life - the sheer injustice of it all left a deep scar on me. However, we had a good law firm and money in the bank - our lawyers more or less told them there was no case to answer and both sides backed down (although we did have to pay our own legal costs).

It was bad enough being involved in litigation with supportive colleagues, money and good lawyers - being in a similar, actually worse, situation as a broke student would be infinitely worse.

[Edit: as to the timing of the litigation, I believe the first rule of litigation is "sue people who have money"].

edanm 17 hours ago 4 replies      
Question for any lawyers present: If a lawyer threatens to "ruin your life with litigation", etc., can't that be construed as a threat/bribe?

I would think it would be illegal to call a student, who doesn't know any better, and threaten to ruin their life, especially if the threats you're making aren't actually true.

In any case, the obvious next step in the student's situation is to contact a lawyer, and see if there's any merit to the threat. For all he knows, a lawyer would have told him that it's a totally empty threat and he shouldn't worry about it. It is naive to listen to the word of someone who is obviously opposing you.

klipt 17 hours ago 1 reply      
> He told me that I was technically in my legal right to use Isaac Asimov's material. However, if I chose to proceed, they would file multiple lawsuits totaling over 2 million dollars against me.

Hmm, if the lawyer admitted he was technically in the right, I wonder if recording that phone call could've gotten any lawsuits thrown out as frivolous.

ssp 16 hours ago 2 replies      
There are some simple things that could be done to protect against this kind of abuse:

- Loser pays the winner's costs, but capped such that the loser won't be bankrupted. This effectively means that when a big company loses, they get to pay for all of the trial, but individuals can still lose without being totally doomed.

- A judge could be allowed to grant "free trial" if he thought the case had merit and one of the parties couldn't afford the legal costs. This would mean that the state would cover the legal costs of that party no matter the outcome.

finnw 16 hours ago 1 reply      
> I responded by sending them the consent form from the Asimov estate, and explained that it was a student project, not a commercial venture worth litigating. I turned over our script, our shooting notes, our shot list, copies of our tapes and even the concept art drawings.

I think the moral of the story is: Don't give the studio more information than you have to. The consent form would have been enough.

If the studio's goal had been to take money from you, you would have been right to let them know you had no money. But it wasn't: What they wanted was to stop you releasing the film. In that situation you want to appear as professional as possible. Just sending a cover letter from a lawyer with the consent form would be a start.

tsunamifury 13 hours ago 2 replies      
Why isn't anyone mentioning the fact that if this kid (at the time) owned the rights to the I, Robot via permission he could have sued the producers of "I, Robot" for a portion of their profits.

This was a defensive lawsuit that had nothing to do with shutting down his student project -- it was to protect themselves from a party that could have potentially tied them up for years in court demanding money if he had properly lawyered up.

femto 18 hours ago 1 reply      
I presume by "One download at a time" the author is referring to the downloading of his own films? Downloading Hollywood films won't kill Hollywood, as it only spreads Hollywood's influence and makes the problem worse.

The way to kill Hollywood is to ignore it. That's got to be more terrifying to a studio than being pirated. Paul Graham had it right in his "Kill Hollywood" piece: it's not pirating that will kill Hollywood, but irrelevance. Startups, new ways to entertain people and new ways to make movies.

fakelvis 16 hours ago 2 replies      
This is an incredibly ridiculous story. This student is exactly the type of person Hollywood should be nurturing: a creative student with vision, perusing his creative 'dream' and not letting his limited means get in the way of his vision.

It's a real pity that this happened, and a lost opportunity for the film industry. It could have been simple for them to take this as an opportunity and make something great out it. Instead, they alienated the type of person they need.

That said, I don't think this is an excuse to take 'revenge' on these companies, "one download at a time".

rquantz 15 hours ago 0 replies      
It seems like the best course of action here would have been to take down the website... and then just finish filming anyway. It wasn't actually worth it to the studio to send somebody there to confirm that filming had stopped. They were just tying up loose ends and getting rid of online promotion that was competing with them. If the film was really good and got a distributor, then there would have been a bigCorp there to swat away this frivolous lawsuit. If not, then it would have just flown under the radar.
cturner 16 hours ago 1 reply      
Americans, why don't you introduce the concept where courts are encouraged to award all costs against the loser? This culture is widespread in the commonwealth, and strategic court actions are less common. It should be a really simple change.
joshklein 13 hours ago 0 replies      
This is apropos the story, albeit slightly tangential. I don't remember all the specifics, but during my time at university, I remember a student being sued by some outside party related to his academic work. My university mobilized every resource at their disposal to defend the student and the lawsuit went away. The OP mentions attending a "small private college"; maybe my story is a hidden benefit of the large institutional machine. I would have expected the school to provide him counsel at a minimum.
rglover 15 hours ago 0 replies      
I think the student made one big mistake here: he didn't ask why (or at least, didn't disclose the answer to such a question). Aside from legal threats that appear to hold little if any merit, there's no reason this student should have let his career end. Irrespective of the choices he made, let this be a lesson to many. When you're talented and smart, you have much more leverage than you think. You have to go beyond the bs and if not to eliminate it, at least justify why someone is trying to harm you.

P.S. This doesn't just apply to "Hollywood," it happens everywhere.

Craiggybear 18 hours ago 0 replies      
Absolutely shocking story. It must have been gut-wrenching.

This sort of shit is like a red rag to a bull for me. I would have went ahead and called their bluff and let them get it into court; I would have hoped against the odds that with all the evidence you had the judge would have thrown it out and it would have cost those bringing the action dear.

Of course, reason might not have triumphed and you would have lived to regret it.

But that's just me, and I'm an idiot. Though, I like to think, an idiot with principles.

jackalope 12 hours ago 0 replies      
Forced or bullied? It may seem like a small distinction, but it sounds like he backed down after a single threatening phone call, without calling their bluff.

It's important to note that the film was based on one of Asimov's short stories, “Reason”, but was not a direct interpretation. It was not titled “I, Robot”, and barring the inclusion of the laws of robotics, was almost wholly original.

If that's the case, then why not remove any Asimovian references, disavow any connection with "I, Robot" and complete the film?

Don't get me wrong, the studio behaved badly and this guy didn't deserve the treatment he received from them, but it sounds like there were perfectly acceptable options available that didn't require shutting down the project completely.

regularfry 18 hours ago 0 replies      
This would be "protecting the artist", yes?
jakejake 12 hours ago 0 replies      
What the studio lawyers did was typical and it stinks. This is a valuable story to be told. But i hate to say it, this guy would probably not have made it in the movie business as a director (if that is what his aspiration was).

First of all, having one failure and then giving up - that business is constant rejection and having to overcome difficulties with every project. Projects fall apart all the time. Lawsuits happen all the time. You have to stick out your neck financially over and over.

I'm not judging him, it's a crappy thing he went through, but if you want a career in the arts you have to be undeterred by situations like this.

mahrain 18 hours ago 1 reply      
The (American) judicial system is broken when this type of class justice arises. This is a dangerous development.
paulnelligan 17 hours ago 1 reply      
This is exactly why SOPA / ACTA et al must be stopped.

If this happened me, in 2012, I would go straight onto kickstarter to get donations for the legal fees and fight these dickheads tooth and nail.

look_lookatme 15 hours ago 0 replies      
That's an unfortunate, sad story.

However, in situations like this where you might have some legal leverage, it never hurts to attempt some sort of negotiation. He could, for instance, negotiate himself into some sort of production position in the upcoming shoot or on some other set.

This is going to sound really harsh: Aside from nepotism and sheer luck, people do really make it in the film industry based on pure will and this could have been his opportunity. However, in the end he murdered his darling and packed it in. With an attitude like that (harsh, I know) his chances were slim. The film industry is not a meritocracy, and his art alone would not have carried him to success. He needed to hustle, in both senses of the word.

If he did try something like that, then I feel doubly worse for him, though.

VikingCoder 13 hours ago 0 replies      
...don't universities have lawyers, and honestly shouldn't they be a free resource to students in cases like this?
Tichy 14 hours ago 0 replies      
I wonder how the movie studio would have liked the publicity over ruining a film students life.
FJim 10 hours ago 0 replies      
Threatening to bankrupt someone with a nuisance lawsuit that has no merit is not looked favorably on by judges, and a lawyer who says as much risks sanctions from both a judge and the bar association.
veyron 10 hours ago 0 replies      
mickey7 13 hours ago 0 replies      
guerilla tactic: if the trial ever proceeded it would have launched this guy's film career by giving him immense public exposure instead of just another sob story on reddit.

why did it take the lead of the studio's lawyer's team to make the phone call - it would imply how seriously they were concerned about real potential risks.

instead his surrender was exactly what the studio lawyers aimed for.

btw since this was 10 years ago it's conveniently outside the statute of limitations for slander - so he doesn't have to prove this story is even real and not just viral promotion bs for his lame student project.

yread 16 hours ago 0 replies      
... and that's why loser pays system is better. This guy would just get one of those lawyers who you have to pay only after the case (that is if you lose) and have them eat their C&D letters.
javadyan 18 hours ago 0 replies      
That's... that's just so sad. And so infuriating.
Web Standards dcurt.is
353 points by maccman  5 days ago   195 comments top 32
tptacek 5 days ago  replies      
This is the result of a standards process running in reverse: first the specifications, then the implementation. There was a time when the "Internet" could if you squinted right be defined as "the collection of people who make fun of that process and do the opposite"; their motto was (literally) "loose consensus and working code".

First you get things working. Then you standardize on them.

Complain when the Webkit team refuses to implement standards. Have they shown any unwillingness to support W3C standards once published? No? Then what's the gripe? The browser vendors are doing exactly what they're supposed to do: come up with new things. If the W3C was doing its job, it would watch those new things carefully and, when enough momentum existed, start ratifying them as standards.

It's not enough to say, "you could have used the same argument to defend Internet Explorer". To indict someone for "embrace & extend", you need both halves of the behavior: creation of new features, and unwillingness to support subsequent standards for those features.

sp332 5 days ago 2 replies      
the developers of WebKit added the prefix -webkit to the experimental stylesheet declarations. This ensured they worked only in WebKit.

No. This ensured that they didn't pollute the global namespace with experimental, partially-implemented ideas. If Mozilla, Opera, and Webkit each make e.g. "rounded-rect" declaration, and one browser takes the width as the first argument while another takes the radius first, then we're screwed. At least having "-moz-rounded-rect" and "-o-rouded-rect" means developers know how their pages will behave in each browser. I agree that the W3C is unacceptably slow, but that doesn't mean prefixes are a terrible idea.

huggyface 5 days ago 3 replies      
The aggressive dismissal of the concerns are unwarranted and a bit ignorant. The concern is not, per se, vendor extensions -- such a mechanism exists for a reason -- but rather that many users of those extensions have lazily taken to only bothering with webkit extensions. Most of the time for no reason other than an IE-only like "suck it" attitude (many demos front-paged here on HN only work in single browser, despite often needing just trivial changes to work elsewhere).

Dismiss the W3C and the purpose for standards at your peril. Webkit and its offshoots have the ability to innovate on the edge because that body and its impact kept the web open.

EDIT: It's worth noting, with sober consideration, that exactly the same argument was made to support Internet Explorer during the ugliest days of the web. This could have been cribbed verbatim from something a Microsoft advocate would have said in the late 90s.

ChuckMcM 5 days ago 1 reply      
Welcome to the 'standards' world. It sucks big time.

I've participated in standards in both POSIX working groups (network file systems, network apis), IEEE working groups (PCI express Advanced Switching), IETF working groups (RPC and XDR, heck I'm the 'owner' of port 111!), various CAD standards groups, and a whole bunch of things that never even rose to a level of relevance to get published.

If standards bodies are effective, they take away power from companies to distort the playing field, if they are ineffective they allow folks to distort independently. So large companies send representatives to standards bodies to distort them in favor of their own company (Rambus is the canonical example) and other companies send representatives to make them ineffective so that they won't level the current field (Microsoft and XML is the canonical exemplar there).

The bottom line is that Standards bodies whine that nobody lets them do their job, and they tolerate members who actively prevent them from making progress. I have long since given up feeling any sympathy for them whatsoever.

sriramk 5 days ago 4 replies      
Somewhere in building 50 on Redmond campus, the IE team is wondering why nobody ever said this in their defence when the exact same scenario was playing out with IE (dominant browser, not available on all platforms, glacial standards bodies, browser specific extensions, etc).
mceachen 5 days ago 3 replies      
Dustin, I totally agree with you that the current system is whack. Glacial adoption of W3C standards has a real cost on developers and users, and ends up with rounded corners taking 16 lines of CSS, and gradient fills taking 8.

I don't think that we'll be better off just by making the current process "go faster," though.

There needs to be some proper vetting of features. You'd want to avoid the tyranny of the monied interests. It can't just be Apple/Microsoft/Google making the decisions about what goes in and what doesn't -- even though they're going to shoulder the cost on the user-agent side to implement the feature.

It might just be as simple as leaving the current ecosystem as it is, looking at the adoption rate and success of a given construct, and folding those into the "living" spec (without the prefix, of course) -- and just do this process on a regular, fairly frequent interval, like every 6 months.

3pt14159 5 days ago 1 reply      
Aside: Please don't have a flashing beacon thing where I'm trying to read. I get visually distracted very, very easily.
edd_dumbill 5 days ago 3 replies      
This is a somewhat ungrateful perspective, just after the Eolas patent case was thrown out.

Yes, the W3C process takes about half the lifespan of many HN readers. Yup, it's not ideal.

But it's the only game in town and it's been going on so long because it works. Because it successfully brought Microsoft into the fold and conversation at a time where, had they decided, they could have broken everything.

It's worth exercising a little perspective. Can you think of any endeavor that has so successfully united vendors to create something as broad and interoperable as the web, over such a relatively small period of history? The W3C has been fundamental to this.

- What has the W3C ever done for us?

-- Well, HTML.

- Oh yeah, they gave us that. Yeah. That's true.

-- And CSS you could view source and copy.

--- Yeah, you remember how scared we all were of Microsoft Blackbird?

- All right, I'll grant you that HTML and CSS are two things the W3C have done...

(you get the idea.)

lwhi 5 days ago 1 reply      
To me, the article comes across as a bit of an uninformed rant.

> I hope it does kill the W3C and CSS Working Group standardization process.

To this, I have to ask "Mr Curtis - are you _CRAZY_?"(!)

Do you not realise that it's taken over 12 years to say good bye to IE6. Have you not had the pleasure of battling with the ramifications of a browser that doesn't play by the rules?


There are some understandable reasons for not making use of vendor prefixes.

The article that Dustin Curtis links to makes some valid points about the dangers of continuing to use vendor prefixes. A similar line of thinking is presented here [1]

The alternative to using vendor tags isn't to stop using the features - it's to simply drop the vendor prefixes and use the property names from the (non-ratified) CSS specifications before they're fully approved.

For all it's failings, the W3C does a grand job. Negotiations take time. Best we don't throw our toys out of the pram.


[1] http://www.quirksmode.org/blog/archives/2010/03/css_vendor_p....

pygorex 5 days ago 1 reply      
Browser developers are going to innovate new features. A standards body doesn't drive innovation. Innovation is not a top-down process. A standards body exists to ensure some level of interoperability between browsers.

What Prefixgate shows is that a W3C standard is not a rigid set of laws like the 10 commandments. Rather a W3C standard is like a peace treaty - all adherents agree to respect certain protocols and behave in certain ways, buy are free to pass whatever laws they want within their own boundaries. Assuming that these proprietary laws do not conflict with existing treaty stipulations.

Peace treaties give us access to the best of both worlds: vendors are free to innovate as they see fit, yet they still commit themselves to some level of interoperability. Innovations influence the standard and the standard ensures that all vendors adopt the best innovations at some point.

The comparisons between IE of old and Webkit are incorrect. Microsoft has a history of implementing standards incorrectly (http://www.quirksmode.org/css/quirksmode.html) and bullying standards bodies (http://techrights.org/2011/09/06/michel-levy-comes-out-swing...). When it comes to standards Microsoft does not act in good faith.

potch 5 days ago 2 replies      
My complaint is not that -webkit CSS extensions are bad. I love how fast the browsers move. It's that people aren't careful to make sure they use all the prefixes when they're available. It's an education problem, but people using CSS preprocessors such as LESS and SASS have no real excuse.
georgemcbay 5 days ago 1 reply      
"Despite having representatives from all of the major browser developers, the Working Group has not been able come up with a solution."

IMO there's no "despite" about that, "Due to" would be more appropriate.

Design by committee sucks even under the best of circumstances. When the committee is made up of very different companies each trying to use the web as a chip to bolster different parts of their businesses, of course the process is going to be broken. It probably can't not be broken.

JoshTriplett 5 days ago 0 replies      
I find it funny that that rant holds up as an example the magic bit of CSS animation on the right which treats a brief hover over it as a "kudo".
jerfelix 4 days ago 0 replies      
I'm glad that the webkit-specific features were prefixed. I just wish they would have chosen a prefix that was a wake-up call to anyone relying on them.

Perhaps a prefix like "this-feature-will-be-deprecated-in-2013-".

Slightly off-topic, but in a similar manner, when we struggled with users permanently deleting records, ignoring the warning that they were permanently deleting records, and calling us to retrieve the irretrievable, we changed the confirmation box from "click OK" to "type the word 'irreversible". This cut the calls to near zero.

mattbeck 5 days ago 0 replies      
This seems to be a fairly standard gripe from the W3C. "Listen to us, because if you don't the sky will fall!"

They are making themselves increasingly irrelevant because they exist primarily to restrict and limit rather than to expand and innovate.

Partly that's the nature of the beast, standards are after all rules.

The problem is that the rules need a clear and timely mechanism to evolve. Clearly the W3C is the wrong answer to that problem.

I remember well what things were like in the days of horrible tag soup trying to support internet explorer and netscape, and that sucked too.

Standards are good, having a single rule set for everyone to test against is good.

The W3C though, yeah they suck hard.

Way past time to move to a usage-based standards adoption mechanism. Let people innovate, if that change sees wide support adopt it as a standard.

dedward 4 days ago 0 replies      
Let's broaden the picture a bit here and look at the internet as a whole.
There are no standards - there are suggestions (RFCs), lots of open stuff (open source, free, whatever), and some closed stuff, and then there's what really happens.

It turns out that IPv4 and DNS worked pretty well, though of course the internet at-large only uses a portion of those "standards". We didn't need an organization to tell us every last little detail and how it would work and "approve" it before we use it. People found out what worked, documented it, and it became the de-facto standard. We've never waited on the various internet "governing" bodies while keeping our own progress at bay. THere's absolutely no reason to.

Know why everyone (more or less) obeys the allocations issued by ARIN? Because we recognize someone has to manage that limited resource pool, and they do an okay job of it. We're all free, more or less, to set up networks in whatever way we want, with whatever IP space we want - we just can't expect cooperation from our neighbours without some discussion and agreement so we don't stomp on each other's space - so we look to ARIN and their brethren to manage this. If they ceased to do so efficiently, they'd be replaced.

The W3C has no power to force a developer or vendor to implement a given feature or not, and nobody really cares whether or not something is "officially" compliant.
Most web pages are not fully compliant... yet the web, built by kids and adults and everything in between grew up and here we are, talking on HN.

It'd be great if people could agree when we end up with overlapping features from different vendors...... it makes it hard for the developers right? That should be obvious to all.
But we've switched browsers over the years, and will again, and whichever ones actually do what people need them to do, as well as keep developers happy, will prosper - w3c has little to do with it as far as I can see.

Same for DNS (gripes aside - let's be realistic).

We implemented IPv4 and it works great, but does the internet at large obey the type of service bits which are part of that standard? heck no. It's a big, evolving, organic thing.

The web - same deal. Know what makes a standard? Something people adopt and continue using. Usage defines the standards - nobody is compelled to do anything just because it's a "standard" according to some group.

MeanderingCode 5 days ago 1 reply      
Way to go, dcurtis, ranting about web standards and webkit's greatness while your website doesn't render sanely on my android devices' webkit browsers.
jseims 5 days ago 2 replies      
Does anyone have any insight as to why the W3C has taken over 10 years to converge on the spec for rounded corners? Any info more than just "bureaucracy"?
meow 4 days ago 0 replies      
I think the reason for this kind of slow evolution is lack of generic properties (like --surprise-- internet explorer's filters ) which lets developers push the boundaries on their own with in a reasonable limit. For example, support for border-radius, linear gradient, box shadow, text shadow etc all deal with rendering of elements at various levels. If there is a generic property which lets us control rendering and positioning of elements to a limited extent, the current evolution and standardization processes will be much less of a problem (I'm not saying internet explorer's filters are the way to go. But you have to give them credit for putting such a generic property in developer's hands).
zobzu 5 days ago 0 replies      
the guy proposes to kill standardization bodies, and that web engines should do w/e the hell they like, regardless of standards.

coming from what appears to be a webkit dev, that's pretty bad.

standardization bodies should certainly be deeply fixed - but this kind of reply is wrong.

bradgessler 5 days ago 1 reply      
W3C is a web standard, on paper.


WebKit is living, breathing, open standard that anybody can fork and contribute to.

Code talks, paper walks.

lifthrasiir 5 days ago 0 replies      
It is correct that W3C certainly lacks the ability to coordinate different vendors. But is it good to abandon the coordination process altogether? No, the problem here is a standardization process and not a coordination process. You at least have to coordinate vendors to maintain the very baseline, no matter Web standard is means or not. (If you don't agree on this, you'd be better looking at the past...) Someone should really bring up the better alternative than Web standard, and not only criticize it.
Finster 5 days ago 0 replies      
Ohhhh, so it's okay when webkit does it... just not IE.
pippy 3 days ago 0 replies      
>The reason the -webkit prefix was necessary is simple: the W3C and the CSS Working Group are ineffective, failed organizations.

This is a bit too far. The -webkit prefix was a gesture of courtesy. What if other browsers implement it differently, and the spec changes? then older webkit browsers will render it incorrectly.

The solution is simple: code to the standards, then target the fringe browsers. It doesn't matter if it's webkit or IE, this is a future proof, cross compatible solution that will solve both problems.

starfox 2 days ago 0 replies      
I fully agree with this. CSS set the web back years with it's inability to handle simple layout. The W3C organization is run by representatives of major corporations, and the standards take years to roll out.
BillPosters 4 days ago 0 replies      
Front end Developers seem to disagree a lot. Some embrace the webkit prefix and sprinkle it all through their CSS. Others prefer not to resort to old fashioned site building techniques and instead aim to get the functionality working everywhere in one hit without coding like it's 1996.
dreamdu5t 3 days ago 0 replies      
... dcurt.is is an abuse of the TLD standards...
eslaught 5 days ago 2 replies      
Why doesn't the standards body ask webkit to deprecate and begin to phase out any -webkit-* CSS selectors which have been fully standardized? That seems like an effective way to force people to use the standards once they actually exist.

Complaining about people using -webkit-* before the standards exist is obviously unreasonable, considering the implications of populating the global namespace with conflicting versions of the same feature.

readme 4 days ago 0 replies      
Great points. I'm going to automatically concur on the grounds that I don't think bureaucracies that produce nothing should have a say in the production of anything.
ronreiter 5 days ago 0 replies      
Relax. Just relax.
The web browsers are automatically updating themselves for a reason.
jmsduran 5 days ago 0 replies      
Kudos to the author of the article. I read the referenced article on glazman.org, and once "glazou" described -webkit-* as having "hardware market dominance", I could not stop LOL'ing until I finished reading his blog post. Seriously?!

I second that the web is constantly evolving, whether or not it benefits the ego-fat cats at Google, Apple, or Mozilla. Get used to it and adapt, at least that's what I remember hearing in a Google Tech Talk back in 2008, does anyone still tune in to those?

gavanwoolery 5 days ago 1 reply      
I am going to go out on a limb and say: fuck standards.

Make a powerful, but extremely simple (as in: small instruction set) virtual machine and protocol. That way anyone can make their own standards.

Walter Isaacson's ‘Steve Jobs' daringfireball.net
351 points by mrshoe  1 day ago   243 comments top 41
nirvana 1 day ago  replies      
I'm critical of John Gruber on many topics, but in this essay he is exactly right. Further, there are many examples, just like the Bill Gates one, where Jobs says something that is true[1] and Isaacson assumes its the "reality distortion field" and then quotes someone else, like gates, who has an agenda, telling a lie as "proof" that Jobs is lying.

Lets talk about this "Reality Distortion Field". People claim that Jobs can make you believe things that aren't true by simple application of charisma. Is anyone here willing to admit to being swindled in this way? I am not. I am not aware of Jobs ever saying something that was actually false (though I'm quite aware of many manifold lies told about Jobs.)

For instance, remember the introduction of the iPhone? How about the introduction of the iPad? Everyone here should be old enough to remember one or both of these keynotes. Surely Jobs "Reality Distortion Field" would be deployed to maximum effect at such keynotes-- and after both of them I remember much derision and claims that Jobs had the RDF on maximum and how those products were going to be complete failures, and how everyone needed a keyboard on their phones and how the iPad was a terrible, terrible name, inspired by female hygiene products, etc. etc.

IF you go back and watch these, can you find a single lie? Can you find any reality that was distorted? Sure, Steve Jobs called the iPhone revolutionary. That's obviously a characterization based on an opinion, but that opinions seems to have held up-- before it, there were only feature phones, really, and now every phone that isn't an iPhone is some sort of iPhone counterfeit (e.g.: has a touch screen) It clearly revolutionized the phone category, and created the app ecosystem. Similar things happened with the iPad.

Because Apple is successful, and because Apple does things its own way, people feel the need to attack Apple. And of course, they attack Jobs.

Most of these attacks have clear motivations-- people who bought another product who want to feel it is superior, or people who work for a competitor, or -- and this is the biggest source, I believe-- hack journalists who want to create a sensational story (I still remember a claim that Apple switched from ATI to NVIDIA chips in laptops the week before they were announced because of a leak from ATI... as if Apple could even do that so quickly for a product that was about to ship.... but people believe it. The story was "Steve got really mad and now the new MacBooks will ship with NVIDIA chips!" I know for a fact this is false because you can't change production that fast... but people believe those kinds of lies. After all, they've been told for year that Steve Jobs is an asshole, and, despite never showing this side of himself in public, they believe it.

[1] True because I know it to be true either because I witnessed it, or I'm more informed on the issue than Isaacson is. I've been an Apple watcher for 20 years, and I have noticed that much of what people believe about Apple is based on oft repeated myth without substantiation in fact. I remember Apple trivia fairly well, and the specifics of things that often happened before people writing about them now were out of grade school. (EG: Just this weekend I read in "Inside Apple" the long refuted claim that Apple "stole" Xerox technology for the Mac. Amazing kind of a theft that was-- Apple paid for a license to use that technology with stock which, if held to present, is worth Billions of dollars. Quite the heist!) Another example: for quite a time there, many windows fans believed that Bill Gates owned Apple, because to them $150M is a big "investment" and they think Microsoft bought Apple in 1997. (they didn't know that Apple had a lot more of that in cash already, and that part of the deal-- the bigger part-- was burying the hatchet on all the patents microsoft was violating, to the tune of several billion dollars a year from Microsoft paid to Apple for several years. This latter bit was reported, but kept quiet because Apple didn't care and microsoft wanted to save face... so its not widely known.)

tjogin 14 hours ago 1 reply      
I agree with Gruber, but I'd like to add that these are not small errors on Walter Isaacson's part. They're huge errors. The biggest errors any biography author could make about Steve Jobs.

Why? Why are we even interested in reading a biography about Steve Jobs to begin with? Because he was a narcissistic asshole? Really? Because that's the part Isaacson nailed. There are plenty of assholes, and that characteristic alone does not make for a best-selling biography. No, the reason anyone is interested in reading Steve Jobs's biography is because of his work.

And yet, Steve's work is the part Isaacson doesn't get. Isaacson falls into the same traps that the media does with regularity; thinking Apple's design obsession is about veneer, thinking it's about marketing, about fooling people, about lying. It's not, that might sell a few products, but it does not sell record quantities of products and achieve top customer satisfaction.

You'd think a person with full access to Steve Jobs and people close to him would be able to at the very least ask a few questions about what he saw that others could not, that lead to the successes of eg. the iPhone. Recall other industry big wigs laughing it off, from RIM to Nokia to Microsoft. The iPhone was a joke to them. What did Steve see that they did not? What was his thought process? What made Steve Jobs so different for him to be able to upset industry after industry? These are things I'd have wanted to know and I can't help feel a bit sad that now we will never know. Because Isaacson squandered the only chance we got.

tatsuke95 1 day ago 2 replies      
>What computer would you rather use? A MacBook running Windows 7, or, say, a Lenovo ThinkPad running Mac OS X 10.7?

Being as how I run a Macbook Air with Windows 7, and don't even remember what OSX looks like, my answer is pretty obvious. I've never used a laptop that feels as good (the touchpad is the best).

But Apple software? Meh.

redthrowaway 1 day ago 3 replies      
Interesting, but as a software guy I disagree entirely on the hardware/software side. I'd much rather have a 4s running ICS than one of the others running iOS, and I'd much rather have my MBP run Linux than even OSX (stupid EFI...). Granted, I have different tastes and needs than most, but I view Apple products not as the OS "in a pretty box", as Jobs put it, but rather as a pretty box with a good-not-great OS in it.
martythemaniak 1 day ago 5 replies      
It's hard to dispute the excellent hardware Apple makes, but quite easy to do that to their software. My MBP dual-boots into Ubuntu so I can actually do my work and the 4S would make a great Android phone, though it still wouldn't be my choice due to its small screen.

What it really comes down to is that their software is too opinionated. At every turn I get frustrated by one inanity or another until I give up and just use something that works without requiring mental contortions on my part.

jroseattle 14 hours ago 1 reply      
I disagree with Gruber's interpretation here. Apple wants to do everything well; excellent software is a by-product. But as a focus? Not really.

This is not to say Apple doesn't make good software, but there is very little in the actual output of the company that supports Gruber's notion.

Back in early iPhone days, one of the biggest complaints was a lack of multi-tasking in iOS -- you could only ever have one app running at a time. There were no push notifications, etc. The Apple explanation, per Jobs, was that they consciously chose to exclude that capability. A few versions later, voila -- iOS supports multi-tasking. This sort of cycle -- explain why a feature didn't exist due to some chosen policy/belieft, then include it in later revisions -- became a pattern for Apple.

Flip to the hardware side, and the story is different. When has Apple hardware, since Jobs return in the nineties, ever been a compromise? It hasn't, because Jobs focused on the hardware. While the software is important, it is really a means to an end. The hardware meets this condition too, but it is much higher in the pecking order of consideration than software.

doron 22 hours ago 0 replies      
I am probably a very small minority in this regard, but in this , for me, and to grubers point, it's the hardware not the software.

The hardware is an aesthetic superior design. But I run windows 7 on it. I find windows 7 to be a far superior user experience to osx, faster, and at least on this hardware more stable. Apple provides the easiest driver install procedure for windows then any other provider, I just find osx itself... Rather primitive, most likely imo due to the insistence of Apple on providing a hermetic user experience.

No tech company, no matter how smart, has all the answers in one box.

6ren 1 day ago 1 reply      
A nit: Hardware isn't just industrial design. Apple manages to squeeze a lot more performance out of the same components as others, because they do design in an integrated, interdependent way, rather than modular. This gives less flexibility to customize/mix-and-swap, but better performance (for whatever you want to optimize: speed, weight, size, power consumption etc). This was extremely important in the early days of the iPhone, but now that components have improved so dramatically, we are nearing the point where there's performance to spare, and it needn't be optimized.
The upshot is that "iOS on an Android" with the same specs
wouldn't have performed as well. It would have been less smooth, less responsive etc. So that, at least then, hardware was crucial for the experience.

The same was true for the iPod and especially Woz's Apple computer. It's still true for the iPad. I believe it will be true for Apple's next product category, because (hopefully) they'll continue to move to the edge of what is possible - where optimization is absolutely essential to be the first to get over that edge.

tl;dr hardware matters.

RockyMcNuts 23 hours ago 3 replies      
Using a howitzer to kill a flea.

Isaacson writes fluidly, put in the research and reporting (also rehashed a lot of other people's), but doesn't know the technology or the tech business. In fact I don't get a sense he likes them or 'got' Steve Jobs.

Hatchet job might be strong. But he dwells a lot on the charismatic and narcissistic and mercurial personality and not on why so many great people loved Jobs and worked so hard for him. Or what his insights about products and the business were (besides being a control freak and perfectionist).

The book is a good read, it's a creditable first draft of history, contains some first-hand stuff I never saw before about the genesis of the iPod and iPhone and iPad.

Isaacson gives the who, what, when, where, but doesn't really explain why. To his credit, he lets the people speak for themselves.

Jobs could have picked a lot of other people, but he picked a non-tech, non-business writer. I guess he wanted someone to just tell the story, not the strategy or product vision that makes Apple great.

Maybe Gruber should interview a bunch of people and give it a shot. It's not what Isaacson set out for or was in a position to do.

untangle 1 hour ago 0 replies      
I'm a big fan of Apple's products. Have been since the Apple II. But when I look dispassionately at the core capabilities, I do not see uniform excellence.

Apple clearly excels at: marketing/brand, hardware, and partner/supply chain management. But Apple's software quality is all over the map. Further, Apple does not "get" the internet (and never has).

Since "hardware vs software" was the focus of JG's post, I'll briefly state my case around those two elements.

Apple gets hardware. I doubt that anyone would argue otherwise. Fabulous objects-of-desire emerge from amazing industrial designs. I can't even think of a laptop I'd consider in the same league as the Air. Ditto the iPad, iPod, and Airport. (The iPhone is in a much closer race with the Samsung gear.)

Apple also sports price-performance advantages In certain key areas. iPods have held more memory per dollar since the earliest days of MP3 players, for example. HP was unable to match the iPad. And now the Air and other "computer products" have closed the gap. This is an under-appreciated aspect of Apple's game.

Apple sometimes gets software too. I personally loath the one-button-ultra-modal aspect of IOS. But the myriad of brilliant features (e.g., pinch, scroll, etc.) blow me away, in both a design and execution sense. Apple is great at UX-in-the-small. But at application-level, things aren't so balmy.

iTunes and its syncing model are frustrating at best. Mail, iCal, and Address Book are only now getting better than (elegant) toys. These three have had serious bugs for years. iWork - forget it. App uninstall is incomplete, leaving many remnants. OSX's underlying file system is a joke, as is MacPorts. Lion's desire to mimic IOS is frustrating at best.

Apple is the greatest show on earth based mainly on their brand development and their ability to produce must-have objects.

Oh, and I'd (reluctantly) take Win7/Air and IOS/Samsung -based on the strengths of the hardware in each case. A split decision.


Steko 1 day ago 1 reply      
I think it bears mention here that Isaacson has acknowledged there may be some places the book could be improved in and may be putting out a version 2 soon (or maybe 1S? I'll show myself out...). The whole thing was a bit rushed to press.
padobson 17 hours ago 2 replies      
I had two problems with this post. First:
'NeXTStep was not “just warmed over UNIX”.'

It was, and so was Mac OSX. What Gruber doesn't seem to get is that warmed over unix provides a much more stable OS than Windows NT or DOS. He should be proudly admitting its warmed over unix.

"It's almost impossible to overstate just how wrong Bill Gates is here, but Isaacson presents Gates's side as the truth."

It should be mentioned more clearly that Gates was saying this on a sales call - his ultimate goal being to have every consumer computer made running Windows NT. If he stretched the truth a bit, he shouldn't be blamed for being ignorant, only ambitious.

This is what often irks me about Gruber - he makes disagreeing with Apple out to be an act of incompetence. Most engineers that don't like Apple products simply want greater customization over their tech, something Apple denies their users to promote ease of use.

klausa 23 hours ago 1 reply      
I don't have any particular feeling toward Gruber's work, but (apart for odd timing.) I really liked this piece.

But I had this nagging 'hey, I read that before!' feeling back in my head - and I was right, although I heard similar complaints before - voiced by John Siracusa (you know the guy that writes 10+ pages reviews of new versions of OS X on Ars Technica? That's him.) on his 'Hypercritical' podcast.[1] It's long (1h15m, and it's only the first part.), but in my opinion absolutely worth listening to.

If you have free time, or have nothing to listen to while commuting - give this one a shot.

[1] http://5by5.tv/hypercritical/42

gojomo 1 day ago 0 replies      
Even the original iPod, which wasn't based on NeXT technology, used the column-view concept for hierarchical navigation that NeXT pioneered.

Those are called Miller Columns, and NeXT popularized them, but they were pioneered much earlier:


nhangen 1 day ago 1 reply      
I don't know what I'm more surprised at - Isaacson's piss poor job of doing Jobs' life justice, or that Jobs chose him to write the book. Either way, I walked away very disappointed, ready to never think about the book again.
kleiba 1 day ago 0 replies      
I know quite a few people who run Windows on MacBooks as their primary OS. Of course, the different mac clones that run the OS on generic hardware were pretty successful too (before being shut down by Apple's legal department).
Havoc 9 hours ago 1 reply      
>Isaacson clearly believes that design is merely how a product looks and feels, and that “engineering” is how it actually works.

The author doesn't seem to understand that Isaacson isn't writing for a HN audience. To the vast majority of people "design" does mean only aesthetics, so the author is to some extent justified in following the same route.

Same thing with de-emphasis of software. It is pretty much impossible to explain why a certain piece of software is good using words to a non-programmer audience - who may not even have seen an Apple device. I'd have glossed over software too especially since everyone associates Apple with brushed aluminium hardware anyway.

Just because some aspect isn't discussed in the book doesn't mean the author is ignorant of it.

These types books are meant for mass market entertainment, not a technically literate HN crowd. Of course if you measure the book against the wrong bloody benchmark then it fails miserably. And yet somehow after pages of doing exactly that the author manages to highlight his own mistake in the final 2 sentences:

>Isaacson's book may well be the defining resource for Jobs's personal life " his childhood, his youth, his eccentricities, cruelty, temper, and emotional outbursts. But as regards Jobs's work, Isaacson leaves the reader profoundly and tragically misinformed.

barrkel 1 day ago 0 replies      
The rhetorical questions at the start of this article were easy for me too - but surprisingly, they were the complete opposite of Gruber's. I primarily run Windows 7 on my MBA.
pooriaazimi 20 hours ago 0 replies      
If you liked this piece (and didn't like Isaacson's book at all), don't miss John Siracusa's great critic of the book - Hypercritical, episodes 42 and 43. Well worths listening to...

http://5by5.tv/hypercritical/42 about 18 minutes into)


dkarl 23 hours ago 4 replies      
What computer would you rather use? A MacBook running Windows 7, or, say, a Lenovo ThinkPad running Mac OS X 10.7?

Gruber, like everyone else, knows that the ThinkPad is a legendary design and that there are many people who prefer it over everything else. Picking it to serve as his example of inferior hardware was his signal that only true Mac fans should read on, so I didn't. Kudos to him for letting me know up front that the rest of the article wasn't my cup of tea.

Wouldn't it be nice if my MacBook Pro wasn't... didn't... was less... I'll spare you the complaints, and the praise for the ThinkPad T-series. They could both learn from each other.

I realize it's a matter of opinion which piece of hardware is superior. That's the point. Gruber threw up a billboard in paragraph four that says, if you think it's at all unclear that the MacBook Pro is the greatest laptop design of all time, read no further. If even he doesn't think this bit of hagiography ought to be read by a broader audience, who are we to contradict him and post it to a broader audience on HN?

scj 1 day ago 1 reply      
The good news is that the story isn't lost yet, even if Steve can't tell it.

I am hoping that Avie Tevanian writes a really good memoir. In a perfect world, one on par with Hertzfeld.

drivebyacct2 1 day ago 2 replies      
Interesting, I couldn't have disagreed more with the initial choice. I love Linux and appreciate Android, but I drool over iPhone 4/4s and I love my MBP. I'm surprised that people still fawn over OS X as much as they do, frankly. Especially as it becomes increasingly annoying to use as a development machine (at least personally).
gojomo 1 day ago 1 reply      
Isaacson leaving those Gates quotes unremarked upon doesn't imply agreement; he's just relaying interesting details.

For example, the post-NeXT acquisition rant, which comes by way of Amelio, is effectively refuted by the whole life story that follows. So there's no need to spoon-feed a conclusion to the reader: "look how wrong Gates was!" Everyone gets it just about as well as Gruber does.

dasil003 16 hours ago 0 replies      
I love this:

> But, as a thought experiment, which is more important to you? What phone would you rather carry? An iPhone 4S modified to run Android or Windows Phone 7? Or a top-of-the-line HTC, Samsung, or Nokia handset running iOS 5?

This is a fascinating question to me because though I agree with Gruber on preferring OS X on the PC hardware (for now anyway, at least vs Windows rather than Linux), I think I actually would prefer Android on an iPhone. My biggest gripe with Android is the shitty hardware and the seeming inability of any manufacturer to make a touch-screen that is not glitchy as fuck all. When it comes to software I concede iOS has more polish and there tend to be better designed apps. But on the other hand, Android has the more powerful apps. For instance, I use DoggCatcher for podcasts on android, and I've tried a half-dozen iOS podcast apps, many of which are more elegant, but they are extremely under powered feature-wise. Apple's philosophy of only have a home button is elegant serves discoverability, but I don't think it's inherently better, and for power users I think it can be a disadvantage.

SeoxyS 23 hours ago 2 replies      
I've read the book in its entirety, and while I don't refute the inaccuracies on some of the technical details covered, I don't really this it's all that important. As a reader, I was not interested in the technology aspect and technical details: that is already well documented. If this is what you're looking for as a reader, then this is not the book for you.

Isaacson was the perfect writer for this biography, in my opinion, thanks to his lack of technical knowledge. When you know the technology, it's easy to get lost in the things that don't matter. Isaacson has a fresh and often more objective perspective than any tech writer could. The details surrounding which kernel was used in Mac OS X and how much NeXT was responsible for really does not bring much value to me as a reader. Like I said, if I cared deeply about this, it's well documented already and easy to get from other sources.

What I got out of the book was a remarkably intimate look at the man himself: What made him tick, what his philosophies were, what the politics were and what the major obstacles were that he had to overcome. All of this, wrapped in an enthralling narrative and surprisingly intimate detail.

Isaacson may not have understood the technology, but he definitely understood Jobs' humanity, or sometimes lack thereof.

huggyface 1 day ago  replies      
It surprises how so many simply disbelieve what Isaacson has written because, in their heart of hearts, they can't believe it's true. Denial, or do they actually have personal insight into Jobs?

There has been a lot of vilification of Isaacson's book, much of it seeming to draw ire because it presents Jobs as a mere human.

rbanffy 16 hours ago 1 reply      
Allow me to disagree. Apple is a systems company. They, of course, use software and hardware, but those are made to match each other. It's also Jobs' company - and it is what NeXT was probably meant to be.

If software were the only priority, OSX (and iOS) would be more modular, easily customizable and extensible - and it would be much more advanced than it is and than what its Unix roots allow it to be. And it would run on PCs since the 286 days (maybe with a decent graphics board). If hardware were the priority, they would have designed their own CPUs, embedded memory management functionality within the memory itself. By now, you would probably be able to SHA1 a block of memory without it ever touching the CPU data bus.

Much like a glass cockpit of a plane or your in-car entertainment system, you don't care what OS it runs or what types of CPUs are built into it. A Mac, an iP*d or an iPhone are devices you buy to cover a specific need - you want to write, crunch numbers, make phone calls, read books, listen to music, even write software... Of course, Macs are more flexible and allow a lot of customization, but it only goes that far. If you boot a Mac with Linux or Windows, is it still a Mac? Hasn't it lost something in the process? If you install OSX on an HP Envy, is it a Mac?

Jobs was a very flawed person, but he also saw differently, and did a lot of amazing things less flawed people failed at.

buff-a 22 hours ago 0 replies      
What computer would you rather use? A MacBook running Windows 7, or, say, a Lenovo ThinkPad running Mac OS X 10.7?

I'd take the ThinkPad running 10.6 thanks. 10.7 is a total clusterfuck. It pisses me off (a seasoned developer) and it confuses the fuck out of my wife (who isn't).

CamperBob 1 day ago 1 reply      
Gruber: But “Design is how it works” is a much better statement of Apple's philosophy

Nope. Function is how it works. Design is what it is.

Jobs got that, whatever else anyone can say about him.

tomkin 14 hours ago 0 replies      
After listening to Hypercritical's take [1], I have to agree with Gruber on this one as well. Some of the errors in this book aren't your run-of-the-mill misinterpretations, or lost in translation. They are glaring, fundamental errors regarding how Apple was run as a company, Steve Jobs himself and the people in his life.

When you write a book about a technology giant's CEO and you can't even get the name of the company right ("Apple Computers"), you have to wonder what else is wrong.

[1] http://5by5.tv/hypercritical/42

michaelpinto 1 day ago 0 replies      
In retrospect the biggest problem I had with Isaacson's book was that he really seemed to dumb down his subject. I realize that Isaacson may have had to do this to appeal to a non-tech audience and to fit an entire complex lifespan into one book " but the result is that Jobs becomes a flat cartoon character of sorts and everything becomes oversimplified. And maybe that's what Joe and Jill Average want to read -- but as a fanboy and geek it left me feeling a bit empty and uninspired.
ZeroGravitas 15 hours ago 1 reply      
As I read it Gates is defending his statement that buying NeXT was stupid given the known facts at the time the deal was done. He does so by downplaying the NeXT software lineage in Mac OS X, but also by claiming that the real gem they got from NeXT was Steve Jobs, who Amelio couldn't have known would go on to be a great CEO, because he was well known at the time to be a maniac.

It seems like something Gruber would agree with if phrased slightly differently (e.g. "the most important thing Apple got from NeXT was Steve Jobs") so I don't know why he's getting so bent out of shape about a quote from another book which Bill Gates himself immediately questions the truth of in the the Jobs bio.

(And is it just me or is it a stretch to attribute the iPod interface to NeXT? Choosing an item from a list and going to a sublist isn't something I remember them inventing.)

ynniv 1 day ago 1 reply      
I am disappointed with Gruber's "shades of grey" conclusion. He is of course right that there are good parts as well as bad parts. Maybe I am too "Jobsian", but that equates total crap to me. The abysmal failures of the book leave room for someone else to write the definitive biography. Isaacson had his chance but he blew it. He sold a lot of copies, but the people who misunderstood Jobs won't be the ones spending their time telling the next generation about him. A hundred years from now, the book that people quote regarding Jobs will certainly be written by someone who properly understood the man. Someone who writes that "greatest book ever". This superlative attitude might seem overblown in everyday life, but it's what society values. Second place is in the end the first loser (or at least the first forgotten).

And hat author could be one of us. It can only be someone with the perspective to set it straight. It certainly won't be a writer thinking more about himself than his subject. In history, perspective matters more than profession.

phzbOx 1 day ago 1 reply      
I've got a macbook running arch, couldn't be happier.
evoxed 1 day ago 0 replies      
Not related to the article, but this is what I had to say to my dad after I lent him my copy: Writing biographies about living people is weird. Writing a biography of someone who asked you to is F*ING weird. Apparently Isaacson's other books are better (though I haven't read them myself) but I'm sure the future holds some better researched if not much less personal bios in the future.
mkramlich 21 hours ago 0 replies      
I loved Isaacson's book but I think Gruber is right.
throwawaysnipe 21 hours ago 0 replies      
A biography is not a hagiography. If Gruber wants the latter, he can write one. He already has a lot of material for it.
eyko 19 hours ago 0 replies      
This whole "what do you think Steve Jobs would have done" is beginning to look a lot like a "What Would Jesus Do" kind of following. I get it that he was a visionary but come on…
aremie 14 hours ago 0 replies      
Steve Jobs cared about the experience you have when using his products. It has to be simple to use, reliable and look nice. Elegance
tjmc 23 hours ago 0 replies      
tl;dr Gruber's still pissed he didn't get the official biographer gig.
Show HN: Themes for Bootstrap wrapbootstrap.com
342 points by coderdude  4 days ago   92 comments top 23
nhebb 4 days ago 7 replies      
I like the idea, and I hope it does well. But what I would pay money for is a series of lessons on how to customize bootstrap. The whole reason I'm using bootstrap for my site redesign is because:

  - I can't find off the shelf themes that meet my needs.
- I want to learn how to do it myself.
- I want a solid foundation to start with.

A codecademy for CSS "cooking" with bootstrap would be great. A quick mover with good design skills could probably make a decent amount of money in a short period if they sold tutorials with focused content. [I'm just throwing this out there in case someone wants to bite.]

nirvana 4 days ago 1 reply      
I wonder if it isn't a good time in the webs evolution to come up with or popularize a theme standard, and if bootstrap isn't a good step in that direction. This might help accelerate adoption and popularity of themes, especially open sourced themes, saving everyone a lot of time. This is the kind of thing I don't feel proprietary about at all, and would rather share my designs with others to improve and extend than re-create the wheel.

I'm working on a web application platform (coffeescript running concurrently across a cluster of nodes, basically). I'm still working on the backend, but once it is released publicly, I want to start building out a built-in frontend. To that goal, I'm planning to ship a web framework built in, and Bootstrap is the leading candidate right now.

I know popularly you buy themes which are collections of HTML and CSS and that they make it easy to have a nice layout without having to swipe a 37signals page-- you just change the content to suit what you want.

I see bootstrap coming from one end- a cohesive framework to make developing pages easier-- and themes being going a step further-- specific designs for everything but the content.

And I wonder if it wouldn't be a good idea to have a sort of theme architecture for bootstrap.

What I'm imagining is that themes could be specified, and developed in such a way that they could be traded as tar balls and quickly and easily used by projects. Much the way wordpress themes are standardized and plug into wordpress, these themes could be standardized and plug into bootstrap. Hell, the bootstrap page has an almost theme creator that lets you customize bootstrap. (http://twitter.github.com/bootstrap/download.html)

I'd love to have the ability to point my web platform at a github page, and have it suck in the latest version of an open source theme for people.

I'd love it if themes became a popular open source item. You may think this is a bad idea, but I see it as taking the framework idea and building another level on top of it. Sure, some people will just use stock themes, others will make custom themes.

... and a lot of people will learn web design by taking apart themes and understanding them.

Does a standard format for bootstrap themes make sense?

(Please don't flame me if I've missed something here- this is an idea, and I admit to not being a bootstrap expert.)

almost 4 days ago 1 reply      
It would be good to be clearer about licenses. It just says "Single Site" right now but it would be good to have a page that clarifies exactly what you mean just in case my idea of what that means differs from yours.

Will exclusive and multi-site license options follow?

Also, on your /sell page there's a heading that says sellers earn between 55 and 75% but in the text of that block it says the non-exclusive share is 35%.

Anyway, as I said below this is awesome and I wish you the best of luck.

pamelafox 3 days ago 0 replies      
I just wrote a blog post on "theming" bootstrap by overriding CSS (as opposed to using Less, since I use SaSS). Might be useful for people interested in customizing their Bootstrap:
mgkimsal 4 days ago 1 reply      
Can we get some sort of live preview option to see the same site with different bootstrap themes, similar to csszengarden? Would be very helpful to see how one similar site will look with different bootstrap themes.


beck5 4 days ago 1 reply      
This is great. I would love a nicer home page for http://www.sharelatex.com. I looked at ones on theme forest but didn't want one framework for my homepage and one for everything else. Will defiantly look at what comes up there.

On stealing the css: your market are people who know the effort it takes to build something and are probably likely to pay $15-$50 for a big time saver.

robinwarren 4 days ago 1 reply      
great idea, and excellent timing as well tbh. The TW Bootstrap look is getting very common out there. My site is built on it and I can see the vanilla TW Bootstrap look ageing very fast.
redslazer 4 days ago 1 reply      
Just wanted to give you a head up. On the /sell page it says earn 55% - 75% on each sale but then in the paragraph it says you earn 35% if you sell it non-exclusively.

Edit: Sorry to be annoying but the sign-in link has a padlock icon next to it which usually indicates a secure connection/SSL neither of which you are using.

Great concept btw.

revorad 4 days ago 3 replies      
This is such an awesome idea. It will be interesting to see how many themes you get. I would never have thought of making a marketplace like this because it seems too niche. But I won't be surprised if you prove me wrong!

Shameless plug: I'm trying to get a new community project going, so please consider sharing this on there - http://swym.me/

highace 4 days ago 1 reply      
This is a great idea and I'm sure you'll do well. The one template that's available and your site itself look very well designed.

However - wasn't the whole point of bootstrap to make it easier for developers to create their own stuff, thus avoiding the need to buy a template? If you want a templated site, just buy one from ThemeForest, because that's exactly what you're getting here except it's built around 'standardized' markup instead of the designer's own.

suresk 4 days ago 0 replies      
Love your idea and really hope you're able to be successful with it. As a developer with absolutely no design ability, bootstrap + some nice-looking themes could really improve the way I build websites - and I certainly wouldn't hesitate to shell out cash for them.

Good luck!

anderspetersson 4 days ago 3 replies      
So, this is great and all, but:

How are you going to prevent people from stealing the themes instead of buying them? One can grab the full HTML and CSS from the preview views.

aarondf 4 days ago 1 reply      
Very well executed, IMO. Some other people have mentioned that themeforest doesn't obfuscate and they're doing just fine, which is true, but they also have additional assets that are needed in addition to CSS. Namely, PSDs.

One way you could increase incentive to buy instead of steal is only show CSS on the preview, but download the LESS file on purchase (if the author used LESS). I'd certainly be more interested in a LESS file.

In the end, I wouldn't worry about it too much, like someone said, people who are gonna pay are gonna pay.

OT: Are you using some sort of "food ipsum" generator for the StackLayer theme? I love it.

vineet 4 days ago 1 reply      
Great idea. But starting with just 1 theme will make it hard to convince potential customers and potential theme creators to use the site.

Perhaps send an e-mail to a couple of handpicked theme creators from one of the other sites to come over - maybe even convert some of the themes for free.

kolinko 4 days ago 1 reply      
Excellent idea. Too bad that it's just one theme for now, but I'll take a look at it tomorrow, and might just buy it :)

Good luck!

jbigelow76 4 days ago 1 reply      
It's a good idea, considering the popularity of themeforest I'm not surprised to see this. But, if you want to charge 20 bucks you'll need to offer multiple pages of samples, the landing page sample doesn't really tell me what a form might look like with those theme elements, or blog post, image gallery, etc...

Good luck with it though.

TomGullen 4 days ago 1 reply      
Is this for landing pages only? I generally think landing pages are a waste of time in general, however this site seems to address my main criticism of them which is that start ups invest far too much time in making them. Good luck with it, looks like a nice well made site!
loceng 4 days ago 1 reply      
I was hoping there'd be a free version of this - though with a paid version you'll certainly get higher-quality options ---- but I can see free versions being useful enough, where there's not too much customization.

Perhaps have a free section? It would be a good way to get free traffic which you can use to upsell to paid versions.

kingsidharth 4 days ago 0 replies      
Biggest problem with Bootstrap was non-distinct visual design. All sites created with bootstrap had same loon and feel which is bad for visual distinction and mind-space.

Themes will be useful in solving that problem. Way to go.

ewalk153 4 days ago 1 reply      
The preview page for themes still has the Paypal link to sandbox
aniketpant 4 days ago 3 replies      
Really don't get the point.

Bootstrap is open source. Most of these themes would be paid. (not good for me)

Don't have much in support of my point, but I would not use this service unless some really _amazing_ designs are put up.

santa_boy 3 days ago 0 replies      
This is eerie! I was planning to make complete websites with themes using Bootstrap just yesterday! :-) .. Here is what I launched about an hr back on my own site! http://bit.ly/zn9Wxc
andrewcanis 4 days ago 0 replies      
Great idea! I would love a valentines day bootstrap theme.
The Story of 2 $1 Million Projects in 24 Hours kickstarter.com
339 points by zachh  5 days ago   78 comments top 18
hop 5 days ago 6 replies      
Hi HN, Casey from the Elevation Dock project.

People use the term disruption pretty loosely, I think crowd-funding is really doing it. Goodbye middlemen, sayonara to the massive traditional barriers to entry. Hello bootstrapped projects like this that would otherwise never see the light of day.

reidmain 5 days ago 2 replies      
This is really starting to show the potential of Kickstarter.

So many of the successful Kickstarter projects have been unknowns. Just really smart and driven people with a dream.

If established companies can bypass publishers and investors by promising to sell a product directly to the consumer then we have a whole new ballgame here.

Double Fine has successfully funded a game where the only promise is that they will release it. That's it. No percentage of revenue to the publisher. The publisher can't demand they add DRM, etc. Their only obligation is to do what they do best because they are only answering to someone who wants a great game, not a return on their investment.

This is big.

ChuckMcM 5 days ago 4 replies      
One has to wonder though, if you priced out your Kickstarter project because you wanted to make one for yourself and well if you could get 100 other people to kick in you would be able to get the better price on parts, and then 10,000 people kick in and now you're looking at something which was 'spend the weekend building up a hundred or so foo-widgets' becomes 'spend the next six months building 10 thousand foo-widgets' that has to suck.
Jun8 5 days ago 4 replies      
Congrats to Kickstarter!! This is the type of win-win startup I want to create/work at. Gives a simple example of pg's essay about wealth not being a fixed cake to share but that it can be created (http://paulgraham.com/wealth.html).

Two things that piqued my interest:

1) They kept saying that they were refreshing the project page to say when it'll hit 1M. Surely a company like Kickstarter has created visualization tools that create nice, real-time graphs of selected projects. No?

2) "After not having a single million dollar project in Kickstarter's first two-plus years, there are suddenly two within four hours of each other." Call it black swan, non-normality, heavy tail, whatever, this shows how common (and lumped) rare events are.

vannevar 5 days ago 5 replies      
So if Blizzard does a Kickstarter and raises $10M in pre-sales for a new game, is that within the mission of the site? I was under the impression that it was a site for projects by people who otherwise wouldn't be able to fund them. This seems to be pushing that boundary.
newobj 5 days ago 1 reply      
I think Kickstarter is the most interesting thing happening on the net today. Simply because it aggregates the most interesting things happening in the real world, by its very nature. Browsing Kickstarter has actually become a fun activity for me.

It's such a simple and genius way of directly connecting producers and consumers, reducing risk for both parties, verifying ideas, creating relationships. So elegant. The number of opportunities this is going to enable is staggering. And Kickstarter themselves, do they have any overhead? These guys are going to be printing money.

And being a patron is fun!

One thing I'm curious about is Kickstarter's exposure to someone who fails to produce the promised rewards for funding. As a funder/patron, do I have any recourse for a producer failing to uphold their end of the bargain?

bvi 5 days ago 1 reply      
Is the money raised through Kickstarter seen as income, and therefore, taxable (meaning that 20-30% of the final amount raised is lopped off)?
sawyer 5 days ago 0 replies      
I love how enthusiastic the Kickstarter team looks in those photos - it's awesome for them to be able to share in the success of the projects on their platform.

I'm looking forward to seeing how it grows and what other projects crop up now that people have seen this incredible milestone passed.

j45 5 days ago 0 replies      
This is really inspiring to see.

I give my respect, admiration, to the empowerment Kickstarter is enabling in the world. People say they do crap like empowerment all the time.. Kickstarter seems to say very little themselves, all I hear is the success stories.

It's a delightfully simple concept: Put a great idea out there and let it be loved and supported.

Ideas that wouldn't have seen the light of day are, fuelled by early adopters and pioneers.

Being on the web for almost 2 decades makes everything look the same, or at least kind of blur together over time.

For me, with information and innovation; since Gutenberg, the web really was the second big thing.

Maybe enablers like Kickstarter are part of the third leap for our world where they are creating change in the real world from innovation.

I've rarely seen something successful on Kickstarter I didn't want to buy. Normally I can't decide as quickly on items in the retail market that compete with it.

The continued popping up of Kickstarter stories and dreams becoming a reality have made me think about all those things I wondered about.

Could they become a reality? Where could I start learning about how to kickstart something successfully? (I Might be a search or two away but the feeling of possibility is great.)

kilian 5 days ago 0 replies      
This must be the epitome of feel-good startup stories. Congrats to everyone involved!
powertower 5 days ago 3 replies      
KickStarter is one of the very few businesses that's truly innovating / disrupting anything right now.

Then Stripe.

Then CloudFlare (I really like their story and pivot).

lwhi 5 days ago 1 reply      
Congratulations to all concerned. I think the Kickstarter model is really powerful, and it's exciting to see that these projects have got off the ground, but - without wanting to be party pooper - what happens if a fundraiser can't deliver?

It seems that Kickstarter have an incentive to raise as much money as possible. After all, they take their 5% - so as a company they've taken over $100,000 in the last 24 hours from two projects alone. Spending a vast amount of money without the necessary battle-scars and bruises gained from experience, is likely to involve a steep learning curve.

Bringing a product to market isn't easy. The fundraisers in question are in a unique position, because they have their buyers' attention and money from the start. This has to be a great thing, and to large extent levels the playing field and creates a great environment for innovation .. BUT, the hard work has just begun.

I can't help feeling that this model of funding is about to gain even more popularity - but could eventually open up a can of worms.

prawn 4 days ago 0 replies      
This is going to put Kickstarter well and truly in the public eye and, as a result, bring many more potential wallets browsing the site. Great time to be an entrepreneurial industrial designer in the US.

Just wish it was open to those outside the US as well.

akazackfriedman 5 days ago 0 replies      
For Kickstarter, business model... Validated! Great job guys congrats! What a great story of someone not playing the startup lottery and winning.
Blocks8 5 days ago 0 replies      
Kickstarter continues to prove that good ideas spread quickly. Where websites show viral growth in user visits, kickstart shows it with real dollars for real products. Very inspiring. Thanks for sharing this post- it lets the community get an insider view of the excitement.
nreece 5 days ago 0 replies      
Every startup should be like a Kickstarter project. Show your concept, find customers who pre-purchase, build product, deliver and scale.

Grow organically.

wildster 5 days ago 1 reply      
Why din't Raspberry Pi use Kickstarter?
1sttimefounder 5 days ago 1 reply      
Why is Ron Gilbert nowhere to find in the celebration photo? Is he really that grumpy & shy?
Craig Silverstein, Google Employee #1, Leaving for Khan Academy allthingsd.com
310 points by jc4p  6 days ago   79 comments top 9
spicyj 6 days ago 6 replies      
I'll mention that we're still hiring for both full-timers and interns. Here's the job post:

Our mission is to provide a world-class education to anyone, anywhere. We already have millions of students learning every month, and we're growing quickly.

Our students answer over 2 million math exercise problems per day, all generated by our open source exercise generation framework (http://github.com/khan/khan-exercises, http://ejohn.org/blog/khan-exercise-rewrite/), and Sal's videos have been viewed over 117 million times. We're just getting started feeding this data we're collecting back into the product to help our users learn more (http://david-hu.com/2011/11/02/how-khan-academy-is-using-mac...). If you're interested in data, analytics, and education, this is a dream gig.

Plus, it's one of the highest educational impact positions you can imagine. We're hiring all types of devs -- mobile, frontend, backend, whatever you want to call yourself. Big plans ahead.


apl 6 days ago 6 replies      
I wonder when they'll start hiring, well, educators. While engineering challenges may exist, Khan Academy's biggest scaling problem seems to be Khan's ability to produce solid content. His biology stuff, for instance, is decidedly worse than the mathematics.

Other than that: great move.

ComputerGuru 6 days ago 1 reply      
Craig Silverstein is someone I've had the distinct pleasure of interacting with one several opportunities over the years. More important than being Google employee #1 is that he's THE Google open source person. He's always involved in Google Summer of Code and personally maintains a number of very cool open source projects on Google Code.

I wish him the best!

SkyMarshal 6 days ago 3 replies      
Do you want to sell advertising the rest of your life, or do you want to come with me and change the world of education?
mikehuffman 6 days ago 5 replies      
I am going to make a wild prediction right now. Taking into account that 2012 seems to be the year of the "legit" free online schools. I am going to predict that within 5 years a person will be able to get a high-school or college degree (possibly accredited) from Khan Academy...and it will be recognized as legit by peers and employers alike.
nickpinkston 6 days ago 1 reply      
Is this another sign that the new sought-after perk is meaningful work? The time of beer and ping-pong tables maybe coming to an end?
maeon3 6 days ago 0 replies      
I hope they can make learning biology, calculus and programming as hours-consuming addictive as modern first person shooters are to teenagers.
nchuhoai 6 days ago 6 replies      
Wow, First John resig and then This, salman Khan must have some great charisma
benhatten 6 days ago 0 replies      
Absolutely amazing for the edtech space to see high profile, tech elite join the industry.
Dreamliner spells out "787" & Boeing logo over US during test flight flightaware.com
305 points by ChrisArchitect  5 days ago   80 comments top 12
DavidChouinard 5 days ago 4 replies      
Similar attempts:

Gulfstream V: http://flightaware.com/live/flight/GLF17/history/20070206/15...

Cessna Logo: http://flightaware.com/live/flight/N750CX/history/20080307/1...

Boeing 747: http://flightaware.com/live/flight/BOE523/history/20110802/1...

Also, a thread from one of the pilots: http://flightaware.com/squawks/view/1/7_days/popular/24611/B...

Interestingly, this required a lot of work on our side to pull this off. Since the route field on flights plans expects short input and this flight's route is dramatically longer, it caused an FAA system to split the flight arbitrarily into different legs.

(Disclaimer: I work for FlightAware)

peteforde 5 days ago 4 replies      
I actually posted this about 16 hours ago (http://news.ycombinator.com/item?id=3574619) and I point this out because it's always fascinating to me when the "right" time to post something on different sites is.

For example, I believe days start at 8pm PST on Flickr (can anyone correct me if I'm mistaken) and there's a power-user perspective that will wait to post things so that they can get a leg up on the "interestingness" algorithm.

Anyhow, this post makes me smile even the second time around.

cperciva 5 days ago 4 replies      
Question for people with more aviation knowledge than me: Don't games like this make life hard for air traffic controllers? 35000' is right in the middle of normal airspace; isn't it much easier if planes are flying along standard routes between airports?
bonzoesc 5 days ago 0 replies      
The test pilots are basically told what part of the world and for how long they have to fly; when they turn in a plan like this basically for the sake of cuteness, that's a lot of work picking waypoints.

This pleases me.

shabble 5 days ago 0 replies      
Reminds me of the 'biggest drawing in the world' viral image that went around a while back, which later turned out to be a hoax: http://www.wired.com/gadgetlab/2008/05/artist-says-he/

Pretty cool that someone actually did it though!

blantonl 5 days ago 5 replies      
A 19 hour flight? How was this even possible without running out of fuel?
matdwyer 5 days ago 2 replies      
Can't wait for the green-team to have their arms up about wasting fuel to do this (even though it's a scheduled test flight
Shivetya 5 days ago 0 replies      
and here I was hoping they were stunt flying it.
rjurney 5 days ago 0 replies      
I can't wait to fly in one of these. The wings bow like crazy, can't wait to see them out the huge windows.
sbanach 5 days ago 0 replies      
WTF? Completely unreadable.
joejohnson 5 days ago 4 replies      
This seems like a waste of fuel for a stupid publicity stunt. Airplanes dump so much carbon dioxide into the atmosphere.
Are You a Zen Coder or Distraction-Junkie? componentowl.com
310 points by jirinovotny  3 days ago   66 comments top 31
dkarl 3 days ago 1 reply      
I've had a lot of different work habits over my career, mostly because of internal psychological factors and external work circumstances. What I've learned from all the variation is that when I encounter a moment of uncertainty and doubt, my brain wants to decide between two choices:

- relaxing and taking a web-surfing break (Facebook, HN, national news) until the uncertainty resolves, or

- gritting my teeth, amping up the intensity, and blasting through to the right resolution while heavy metal music wails in the background.

I think this is because I can't face the possibility that I'm actually having trouble. Programming is easy! I'm smart! I have to be, because I'm not good-looking enough to get away with being a moron who doesn't always know what to do next, who actually has to think when he writes code. What's the point of being alive if you have to be someone like that, both ugly and stupid?

Yes, my brain thinks a lot of strange and stupid things when I'm not paying attention and correcting it.

Neither of the choices that my brain sees as exhaustive alternatives is correct. The best thing to do is relax, tell myself that programming is sometimes hard and it's okay if I need a few minutes to figure things out, and keep working on the problem even though I'm confused. For most of my life I had to be either unusually excited and happy or under some kind of threat, such as a deadline or an upcoming test, before I could bring myself to concentrate on a task that I didn't find easy. Now I do it every day.

What's interesting is that the techniques I use to calm down my mind while it's freaking out over the uncertainty are exactly the techniques I use to keep my mind calm while I meditate: posture, breathing, awareness of body tension, and awareness of my mental states. I also analyze my thoughts and feelings just like I do in insight meditation. Zen coding, indeed!

lysol 3 days ago 1 reply      
There are salient points here, but they're masked by the caricature of a maniac who can't go without Facebook for five seconds and a mythical beast that never gives his brain a break from work. Real developers fit into some reasonable amount of both kinds of behavior and it's the balance that is important, and different for every developer.

Be smart and be true to yourself, not a watered down version of someone else's life philosophy.

greenyoda 3 days ago 2 replies      
"Divide your time into 60 " 120 minutes blocks of work. Focus 100% percent in these blocks of time. Then take a 20-30 minute break and do something else entirely."

This might be usable advice for someone who works at home on his own business, but for those of us who work in office environments, there are sources of distraction that are much more difficult to control than the urge to read news: meetings, your boss walking into your office, colleagues who interrupt you with urgent requests for help, etc. (If you're a developer who also manages a team, multiply this by ten.) The only time I can get an hour of uninterrupted work is after everyone goes home. So I think a more useful question is: how can you get back into a productive state more quickly after the inevitable interruption occurs?

Or, to go back to Zen: how can you lose the attachment you have to the flow of uninterrupted work? When it happens, it feels really good, but when it doesn't happen, it would be better not to get too frustrated about it and be able to move on.

That said, I thought the article's advice to consciously choose stretching or brief meditation over e-mail or news to be something worth trying.

chrislomax 3 days ago 2 replies      
This is the first news story I have bookmarked, ever. Mainly because I got distracted and started reading Mashable.

Jokes aside, I thought I had a form of ADHD with how much distractions distracted me. It's quite comforting to know other people operate this way.

I have recently, as kind of a new years resolution, aimed to be more productive. I have found myself managing my project management list more efficiently and using my "priority" status on my tasks. When I get in, in the morning, I just work top down on my priority list.

My main issue was down to not knowing fully what my next task was so I would spend time finding the task that needs sorting. I have found that the extra 15 mins a day I spend updating my task list has saved hours per week.

This has also helped when you get to the end of projects and you get the small tasks that can take hours to sort when there is no clear defined list.

I'm a task completion junkie, I feel good when I mark a task 100% and the changes I have made so far this year have fuelled my addiction.

Osmose 3 days ago 0 replies      
My personal habit is to play with a small deck of business cards, or sometimes a koosh ball with thin filaments. Both provide a pleasing tactile sensation and are easy enough to mess around with while thinking.

I also find it helpful to use this downtime to review how I've been working. The best thing I learned from the Pragmatic Programmer was to review my coding techniques and patterns, and see where there could be an improvement. Perhaps I spent the last 20 minutes fixing the wrong problem, or perhaps I didn't use a design pattern that would've made my code cleaner and easier to understand. Micro-breaks are a great time for these reviews because the code is fresh in your mind, whereas a retrospective when a release is done requires a lot more looking back.

unimpressive 3 days ago 0 replies      
I already know that I spend too much time on things like Hacker News. (Which is why I take ironic and self deprecating usernames like unimpressive.) Reading, while helpful, isn't helpful past a certain point. The problem is that reading feels just as helpful when you need it as it does when you don't.

It's certainly easier to do something after having read about it. But how much can you really do, and how much of it is truly relevant to your goals? You can't help but feel that not tapping into powerful tools like RSS feeds is damaging in some way. Intangible as it is.

yason 3 days ago 0 replies      
I think I just mostly try go with the flow. Often I don't succeed in that but sometimes I do and it feels good.

Give me an interesting task that has few dependencies to others and you're going to have a hard time removing me from the computer. Give me a loose task that requires a lot of waiting and you're going to have a hard time removing me from HN or from other interests.

If I try to be highly productive all the time, I just fail myself and get depressed. Since that doesn't work I try to optimize my workflow by working on things that benefit from the idle lulls. Tasks that last days or weeks are most suitable: there might be a lot of "idling" but when I get to writing code I can bang 16 hours straight and accomplish in a day what would otherwise have taken ten days.

Conversely, doing a lot of communication-bound work will soon make me feel busy and exhausted. I'll be waiting or polling something all the time, and what's worse, I can't start anything I think is real work because I have to maintain the stack of pending tasks all the time so I know how to unwind when they finish one by one. If I dive into something then it'll take even more time for me to figure out what to do when I next hit the event loop again.

I try to teach myself that even little work is enough: working like I would love to work, the artist's way of work, is pretty much impossible in a business environment. If I'm confident I've done enough eventhough it's nothing compared to a weekend roll with a hobby project, then I don't feel so bad about getting "nothing" done. And when I get done a lot, I try to enjoy it as a precious window of time rather than the minimal bar I should reach in the following weeks.

stephen 2 days ago 0 replies      
I have the best luck staying on task by doodling--keep a pad of paper and pen on my desk, and while waiting for compiling/whatever, just draw.

It's like being bored in class but still needing to pay some amount of attention.


There was also a TED talk that was pro-doodling, so it must be awesome, right?


ohyes 3 days ago 0 replies      
If you find yourself getting distracted a ton, maybe you should take a step back and look at what you are working on?

Do you believe in it?

Do you find it challenging and interesting?

Are you working on something that is important to you and makes a difference?

It isn't about every individual piece of the software being important, it is about being excited about the sum-total and wanting it to be the best that it can be.

I think of it kind of like momentum. You need enough momentum from rolling down the big hill of 'oh my god i'm working on this cool thing', to be able to deal with the uphill of 'mundane crap'.

If you are starting surf HN/Reddit/Facebook like an ADD net-squirrel, maybe you need to work on something cool that you actually want to work on. When you've gotten to a good/excited place on the cool thing, switch back to the mundane crap.

johnwatson11218 3 days ago 0 replies      
One thing that works for me is to have a technical book as a pdf that I can switch to during compile/deploy cycles. The difference is that since it is a technical book that is slightly different than what I'm coding on the context switch isn't that great. Also, pdfs are longer and there is another context that I switch into rather than a list of new topics on Hacker News.
It isn't perfect but it seems like a step in the right direction.
SonicSoul 3 days ago 0 replies      
i found the Pomodoro technique helpful

and if you're honest with yourself, it gives a useful measure at the end of the day of how much time was spent on uninterrupted work.

aDemoUzer 3 days ago 0 replies      
I don't compile (web application) but have period of time when I am running test suite and have to wait.

If I have such free time, there is always something else work-related for me to do, since I am not tasked with only coding.
- Go over the code I have just written.

- It is time to commit, so look at diffs and commit.

- Check the server's performance.

- Go over list of pivotal stories and see what I be doing next.

- Take a break, go for a walk around in the building, check out the beautiful view.

- Go over calendar and see if there is anything I need to not-forget.

- Read something related to programming, a book at work or an article.

- Have a talk with fellow co-workers about something that has been on your mind.

jpatte 3 days ago 0 replies      
IMHO this also as a lot to do with setting an appropriate work environment. On a desktop designed for work you should only have links and bookmarks related to your work. A bookmark to Facebook is a constant reminder that there might be something new on Facebook, and it's sole effect is to distract you.

I also noticed that having an appropriate background music is important. In my case I like to listen to Progressive Trance music (mostly ETN.FM Channel 2), and I have hundreds of recorded shows of 1 or 2 hours each. The goal here is to maintain a rhythm : keep going as the music goes on. I never listen to this music when I'm not working, so I ended up naturally associating it with work.

Every time a music show ends, I take a few seconds to look back on what I did during the last hour : did I complete my task ? Do I need a break ? If I feel stuck or tired I stop the music, switch environment to browse Facebook/Mail/HN/whatever, then come back 20 or 30 minutes later. Then I start by "reloading my context", reminding what I was doing and what problems I needed to solve, having a look on my TODO list (paper), and when I feel ready I start the music again and begin coding.

voidr 3 days ago 6 replies      
What if our brain is actually a multi core machine that has millions of cores? Would you still force it to use one core?

What if the task you just put into background kept working on it's own?

I think humans were built to multitask, our environment is too complex to be single threaded, think driving: you need o pay attention to multiply things at the same time.

farkob 3 days ago 0 replies      
I don't think this article offers anything to solve the problem. I believe most of the people can identify the problem. Yeah you check your mail or facebook while you're working and it causes productivity loss. But just being aware of it doesn't solve the problem. It's like when people try to lose weight they know they have to eat healthy or less but just knowing that again doesn't make them easily lose weight. Because just like losing weight, the problem about productivity isn't about knowing what to do or what not to do. Everybody knows what to do, it's simple, no distractions = better work. Real problem is avoiding that one quick facebook check every day and every hour.
melling 3 days ago 2 replies      
Perhaps the Go language will help the distraction-junkie. Build times of seconds, even for very large projects.


tathagatadg 3 days ago 1 reply      
The last article I read before going to sleep was http://en.wikipedia.org/wiki/Attention_deficit_hyperactivity... - feeling disgusted that surely I'm that unfortunate guy, who was not diagnosed early and carried this into my adulthood.
But that this article sits on top of HN, makes me feel better - I'm not alone with (speed_of_inspirational_input > speed_of_implemented_idea).

My question is be it pomodoro or this bigger focused chunk - I've always struggled at the boundaries. Say you are not done at the end of the stipulated time for focused work - there's this one liner fix that'll only take a second - and that blows it. Ever fell into that trap?

matheusalmeida 3 days ago 0 replies      
I have to agree with the author of the post. I had the habit of checking my personal email, read BBC to see it the world was not in war and checking HN while the project I was working was building (I thought it was no big deal http://xkcd.com/303/). The big deal is that it affected my productivity. Period. When the program finished building or it aborted in the middle of the process of building, I was still thinking about something I read. It always took me some minutes before I was ready again to continue where I was.

Since the project I'm working can have long periods of building time (~up to 40minutes), I've started several projects while waiting for the program to build. Since they are all related to coding, I feel that I can swith taks much easily than reading news/checking email. And I believe I'll become a better programmer because of that (also because the projects I've started are tools to help me to perform my work).

j_baker 3 days ago 1 reply      
Am I the only one who feels that distraction isn't necessarily a bad thing? I find that even my most productive days aren't distraction-free. And oftentimes my best ideas come when I'm most distracted.
splicer 3 days ago 1 reply      
That time is ridiculously tiny compared to the rest of your workday

The project I was working on a few months ago took 40 minutes to build on an i7 with 8 GB of RAM.

Achshar 3 days ago 0 replies      
I am the distraction junkie type but in a good way i guess. Loud music nd distractions (both online and offline) are the main drivers of my workflow. I find that if i have some kind of a mental feeling (out of the computer context) to push me through that code problem which won't solve, i can work alot faster and efficiently. For example i dont have a smartphone right now but i can get one if i finish my current gig then i really think about smartphone in my free time. It keeps the furnace hot :)
xarien 3 days ago 2 replies      
How do you value inspiration or innovation stemming from distractions? I'll go on a limb and state that distractions can be more productive than zen coding...
potomak 3 days ago 0 replies      
I think I'm a distraction-junkie, I'm using Tomatoes[1], a tool to measure coding slots with pomodoros. It works great, but when I'm compiling my code, in my case running tests because I work on web applications, I can't resist to check email. I'll try useful tips from the article like reading while waiting for long tasks.

[1] http://tomatoes.heroku.com

Void_ 3 days ago 0 replies      
I read this article while waiting for the deploy. Whoops.
twiceaday 3 days ago 1 reply      
I find that it depends on the project, but there have been times when I am so focused I start coding in the shower. Then proceed to forget to eat breakfast... lunch... and dinner. I just forget about my body.
damian2000 3 days ago 0 replies      
+1 for the breakdancing horse! I found I tend to be distracted more easily when I'm working on something that is repetetive or isn't really challenging. When I'm working on a serious bug and trying to solve some problem, I don't have any problem getting into 'the zone'.

Its interesting that in Sweden they have workplace laws actually requiring that anyone working at a computer screen gets 10 minutes of rest (away from the screen) every hour.

rbanffy 3 days ago 0 replies      
If you are reading this during work, you probably are closer to distraction junkie. ;-)

I think I can reliably derive my focus from the traffic between my machine and HN.

tobiasSoftware 3 days ago 0 replies      
I would add to this a way to keep on coding while compiling. Sometimes I read the code, which does give a coding break since I am taking input and not producing output. However, at the same time I might discover errors, figure out better ways of coding something, and learn or remember how to software I wrote works.
conradfr 3 days ago 0 replies      
I have ADD and I am in an open space. It's hard sometimes.

Fortunately I do PHP and do not need to compile ;)

dancingrobot84 3 days ago 1 reply      
Great article. BTW does somebody here know great timer app for Mac or Linux? I'm trying this "60 work / 30 rest" pattern, but sometimes problem is so interesting and I just can't keep track of the time:)
dropshopsa 3 days ago 1 reply      
LOL, I checked this post while I was waiting for my programe to compile.
Stripe raises $18 million from Sequoia bloomberg.com
305 points by zds  6 days ago   71 comments top 28
pc 6 days ago 6 replies      
Hey -- just want to say thanks to the people on HN who've given us feedback and encouraged us along the way. We're building Stripe for the kind of people who read Hacker News, and the suggestions we've received here have generally been the most useful feedback we've gotten anywhere.

So, thanks. We're pretty excited about the next few years.

staunch 6 days ago 2 replies      
Congrats guys!

There's a lot to like about Stripe, but my absolute favorite under-appreciated thing is their name and domain name.

Hard to quantify just how much it helped, but I seriously doubt they would have had quite this trajectory with a name like Chargerly.com or even possibly Stripe.io.

pclark 6 days ago 1 reply      
I love their name and I especially love their (old?) logo: http://www.crunchbase.com/assets/images/resized/0012/7313/12...
olivercameron 6 days ago 4 replies      
One thing that YC drills into you is to not settle for B or C class talent. You just have to look at Stripe's team overview to see how talented this company is: https://stripe.com/about

Stripe is a lesson on how to build a company from the ground up. Surrounding yourself with incredibly intelligent people tends to have an outcome like this (both product and valuation). Congrats guys!

kareemm 6 days ago 1 reply      
First reaction: "Good, maybe now they will expand to Canada!"


Congrats gang. I'm sure it's only partially a manpower issue with international expansion - dealing with institutions only moves so quickly.

TomGullen 6 days ago 1 reply      
We're in the UK, and would love to move away from Paypal. Please come to the UK!
Xixi 6 days ago 0 replies      
Awesome product, brilliant people, answered all my emails in less than 15 minutes...

I so much want to become a customer that I'm seriously considering incorporating ShiningPanda LLC (or C-Corp) somewhere in the United States for this sole purpose. And probably dissolving ShiningPanda SAS (French equivalent, more or less, of a C-Corp) to reduce the costs, as SAS are pretty expensive to keep around, and it would become largely pointless.

Do someone have experience with such an endeavor? The part that I can't seem to figure out is how to pay foreign people, living abroad, from an American company. All the while avoiding double taxation.

If someone have references toward a good lawyer / accountant / tax lawyer to figure out all that... My email is alexis dot tabary at shiningpanda dot com

RexM 6 days ago 0 replies      
I love stripe. I got everything setup and accepting payments this morning for a side project in less than 20 minutes before I had to leave for work... It's such a joy to use.
blantonl 6 days ago 1 reply      
$18 million - Wow! Congrats to the Stripe team!

This definitely draws a line in the sand for the online payment provider process. Looks like Paypal has been served.

Disclaimer: my business is a huge Paypal user, but we've been actively looking at Stripe and put in our plans for 2012 to begin to transition to them. Exciting times!

yesimahuman 6 days ago 0 replies      
Congrats guys! I just want to say that I love Stripe. You are really changing the game. I love that you are focusing on developers.

I wonder what might happen down the road when users make mistakes that put themselves in PCI compliance violation (like posting a form to their server with input names, thus sending the card info). What kinds of effects could this have on the business, their image, and the customers?

bmaeser 6 days ago 0 replies      
this is good news. i hope stripe uses this opportunity and expands to europe asap.

congrats to the stripe folks!

Dexec 6 days ago 0 replies      
I've always been extremely bullish on Stripe, so it's good to see this reaffirm my beliefs. Any investor would be crazy not to get in on this.

Proud to see more Irish founders succeeding in the US, and as I know they'll be reading here: good job guys, keep it up.

bostonvaulter2 6 days ago 0 replies      
The $100 million valuation doesn't seem too high to me. Especially considering the huge potential market.
mshafrir 6 days ago 1 reply      
Thanks to Stripe, I think that we'll start seeing a lot more weekend/hobby projects that charge for their service.

(And I think that's a good thing.)

ChadMoran 6 days ago 0 replies      
Stripe is a great example of proper developer experience joy. Good job guys!
rabidonrails 6 days ago 0 replies      
We've been using them since they were /dev/payments...best decision of our lives.
moses1400 6 days ago 0 replies      
Woo! Go Stripe! We use them on CloudContacts and love it.
markbao 6 days ago 0 replies      
Congratulations to the Stripe team!
RegEx 6 days ago 0 replies      
I'm about to use Strip for an upcoming project due to the wonderful things I've heard about it on HN. I'm looking forward to giving it a go!
alexwolfe 5 days ago 0 replies      
Such a great service, it puts Auth.net to shame. Well done guys, congrats.
cwilson 6 days ago 0 replies      
I hope you guys are considering offering payments for marketplaces now as well. Congrats!
kamikazi 5 days ago 0 replies      
Someone pls come to India. There is a serious need for good payment processor out here. Anybody who comes up with even half-decent solution wins 75% of mkt-share by default without any sales/mktg/BDM efforts.
mekarpeles 5 days ago 0 replies      
Congratulations guys, great work on Stripe and awesome + superb customer service
tacheshun 5 days ago 0 replies      
Good job, guys! Congrats!
Please, come to Europe soon!
ssx 5 days ago 0 replies      
Is Techcrunch pissed they didn't break this story?
kimura 6 days ago 0 replies      
If only stripe was around a couple of years ago, we wouldn't have found ourselves locked down with BOA. Having to pay $500 termination fee sucks.
ashhimself 5 days ago 0 replies      
I can only hope your service comes to Australia soon. If you ever need Australian beta testers please let me know.
propercoil 5 days ago 0 replies      
wow nice :)
Tor project needs volunteers to help Iranian users access the internet torproject.org
295 points by folz  4 days ago   48 comments top 10
andrewcooke 4 days ago 6 replies      
does anyone have a configured aws image? seems like that would help - people could just deploy them to micro instances for free...

[i am about to try build this on an aws instance, but since i know very little about images i am sure others will be better/quicker than me]

[update: if anyone else is doing this, you are best picking a new base distro that is new enough to contain libevent 2]

anigbrowl 4 days ago 2 replies      
Not to derail, but the depressing headlines from Syria suggest the need there for secure communication with the outside world is particularly urgent at present.
stingraycharles 4 days ago 2 replies      
Out of curiosity, what prevents Iran from just blocking all Tor end nods ?

If del.icio.us is able to do it[1], surely Iran must be able to too.

[1] https://news.ycombinator.com/item?id=3567996

steve8918 4 days ago 2 replies      
I only know a little bit about tor, but my understanding is that if you run a relay, then you are basically proxying traffic for other people on the tor network.

If this is true, and if someone is looking at kiddie porn through your connection, could you get implicated?

mvip 3 days ago 0 replies      
After reading the post above, I reached out to our cloud vendors and got them to sponsor us with Tor-servers. As of right now, we have five Tor server up and running, and we are expecting more shortly (more here http://wireload.net/2012/02/were-helping-tor-project-bypass-...)
mrleinad 4 days ago 0 replies      
Here's the beauty of an interconnected world. You can actually help someone else directly. People can easily organize around the globe to let those in power know they can't just keep doing whatever they want. Keep up the good fight!
nachteilig 4 days ago 2 replies      
speaking of this, does anyone have the html/images of the iranian block page? I collect them and would really appreciate it if someone was able to send that along. Or does the iranian firewall just drop the connection without the censorship notice?
corford 4 days ago 1 reply      
Would running through an unencrypted socat tunnel (http://freecode.com/projects/socat) defeat the DPI?

If yes, you could setup a tunnel on port 80 and then run openvpn or tor through it. Technically it works as I've done this for a friend in China (but China wasn't doing DPI on SSL handshaking).

I posted this same question on the earlier Iran shutdown thread but was probably too late to get a response (http://news.ycombinator.com/item?id=3577901).

Fargren 4 days ago 0 replies      
I know jack about tor except other than it's purpose, but shouldn't it be possible to configure a virtual machine to do this and upload it, so that one would "only" have to mount the machine and turn it on in order to help?
ck2 4 days ago 0 replies      
Might be good to ask this where major-league hosting providers hang out like webhostingtalk?
Instagram Founder's Girlfriend Learns How To Code For V-Day, Builds Lovestagram techcrunch.com
294 points by kloncks  6 days ago   38 comments top 17
blhack 6 days ago 0 replies      
Dear Everybody:

The most wonderful thing you can ever give somebody is your time.

No matter who you are, no matter how much money you make, most people have roughly the same amount of time. In this sense we're all equal.

So yes, some of us could off and spend enormous amounts of money on each other for gifts...but if I spend a week building something, and Bill Gates spends a week building something, the gift is the same temporal size.

It's like saying "Yes, I could do anything at all with this week of time, but I decided that that week of time would be best spent building something that will make you happy."

There's something that I find profoundly beautiful about that.

This is an absolutely fantastic gift. She should be really proud of herself for learning that quickly, and I'm sure he's over the moon about this as a gift.

danso 6 days ago 3 replies      
According to the article, she started in December from basically scratch. She used Zed Shaw's Learn Python the Hard Way and learned enough Python to then figure out Django and deploy to Heroku herself.

More importantly, she learned enough to gain this insight:

“Learning to program isn't the hard part. The biggest challenge is figuring out how all the moving parts of a web application fit together. There's no book for that,” she said."

jfarmer 6 days ago 1 reply      
Kaitlyn spent the last 2-3 months learning Python just to build this, with no prior programming experience.

What's your excuse, Mr. Non-technical Person? :P

asreal 5 days ago 0 replies      
There seems to be this recurring theme in tech media that "gee, wiz! anybody can be 'coder'!". I call bullshit - this article smells like a PR gimmick. While I have no doubt that she picked up the rudiments of programming within this time, I think it's fairly clear that she had "spilled the beans" in order to take this project to the extent that it is available today.
vigilanteweb 6 days ago 1 reply      
I think the biggest part of this is the effort that she put in to have something in common with her partner. I think that it's a good reminder to everyone with a partner/spouse that putting in the effort to get your hands dirty in something they're interested is a great gift.
matdwyer 6 days ago 1 reply      
This is cool, and a great advertising story for instagram (which is almost more of a present!)

I think my valentine gift will be "why didn't you make the reservation earlier?! Where are my roses???"

smhinsey 6 days ago 0 replies      
Wow, we should all be so lucky.
dmor 6 days ago 0 replies      
The URL slug says it all: awwwwwwwww
achompas 5 days ago 0 replies      
Man, this is so awesome. So soooooo awesome.

I ranted about abstractions below, but this woman shipped code. Dedicated to her boyfriend, no less! I'd be incredibly flattered if I were him, and kudos to her for launching something.

crntaylor 5 days ago 1 reply      
On one hand, awwwww. On the other hand, this makes me feel terrible. I've been learning to code for about a year, I have a job which involves plenty of coding, I have a PhD, and I'm pretty sure that I couldn't build and deploy a web app right now. Very well done to her!
willhines 5 days ago 0 replies      
As someone currently sitting in class being lectured on a strictly theoretical view of computer science, I cannot agree enough that actually working on something tangible and interesting is the best application and way to learn.

In my free time I'm currently developing an app, and whilst the theory is extremely useful for understanding, it only comes into its own when I'm working my way through the everyday problems that projects provide. Kudos to Kaitlyn, more people should dive in at the deep end!

uladzislau 6 days ago 0 replies      
Love the URL for the story :)
apricot13 5 days ago 3 replies      
this was lovely, until you get the the last part, which just completely ruined the story.

Trigger suggests creating classes specifically for women who want to code as a possible solution to this particular digital divide, the trick is to not be intimidated ,“[Code] is something that nobody should be afraid of. “

willyum 6 days ago 0 replies      
Is this related? there's even a link to how to make a heart.. but I feel like it's too recent: http://www.reddit.com/r/learnprogramming/comments/phimd/lear...
rdg 5 days ago 1 reply      
Am I the only one who doesn't believe this? It's way too strange...
donky_cong 5 days ago 1 reply      
This is news ?
purplefruit 6 days ago 3 replies      
Please don't take this the wrong way, but does this really belong on the front page of Hacker News? This is like celebrity news for nerds. I care about what Angelina got Brad for Valentines as much as I care about this.
V for Vendetta and the Rise of Anonymous - by Alan Moore bbc.co.uk
290 points by waitwhat  5 days ago   86 comments top 11
kqr2 5 days ago 2 replies      
Obligatory quote from the movie:


  There are of course those who do not want us to speak. I 
suspect even now, orders are being shouted into telephones,
and men with guns will soon be on their way. Why? Because
while the truncheon may be used in lieu of conversation,
words will always retain their power. Words offer the means
to meaning, and for those who will listen, the enunciation
of truth. And the truth is, there is something terribly
wrong with this country, isn't there? Cruelty and
injustice, intolerance and oppression. And where once you
had the freedom to object, to think and speak as you saw
fit, you now have censors and systems of surveillance
coercing your conformity and soliciting your submission.
How did this happen? Who's to blame? Well certainly there
are those more responsible than others, and they will be
held accountable, but again truth be told, if you're
looking for the guilty, you need only look into a mirror. I
know why you did it. I know you were afraid. Who wouldn't
be? War, terror, disease. There were a myriad of problems
which conspired to corrupt your reason and rob you of your
common sense. Fear got the best of you, and in your panic
you turned to the now high chancellor, Adam Sutler. He
promised you order, he promised you peace, and all he
demanded in return was your silent, obedient consent.

Helianthus 5 days ago 3 replies      
Interestingly, Alan Moore manages to miss the point and be spot-on at the same time.

Nowhere does he seem to cotton to the nature of Anonymous, the disavowal of identity that accompanies taking up the mask: even though _he himself_ demonstrated the succession of V.

But that's perhaps to be expected; the movie necessarily completed the image of the mask by making it abundantly clear that it is when the _group_ takes up the mask that the mask has power. You cannot punish one if you must punish all.

At the same time, he is clearly in tune with the movement. "Today's response to similar oppressions seems to be one that is intelligent, constantly evolving and considerably more humane."

All in all I read (if I may) V for Valediction from a man who thanks the movement for validating his work, and encourages the next generation just as an intellectual parent ought.

And also like a good intellectual parent, he points to his own heritage... "Some ghosts never go away..."

wingo 5 days ago 1 reply      
Ah, Alan Moore. I love the man.

Here's a lovely interview with him, from "Mythmakers and Lawbreakers", a work on anarchist fiction writers:


The book:


Some of the interviews are better than others, but the Ursula K. Le Guin and Alan Moore ones really stood out for me.

mindcrime 5 days ago 5 replies      
The thing I find interesting / amusing about the "Guy Fawkes" masks from the movie, is the extent to which they have been embraced by at least 3 or 4 fairly different, even seemingly opposing, groups. Looking around, I've seen these masks associated with:

1. Radical libertarian / anti-government types

2. Tea Partiers

3. The OWS movement

4. Anonymous

The moral of this story may just be that these groups have more in common that you would suspect at first blush.

bad_user 5 days ago 0 replies      
Btw, I'm a Romanian and tomorrow I'll also be joining the protest. I'm in the process of co-opting some of my neighbors. Please do so too.
tripngroove 5 days ago 0 replies      
Just saw an awesome documentary on Anonymous at the Slamdance Film Festival (Sundance's indie younger sibling). Interesting and well made. Would recommend it for anyone who is interested in Anonymous/Hacktivism.


Interrobang 4 days ago 0 replies      
"Our present financial ethos no longer even resembles conventional capitalism, which at least implies a brutal Darwinian free-for-all, however one-sided and unfair. Instead, we have a situation where the banks seem to be an untouchable monarchy beyond the reach of governmental restraint, much like the profligate court of Charles I."

I couldn't agree more.

imjoel 5 days ago 0 replies      
It's hard for me to align myself with Anonymous because I really don't like how they give support to the ideas I agree with, but, man, it sure does look exciting from where I'm standing.
cicloid 5 days ago 3 replies      
Who has the copyright on the Guy Fawkes masks?

Forget it, the design belongs to Time Warner.

KiwiCoder 5 days ago 0 replies      
Tangential Alan Moore - Alternative thought for the day at http://news.bbc.co.uk/today/hi/today/newsid_9669000/9669590....
paulhauggis 5 days ago 4 replies      
Anonymous is a childish sudo-terrorist group that has thrown multiple digital temper-tantrums because they haven't gotten their way.

Even if I support their views, I would never want to be associated with them.

The Management Team - Guest Post From Joel Spolsky avc.com
292 points by pors  2 days ago   60 comments top 24
edw519 2 days ago 2 replies      
I've never been very successful communicating to my customers and bosses the difference between a "super programmer" and a "mortal programmer". It's a critical distinction that eventually must be understood by organizations that build software. So instead of trying to explain, I just email them this link:


Then they finally get it.

Now I have another link to help them understand why their management style isn't working they way they think it should. Thank you, Joel.

A few more Joel links like these two in my back pocket and I won't have to spend so much time explaining much of anything anymore. I can just go back to building stuff.

michaelochurch 2 days ago 5 replies      
The saddest thing about the Steve Jobs hagiography is all the young “incubator twerps” strutting around Mountain View deliberately cultivating their worst personality traits because they imagine that's what made Steve Jobs a design genius. Cum hoc ergo propter hoc, young twerp.

I loved the swipe at the fake Steve Jobs's out there. I worked for one, although he wasn't young and it wasn't in Mountain View. He would cite Steve Jobs to defend defective practices. It was ridiculous.

It's a great essay, and I like Spolsky's management philosophy a lot, but I don't entirely agree. A business isn't academia. Businesses have to ship products and please their customers, and leaving these tasks to "the crowd" doesn't work. "The crowd", when we're talking about software engineers, produces brilliant chaos. That's great sometimes, and it can produce excellent products, but it's not good when you need focus or to meet a ship date. Sometimes a CEO or CTO needs to decide what gets worked on, how people do it, and to motivate people to make sure it happens.

Likewise, sometimes a leader needs to step in and resolve bike-shedding conflicts among two equally smart, strongly opinionated engineers who disagree on a core question, and to look for a compromise. "Management fiat" shouldn't be used lightly, but it's not without purpose.

That said, I think Spolsky deserves a lot of props for pointing out that the managerial relationship is two-sided. A lot of companies and bosses don't figure this out until they face uncontrollable talent bleed, and even then there's a lot of self-deception (I've known some ineffective managers to become bitter about their best reports "abandoning" them, as if it were some ethical lapse, but never to own up to their role).

nadam 2 days ago 1 reply      
"Command and Control probably worked great in the toothpaste factory where Charlie Bucket's father screwed the little caps on tubes."

I thought that it is totally obvious that the more intellectual and complex the task is, the less the hierarchical 'command and control' approach works. I think this is told in the first one hour in any course about management.

I once stated it here but state it again: the older I grow the less useful I find the posts of the great bloggers (Joel, pg, etc...). Their posts are usually good feel-good posts for us developers, but in their posts they overabstract and oversimplify everything (overabstraction can be also called 'architecture astronautism'), when what really matters are pretty much in the details (or at least cannot be communicated in such simple blog posts), and depend on hundreds of parameters, and I am sure they bacame successful because they have been taking care of the details in their everyday actions.

SoftwareMaven 2 days ago 1 reply      
I agree with this post, but it is very light on details. "Don't be a douche. Let your employees think." thanks for the tip...

So, to that end, my management tips:

1. Make sure people are working on the right things. This is most important and where Joel's academia argument breaks down. The problem is that everybody in the company doesn't have a transparent view of everything in the company (past ~10 people).

To do this, you ask questions and provide information. "Why is this the most important thing?" "What about <some thing they may not know>?" Etc. ideally, you are proactively providing that information, but if your employees are always waiting for you to provide information, you are the bottleneck.

2. Cultivate communication. Make sure the rit people are talking to each other. Make sure the environment is sipuch that people not only want to, but are incentivized to talk to each other.

3. Be open about when you learn something new. Few people don't enjoy teaching the boss something new. Give people that opportunity.

4. (EDIT: Forgot one of the most important) Conflict resolution. At some point, two very smart people are going to disagree. Your job isn't to pick a winner (usually), but to make sure resolution happens.

I'm sure there are others (feel free to tell me!). FWIW, I don't think I'm being original here. For details on how to do many of these things, Joel's blog is not a bad place to start (though I really don't like the lunch thing at Fog Creek ;).

petercooper 2 days ago 0 replies      
I'll bet more entrepreneurs model their behavior on Captain Picard from Star Trek than any nonfiction human. [..] Turns out, it's positively de-motivating to work for a company where your job is just to shut up and take orders.

I like the post, but.. at the risk of sounding like I've thought about this for too long, Picard's management style wasn't of the tough "command and control" style described here.

Picard's crew had a significant amount of autonomy and a reasonable scope to question their direct superiors (although going too far up the chain usually seemed to backfire). The buck always stopped with the Captain and he set the crew's overall mission, aims and goals (with significant input and advice from his crew) but in terms of the day to day running of the ship (and even many of the crisis situations) he was not at the center of most decisions and relied heavily on his crew to do the right thing.

All this makes me realize that as much as being a sci-fi show, TNG was particularly good at demonstrating management styles and crew relationships (with many episodes dedicated entirely to these matters or contrasting them with those of other crews and civilizations).

lifeisstillgood 2 days ago 1 reply      
The Tina Fey autobiography / jokebook had an interesting comment - one of her mentors explained that the role of a (TV) Producer was to reign in / prevent creativity. The idea was you had hired amazingly creative people, and if you did not provide necessary constraints the whole would be way less than the parts. (the example was asking the props dept for a teacup. No not on a silver platter the reflection will kill the camera, no not with sugar tongs these are simple countryfolk etc etc)

Steve Jobs is just an extreme example of this role - provide a common vision, explain the constraints and edit edit edit the great ideas coming at you. (nb editing is not the same as directing, something I tend to forget I my code reviews - an editor should accept a brilliant idea and change the other work to fit it in, a director, directs...)

yurylifshits 2 days ago 1 reply      
I use the following model:

    CEO is defining desirable outcomes, defines WHAT TO ACHIEVE
Team members are defining HOW TO ACHIEVE

CEO is a resource to the team, providing knowledge, connections and keeping project documentation up to date

eykanal 2 days ago 2 replies      
Excellent post on the outline of his management style, but far too short on details. How does this management style deal with inevitable conflicts between engineers? How does this style deal with pivots? Who makes hiring decisions for managers in this layout?

I imagine that this could work, but this would seem to scale even worse than the traditional model; four thousand engineers, all of them "bosses", does not a productive company make.

brador 2 days ago 0 replies      
Someone send this to Page.

I've said it before and I'll say it again, leaders need to make a culture and create a managament style THEIR way. Whatever works for them and their company, not attempt a copy/paste of another CEO.

Engineers can't adopt a designers management style overnight because they don't have the background to attain the respect their decisions will require.

Just like coders hate an MBA telling them to build the next facebook in 3 hours because it's "just a few pages and they all look the same anyway, how hard can it be?".

wheaties 2 days ago 1 reply      
Great post. I'm going to show this to management because this is exactly the idea that they advocate yet they keep hearing they should be more like Steve Jobs. Not many people would want to work for a pseudo-Jobs. Problem is, there seems to be a plethora of them out in the wilds of big corporate America.
edderly 2 days ago 2 replies      
What I'd like to understand is why is management professional training so oriented towards 'leadership' if you believe that facilitators and administrators are required.

Working for a large multinational tech firm, I recently saw them launch online training across all the various disciplines. Much of the management material is about leadership, whereas non-managers are considered 'individual contributors'. Doesn't this seem to run entirely counter to the philosophy espoused here?

Duff 2 days ago 1 reply      
I think the university analogy is distracting from the real point. He's advocating a form of servant leadership, which is where the CEO/President/etc is perceived more like a steward than an autocrat.

If you've ever worked for someone who had a broad array of responsibility, was universally respected, displays humility, and available to help resolve problems, that's what Joel is talking about. A great professor tends to adopt this role -- which is probably where the university analogy came from.

The "catch" to this style is that you actually need to be respected, empathetic and humble. (Know-it-alls need not apply.) That usually comes with lots of experience.

danbmil99 2 days ago 0 replies      
The style of management he recommends works well for companies in the size scale of 30-100 people. I believe it breaks down after that, and, ironically, as you grow to a few hundred and into the thousands, you actually have to shift back to more of a command/control structure or you risk evolving into a bureaucratic entitlement kind of organization. You still need to know how to trust and delegate, but you (and by extension your now necessary mid-level managers) also need to be able to shut down the endless bike-shedding (which has now morphed into full-on ego flame wars) and make executive decisions to prune the tree of possibility and keep things moving along productively.

I think Google is a good example of a company that is (later than most) realizing the academic model only scales up to a certain point. They now seem to be moving towards a much more traditional Cpt Picard/Steve Jobs-run type of organization, from what I've gleaned.

spitfire 2 days ago 0 replies      
What's needed isn't more or better management and communication.

But to design a system whose secret lies in what's unstated or not communicated to one another (in an explicit sense)"in order to exploit lower‐level initiative yet realize higher‐level intent, thereby diminish friction.

If this is the state of the art in tech companies, I'm very blessed to have a real durable competitive advantage.

skrebbel 2 days ago 0 replies      
Didn't everybody already know this? I'm not particularly in Silicon Valley, but I really thought most startups work the way Joel describes, instead of with the fake Steve Jobses. Was my idea of the world too good to be true?
twainer 2 days ago 0 replies      
In my views, it's mostly about balance rather than picking between divergent choices. Who says one can't be a firm leader also capable of soliciting and respecting the opinions of others?

The NY Giants won the SuperBowl as you note, with a famously dictatorial top-down coach [Tom Coughlin]; the NY Jets didn't even make the playoffs with a very horizontal come-as-you-are coach [Rex Ryan].

Interestingly, Coughlin didn't win any SuperBowls - he now has two - until he learned to loosen up. And by all appearances, the NY Jets won't win one until Ryan learn to tighten up.

Apologies for all the football references:) But I suspect Mr. Spolsky would understand very well.

rehack 1 day ago 0 replies      
Did not like this post. Like many others over here, I also have read all the great posts by him over the years, on joelonsoftware. But, honestly, this one just does not cut it for me.

He is over simplifying everything. And his extreme view ends demoting the "top" of an Organization's chart. Heck I won't want to start a company to just move furniture around.

And you can not have a binary classification for a CEO - Steve Jobs or not. In reality there will be lot of people who are perhaps very skillful, experienced and work very hard at the top. So their skill level might be closer to Steve Jobs than your average Joe. So you have to treat it like a spectra.

He makes a very fair comparison of developers and similar in a software company with that of a toothpaste company. But his fairness goes for a toss, when he compares the people at the "top". IMO just administrators should have no place being in a software product company in the first place.

He makes a good point, that its best for the organization that if all the brains are used rather than just one brain. But he goes to the other extreme to make this one point.

Experience does have a role after all. A fresh bright programmer might want to code everything up in the latest shiniest thing, if you _know_ that its a wrong decision. Then is it not your duty to explain him and convince him.

In such a situation, who has the luxury of acting like a university Chair, and setup a committee to take the right decision? :-)

So the comparison with university is wrong. I see another comment in this thread referring to 'architecture astronaut' in the context of this post. IMO, this is more of 'architecture polish' ... just skims the surface :-)

brudgers 2 days ago 0 replies      
Executive summary:

A manager's job is to make the coffee so their secretary can prioritize their inbox.

tnicola 2 days ago 0 replies      
> Seductively, it even works OK for a three person company.

Anyone who thinks command and control is a good idea with 2 other people has got bigger fish to fry than finer points of effective management.

crb 2 days ago 0 replies      
I wonder why the CTO sits above the VP Engineering in Joel's picture? Is this generic, or specific to Jeff as the SE CTO, perhaps because he wanted to code, rather than manage?
demian 2 days ago 0 replies      
I don't agree with the hole post, but the "administration layer" paradigm Joel has been proposing is kind of interesiting. In a way, it's the extreme opposite of the norm, and that's good, it challenges the way people normally think about "managment". It's humanistic by design. The problem is that, as not everybody is Jobs, not everybody is Spolsky.

This shouldn't be read as a sctrict methodology or recipe to copy. In programming, as Joel wrote, there are cheffs and there are McDonal's "burger flippers". That analogy also applies to managment.

_k 2 days ago 0 replies      
It's always going to be a pyramid.
But you have to value and trust those whose daily decisions have the biggest impact on the customer's experience.
Whether that's in product design, tech support, customer service or sales.
It's de-motivating when you're working for managers who don't understand what that means.
Joel is right but he's a bit harsh on Steve Jobs.
I'm sure Steve Jobs was a pain in the *ss to work for but Steve did value designers more than any other company and he did value the people at the Genius bar more than any other retail company ever did. And I think that's exactly what Joel's article is about.
linsane 2 days ago 0 replies      
Based on this, one would think that the "support/administrative/service corps" would receive much less compensation than the "talented individuals" who do all the real work. A lot of organizations preach or follow this philosophy, but I have yet to find one that puts its money where its mouth is and distributes compensation accordingly.
MattyDub 2 days ago 0 replies      
I thought the Latin phrase was "post hoc ergo propter hoc". Is "cum hoc..." also used?
I am a great programmer, but horrible algorithmist leftnode.com
287 points by leftnode  5 days ago   178 comments top 69
edw519 5 days ago  replies      
I am an excellent eater of hamburgers, but a horrible eater of cows.

If you can build large scale systems, you can code complex algorithms. It's really just a matter of breaking down your problem into bite size pieces and confronting them one at a time.

These days, I'm happy to get my ground beef from the supermarket and my building blocks from repositories, even though I know that I could move multiple levels back up the chain if I really had to.

agentultra 5 days ago 1 reply      
If you never actually use them during your career, at least it will help you feel more like a programmer.

By whose standard?

Don't conflate what you enjoy about the craft with the ideals of others. If you don't like algorithms, don't write algorithms. Life is too short to begin believing you're a poor programmer because other people say you have to know algorithms to be a programmer. If you are writing programs with a programming language and having fun then the rest of them can jog off.

Unfortunately we tend to self-select towards being overly competitive. Trust me, I put too much emotional stock on my craft. I love programming. And I got caught up too much in what other people thought made a good programmer. The truth is that it's a big field and there's room for all different kinds of programmers.

Just don't think for a moment that you're not a programmer. Someone who claims, "you're not a programmer unless you can implement the Fast Fourier Transform in your sleep!" is a posturing nin-com-poop. The intellectual equivalent to a peacock. Or a jealous chihuahua. If you like what you're doing, keep doing it.

And if algorithms are something you're interested in there are plenty of books to get you started (The Little Schemer series being my favourite).

irahul 5 days ago  replies      
I don't know. If you are struggling with A* search, and claiming to be a great programmer, it sound contradictory. I am assuming poster was familiar with graphs and graph searches before he stumbled onto A* search.

Recursive/Non-recursive dfs should be pretty much obvious to a comp sci student. Here is a sample non-recursive dfs:


A* search is the same, except you change the $graph to include costs, and change the `queue` implementation to pop based on a heuristic function(cost from source till here + cost to dest).

I am not saying a good computer programmer must know A* search - I am saying if you are a programmer, your thought process should be molded in a way you start finding these things obvious.

I can't think of any programmers who I personally know, or otherwise, who aren't well versed in algorithms. Familiarity with algorithms serves 2 purpose:

1. It gives your mind general elasticity and agility.

2. Many times, it gives you foundations on which you build.

I recently wrote this small python lib which converts xml to python dict and vice-versa https://github.com/thoughtnirvana/xmldict. It came naturally to me as I was simply implementing a recursive-descent parser. I don't think had I not known about parsers, the solution would have come naturally to me.

That is just one example. There are other examples involving dynamic programming, counting sort...which translates nicely to real world use cases, and if you don't know the basic algorithms, you end up re-implementing a second-class substitute badly.

btilly 5 days ago 1 reply      
Life lesson here. Anyone who claims to be great, almost certainly isn't. This is a case in point.

At the risk of offending everyone in this thread, this is written by a mediocre to reasonable programmer with no clue about his limitations, with little idea of what good programming is. He does a lot of things that he has heard about. He is used to being around bad programmers. He's used to finding problems in PHP code all day long.

Having a bad comparison set makes him think that he's better than he is.

But you cannot actually be a good programmer without having a variety of skills. Wonderful, you got your system working, do you understand it? For instance if your system has a performance problem, how do you begin to address that? How do you find problems? How do you track it? How do you fix it? How do you monitor it in the future? This stuff is important, and these are things you really can't do without having a good understanding of algorithms.

Of course understanding algorithms is not enough to be great. But it is necessary.

If you want an actual great programmer, look at Jeff Dean from Google. See http://research.google.com/people/jeff/ for a list of what he has done. He doesn't just write code. He doesn't just put systems together. He doesn't just mentor people. He doesn't just understand algorithms. He doesn't just test stuff. He doesn't just come up with infrastructure.

He does all that. And more. Excellently. (And is reportedly very modest about his abilities.)

PaulHoule 5 days ago 2 replies      
Architecture, in many ways, has trumped algorithms.

Back when I was a 10 year old kid, if you wanted to sort something on a microcomputer you had to write your own sort in BASIC or assembler, or if you were really lucky, FORTH.

Today if you want to sort something you can use UNIX sort or the sort built into languages like Java/PHP/C#/Ruby or you can use ORDER BY in SQL.

The increasing trend is that complex software systems encapsulate algorithms. Declarative languages like SQL are the ultimate -- a good relational database has a collection of internal memory, external memory and possibly parallel algorithms for which it will find the best choice for your particular query and data.

I'm skeptical of the "baby steps" approach that people have advocated where you do some busywork to figure out how to re-implement the addition operator and such. That's how computer science works, but CS education has a terrible batting average at producing effective developers. I can't stand hanging out on proggit these days because so many people are stuck on sorting algorithms and obsolete content from Knuth's ACP.

Personally I look at the algorithms literature the way a Somali pirate looks at a shipping lane. I look specifically for advanced algorithms that solve my problem and that I can't find good implementations of. It can take some time to wrap my head around, say, binary space partitioning or suffix trees, but at least I'm motivated.

I'm always thinking about the choice I have between implementing something new and reuse.

dahart 5 days ago 1 reply      
You are selling yourself a little short. And unfortunately some of the commenting public here can't see through your self deprecation, and just add insults thinking they're smarter. They're not.

Algorithms, the kind you're talking about, are HARD. All of the algorithms you gave as examples were originally research papers that took months to years to develop. All of the algorithms you cited are algorithms that pretty much EVERYONE gets wrong the first time, no matter how good they are or think they are.

The big question is do you want to write algorithms, instead of, or in addition to, the other kinds of programming? If coding sorts, searches and crazy data structures interests you, then DO IT! It takes practice and patience, and it probably won't end up better than large scale efforts you find in libraries, but it is FUN!

Cryptography in particular is fun because you will definitely get it wrong. Everybody gets it wrong, everyone here claiming they are good algorithmists will definitely royally screw up a crypto implementation, and very, very few people can come up with anything remotely decent on their own. The handful of people that can do it as their life's work.

jconley 5 days ago 1 reply      
Don't worry about all these egotistical computer science bigots on HN telling you that you are inferior because you can't wax poetic about the work of the scientists in our field.

Understanding performance and result trade-offs of various sorting algorithms is sometimes useful. But usually not.

Understanding how the nagle algorithm works in TCP is sometimes useful. But usually not.

Understanding how the A* algorithm works is sometimes useful. But usually not.

Understanding how zlib works is sometimes useful. But usually not.

That is the beauty of our field. We can build larger and more complex systems because others have laid the foundation. Actively seek out and learn relevant existing algorithms and libraries when you need them.

All of this stuff may or may not be useful to know. However, it is largely irrelevant when it comes to getting shit done in most bits of software. Sometimes, ignorance is blissfully productive.

What makes you happy? Screw the rest.

stevelosh 5 days ago 4 replies      
My advice would be to start by practicing small algorithms first, then move on to larger onesAnd by small, I mean small. Not binary-search-sized, even that is too big.

Start by giving yourself two functions: "add1" (adds one to a number) and "sub1" (subtracts 1 from a number). Then build normal addition:

    def add(x, y):
if y == 0:
return x
return add(add1(x), sub1(y))

This is a pretty simple algorithm, but it helps to get you in the right frame of mind to figure out larger ones.

The Little Schemer series of books is a great (albeit quirky) introduction to stuff like this (and other things too).

amix 5 days ago 1 reply      
I remember reading DHH's blog post about him sucking at math and focusing on solving easy problems: http://david.heinemeierhansson.com/arc/000462.html

It's a good read for those that think that you need to be a super mathematician and know every algorithm to be an awesome programmer. Programming is much more than algorithms and maths. I think it's terrible that some companies judge programmers by how many algorithms they know, it seems like a bad filter, because you will filter out people like DHH (and a ton of other great programmers).

ChuckMcM 5 days ago 0 replies      
This is an often pondered question. The only right answer is the aphorism 'know your weaknesses, know your strengths, do.'

The longer answer is that programming covers a broad swath of complexity and few if any people are masters across that whole area. The closest analog I know of is cooking. There are literally billions of people who can cook, but they are also all different, some have excellent technique but can't pick spices, some have an intuition for compatible flavors, some have a knack for presentation, it goes on and on. But if you make great meals and everyone loves them and says how tasty and satisfying they are, should you stress about how you've never been able to master making souffles ? No. Recognize that when a souffle is called for you'll need to do a bit of extra work around that part of the meal, maybe even call in someone for whom souffle is 'easy' and do a great meal.

TheCapn 5 days ago 0 replies      
To me a "good programmer" isn't someone who can recide sorting algorithms or the like. A good programmer is someone who can properly identify the right tools for the job and adequitely apply them to the given scenario.

A good programmer knows why one algorithm of a certain classification is right for the job. He/she may not be able to memorize it to put it down but they know why one would need to apply it and can then consult notes/google for its implementation.

Patterns are a good example of this. If someone can conceptualize the problem they're facing clearly enough to know that they need a facade that signals a good programmer. The guy down the hall who memorized how to build a facade pattern but can't identify when its actually needed isn't necessarily a good programmer (but not necessarily bad either).

Algorithms are tools. You don't drive a screw with a hammer in the same way you don't use certain algorithms for the task you have in front of you. You need to know what kind of screw driver is required to be a good programmer.

I could rant on and on about metaphors and the like but the point is pretty cut and dry. Who cares if you can't slap out algorithms on a whim (well, interviewers care I guess) what matters is that you know when you need to apply a depth first vs. a breadth first search.

AznHisoka 5 days ago 1 reply      
Be a great problem solver and don't worry about the rest. A lot of computer scientists know a ton about B-trees, A* search (I got a BS and MS in CS, and have been coding for 10 years, and dunno what the heck this is), quick-sort, heapsort, etc.. but have not produced anything substantial to show for it.

Then there's dudes that know only PHP and have built something that solved a crucial need.

Don't be the first dude. Be the 2nd.

lutorm 5 days ago 0 replies      
As many people have alluded to, I think the two are not the same thing. It seems to me that the difference between a programmer and an algorithmist is akin to the difference between a physicist and an engineer. One is focused on solving ideal problems, while the other has to know something about that, but ultimately the day to day work is much more about system building and finding a solution that works in the, much more fuzzy and dirty, real world.

There are many examples of this dichotomy. An architect has to know something about structural mechanics, but ultimately is more about finding a solution that fits within the constraints of structural mechanics that also does what it's supposed to in the real world.

niels 5 days ago 2 replies      
Yep, I'm exactly like you. I also have a CS degree, but after many years of doing web dev. I feel stupid. I have recently started buying books that teaches algorithmics in a more easy approach.

I am currently reading "Python Algorithms: Mastering Basic Algorithms in the Python Language". I can't recommend it enough. Besides clearly explaining the basics, it helps you learn how to think about transforming naive solutions in to efficient algoritms.

Besides that, I find it fun to practice on code tests provided by codility, interviewstreet etc.

mdoerneman 5 days ago 0 replies      
This article is very timely for me as I have been thinking about this a lot the last few days. I graduated with a degree in computer science, but like the OP, I didn't study as hard as I could have (I would have a different mindset if I was in college now). It's only been about 8 years since college but I don't remember much at all about algorithms and Big O.

I have been programming in Rails for the last 5 years (on the side) and I'm surely not thinking about algorithms while I am programming. I usually am just hacking it together to get it to work, with help from Google, Stack Overflow, Ruby documentation, etc.

In college I feel like I had the mindset of just getting through the classes and graduating instead of actually learning and applying this information. I think it was just hard for me to see a connection between things I was learning (such as algorithms) and real world applications.

I'm definitely going to spend some time revisiting and relearning algorithms.

karterk 5 days ago 0 replies      
To me, programming has always been about building stuff. This rule governs all decisions I make with respect to software. Programming language? Pick what's suited to the problem. Database? Pick what will be elegant to model your problem.

A programmer need not be a computer scientist. If it brings you joy in building so called CRUD apps, so be it. I know there are some who look down upon that and think that programming should be all about writing beautiful code in Haskell and Lisp.

However, you should know what you want. What others perceive of you is hardly a concern unless it correlates to your own goals.

daviddaviddavid 5 days ago 2 replies      
I suffer from an interesting variant of OP's condition: I'm good at algorithms but I don't know their names and I don't really have a storehouse of them in my head.

So basically, I often write code that a CS grad would look at and say "Hey, that's the visitor pattern." and I'm like "Oh... cool!".

I'm the same way with music: I play jazz professionally and I'm an "ear player"... I have no technical vocab to describe what I'm doing but I get along just fine.

I'm sure knowing these things more formally would help but honestly, I think having good intuitions can take you pretty far.

Also, my recommendation for honing problem solving chops:


benaston 5 days ago 1 reply      
This is a real problem in the industry IMO. You do not need to be a good algorithmist to be one of the outstanding programmers in most industries. You just don't. The most important contributor to being a good programmer is excellent interpersonal communication - something that is unfortunately actively filtered out by many interview processes.

Take SOAP for example - that whole "bag of hurt" was created due to a lack of communication between developers (those who created HTTP and those who were developing web-based RPC (i.e. SOAP).) The accidental complexity of SOAP versus the more effective REST (leveraging the existing HTTP platform) and the problems that come with the inner platform effect have cost the industry millions (if not more.) I'm sure SOAP had some super smart guys on the team, but it took them years to speak to someone on the HTTP effort earnestly enough to realise they were replicating features of the platform they were building upon.

Or take XHTML vs HTML5 vs HTML 5 (the space before the "5" is important to the W3C apparently.) Just google for discussions about the rift between the W3C and the WHATWG - to me it smacks of "geeks" (and I use that term perjoratively, knowing that I am a geek) not communicating properly.

Finally: on spec, on time and on budget software development is far, far from a solved problem. There are so many knarly issues in most organisations - code maintainability, code testability, development process, effective test writing, refactoring, release mechanisms, team work, navigating politics... naming, even.

All this, before you worry about whether to use this library (and it usually will be a library) or that because of a slightly different algorithmic implementation.

We need the algorithmists - but we also need the guy who can break bad news to the project office, the guy who can construct beautifully simple object models and the guy who really knows what testable code looks like.

These are all orthogonal skills.

vilya 5 days ago 0 replies      
To be truly great you need both skillsets. Otherwise you're merely good.

In my opinion.

larrydag 5 days ago 1 reply      
As a statistician and Operations Research professional I find this somewhat common among programmers. I also find it baffling but understandable. To me the computer and software is just a tool for creating algorithms and making better models for decision analysis. I believe a lot of programmers look at the computer as an appendage and go to it first to try to solve problems.

Learning to write good algorithms is like learning a language. It takes work and understanding in small steps. Get a good book. Find a good mentor. It will come to you and you will be better for it.

Tichy 5 days ago 0 replies      
I'm not like you. I wish there were more opportunities to actually implement algorithms in the daily programmer's job.
sambeau 4 days ago 0 replies      
This is one good reason to learn functional programming. Functional programming is all about algorithms and the algorithms are generally laid bare to be easily seen (rather than hidden in the noise of syntax). I have found that being taught functionally programming gave me a firm footing in reasoning about algorithms.

For instance: I can write a sort in any language because I carry this little gem around in my head:

  quicksort []     = []
quicksort (p:xs) = (quicksort lesser) ++ [p] ++ (quicksort greater)
lesser = filter (< p) xs
greater = filter (>= p) xs

Bird & Wadler is a great introduction to functional programming as well as algorithms and efficient data structures.


(blimey, I had no idea my old copy was now so valuable!)

mattiask 4 days ago 1 reply      
I have a pet theory that there are what I would say "right-brain coders" and "left-brain coders". Left-brain coders are the typically geeks who love math, engineering, algorithms etc. They can be extremely good at digging down on some particular piece of code, optimize it or write some algorithm for it. They do not however necessarily excel at things like overall architecture or coming up with novel solutions.

The right-brainers are more the creative types which would typically be more interested in areas like art, design or writing but has found themselves into coding. They do not necessarily like math, algorithms etc but are great at identifying greater patterns, overall architecture or thinking "out of the box"

No one is typically one or the other but people tend to be on a spectrum somewhere between, although programming tends to attract more left-brainers than right-brainers.

LVB 5 days ago 0 replies      
Like "great filmmaker" or "great wine", what does "great programmer" even mean? It's so context dependent, and there are countless aspects to programming that you could use to compare. It's not strictly hierarchical either. "Effective" seems like a far more useful term, because for most of us, most programming becomes simply work product, not a work of art.

If your position demands a fluency in graph algorithms that you don't have, you're ineffective. If your position demands creating Microsoft Access forms but you spend all day screwing off because you're bored, you're ineffective. If your position demands working on designs in large teams but you're arrogant to the point of disruptive, you're ineffective.

Nobody cares if you or someone else considers you "great" if you're not effective in your current environment. Conversely, if you're effective, good for you and quit worrying.

karamazov 5 days ago 0 replies      
"I am a great mountain climber, but a horrible quarterback."

Presumably, people wouldn't find this statement surprising - while mountain climbing will improve your fitness level, mountain climbing skills aren't directly transferable to football.

If you're not a good algorithmist, it's because you don't have enough experience with algorithms - which, based on the blog post, is true for the writer. I have the opposite issue - I'm decent at algorithms but not-yet-decent at programming; this is because I have a background in pure math, which lends itself to algorithms and algorithmic thinking, but comparatively little experience programming.

Geee 5 days ago 0 replies      
Developing and implementing algorithms is slow. You should think, tinker, use pen&paper and try things. You know, some people spend their whole lives to just tinker with small amount of code to come up with new stuff.

I think the reason most people don't feel competent in programming or algorithms comes from the fact that they don't know how slow it sometimes is to implement something. Maybe they have preconceived an idea that someone just sits on the computer and types the program in full speed.

I love algorithms. I'm not particularly good at it, but I just love to think about the problem and try to beat it. You just have to take the time and sit on it long enough to crack it. Soon enough, you will have small successes and you start feeling more competent and more self-conscious. You know that if something's difficult for you, it's difficult for everyone else, and that motivates you to try harder.

ricardobeat 5 days ago 0 replies      
I hate these fixed headers that come down just to take away 20% of your screen, and sometimes cover the exact part you're reading :/
clickonchris 5 days ago 0 replies      
I'm with the poster. After 8 years of professional experience I'm great at building large, stable systems that work, but I'm not even that interested in complex algorithms.

For me it is a question of cost/benefit analysis. What real value do you get out of being able to write super mathy algorithms when the solution is often a Google search away? More importantly, programmers get paid to build software that works, not to recite algorithms. (that's a generalization. Google & Amazon probably care much more about in-depth knowledge of algorithms but I consider them the exception).

Take the search algorithm example. Don't pre-optimize. I'll use the simplest linear search I can to get the job done, and if needs be, look up a faster algorithm to speed up the search.

jchonphoenix 5 days ago 0 replies      
Basic levels of algorithmic knowledge is required to be a competent coder. Being amazing just helps you be a better coder, but is only one of many facets.

however, don't ignore it. You should be able to figure out instantly that a hashtable should be used to find the intersection of two sets. Small problems like that crop up all the time and if you can't do that, I can't believe you can architect systems and write good code.

tazzy531 5 days ago 1 reply      
This seems to be a case of the Dunning-Kruger effect where an unskilled worker has the cognitive bias to overestimate their skills. it is easy to write code. it is easy to write code that works. it is hard to write good code.
lignuist 5 days ago 1 reply      
Assuming you are familiar with scientific readings, I'd recommend to read papers on algorithms and data structures on a regular basis. There are tons of it and they normally discuss complexity and shortcomings as well as comparisons to other algorithms. Personally I find it much harder, to understand algorithms, other people wrote, than coming up with my own algorithms.
I like to print such papers (normally 4-12 pages) and carry them with me (only one at a time), wherever I go, so I can read a few lines, whenever I have to wait somewhere.
mrfu 5 days ago 0 replies      
As a programmer, I have been hugely influenced by mathematics. I don't say it in the sense that I use math heavy concepts when programming, but the practice and experience I gained
through mathematics have improved my programming style (more rigorous approach) as well as my understanding of algorithms.
methodin 5 days ago 0 replies      
I do not agree with the sentiment that it's only an innate ability. I was completely ignorant of most algorithms until I actually set out to increase my knowledge of them. Once you start each one becomes easier to grasp and you can then think in terms of solving a problem using some of the generic solutions you've come across. Like anything it just takes practice.
leftnode 5 days ago 1 reply      
I appreciate all of the responses, it's great to know that other developers feel this way too. I also appreciate the links to get better. Really loving it. Thank you!
nathan_f77 5 days ago 0 replies      
I've been programming since I was really young, and I skipped university, so most of my knowledge is self-taught. Up until recently, I would have no idea what you were talking about if you said "A*" or "Boyer-Moore".
But then I realized that those algorithms are just basic concepts behind fancy names.

I was recently reading an article from that C++ guy at Facebook, where he talked about the programming challenges they do during interviews. He mentioned that every candidate should at least be able to write a simple version of the 'strstr()' function.

I did some research. I learnt about Boyer-Moore, and I realized that it was actually pretty straightforward and simple. Then I thought about how it might be optimized for tiny alphabets, such as DNA sequences. I came up with some ideas while travelling, and when I got home, I found a research paper that used exactly the same approach.

So that's when I realized that the world of algorithms wasn't as daunting as I thought it was.
Optimization can sometimes make them a little hard to read, but even the most complex ones can be broken down into understandable pieces.

webista 22 hours ago 0 replies      
How about this from Rob Pike:

`Data dominates. If you've chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming.`

jmitcheson 4 days ago 1 reply      
I studied EE, not Comp. Sci, but I drifted into pure software. Now software is all I do, but I feel like I'm "missing" things from my knowledge.

Can anyone recommend me any good resources (books, online articles) that would help fill these 'algorithmist' gaps? I know of things like complexity theory, how functions scale with time using O(n) functions or whatever, but I don't know much about them. I mean like kind of an overview of computer science topics; something which is wide but not deep.

I imagine there are other EE refugees like me who feel lost when they read Google interview questions :)

Loic 4 days ago 0 replies      
This is why you must not drop out of college/university and possibly do research. You will learn to put robust foundations behind your code, ideas, concepts. Bonus point, you will probably directly be in a niche area, with a nice address book and contacts of real people having real complex problems. Great for a startup.
fshaun 5 days ago 0 replies      
For me, the joy of engineering is problem solving. If you can solve a problem at hand with skills you have, don't stress over knowledge you don't have -- we are all necessarily ignorant in areas because there isn't enough time to become an expert in everything.

That said, some things _do_ need heavy algorithmic lifting; recognizing that your problem falls into this category saves time. Maybe you can reuse code that does X instead of rederiving and reimplementing it. Maybe the client's performance requirements are asymptotically impossible to achieve. Knowing this lets you confront the issue sooner and gives you a stronger claim than "I can't do this" if they push back.

Algorithms can be a force multiplier for your skill. A recent project required a key-value associative array. Unfortunately we don't yet know what the key strings will look like (long? short? self-similar?), the number of keys (5? 100? 8000000000?) or the expected use (lots of inserts and deletes? mainly lookups?), and the best approach depends on these variables.

Now, any single approach would be easy to implement, but maybe not so easy to adapt if (when...) requirements change. Instead, I'm using STL containers and algorithms as modular building blocks. Changing from a set to a trie? Changing from a vector to a list? A few lines of changes (and sometimes none).

Now, would you call this algorithmic knowledge or programming (C++) knowledge? Well, I'd say somewhere in between... in a sense I'm punting to a library that's been written and tested by smarter people than me, just like I might use any other framework. On the other hand, if I don't know what it means when the framework says "lists take O(n) for lookups", or "vectors offer constant time random access", then even when requirements are clear I might not be able to map them back to the best implementation.

Algorithms are just abstracted solutions to common problems. A binary search doesn't (mostly) care if you are dealing with integers or widgets or FoobarConfigurationManagers. It just says "follow these steps to find an element." Programming is full of common problems: iterating over a list; multiplying the result of two functions; adding a set of numbers. Simple, right? But combine these simple tasks in the right way and you have an algorithm to calculate convolutions.
Likewise, combining simple algorithms can solve a more complex problem.

meric 5 days ago 0 replies      
Studying hard in university does not help. I scored 88/100 (a very high mark) in my algorithms course at university.

If you ask me if I know <X> algorithm I'll almost definitely say "No". If you ask me in an interview to implement "<Y>" I'll ask you to describe it to me. There's just too many different algorithms and its hard to remember all the names for all the algorithms. I can almost always just use google to find the algorithm on the internet and implement it from pseudo code or something.

When I can't use google it means I'm in an interview...

Sometimes I jokingly tell myself "I'm a software engineer, not a computer scientist!".

erikb 4 days ago 0 replies      
I can't read that blog post. And I tried. For one line. I just don't know any person who is REALLY good at anything starting a 2000 word text with "I am great at ...". It just doesn't happen.
Craiggybear 5 days ago 0 replies      
It used to be the job of a Systems Analyst to come up with the algorithm and the programmer to implement it without deviation.

That job no longer exists and programmers make up their own algorithms, which are perhaps less than robust. Not all programmers are good at algorithms. Its a different skill.

Tenhundfeld 5 days ago 1 reply      
I have similar feelings of inadequacy/anxiety. To fight this, I occasionally work through some Project Euler problems, and while they're great, I'd like a resource that contextualizes those types of problems within a theory or mental model.

Can people recommend resources to help? Ideally these would be resources that focus on learning algorithms (or data structures), not teaching you how to program.

One person already recommended "Python Algorithms: Mastering Basic Algorithms in the Python Language", which looks good. "Data Structures and Algorithms Made Easy" also looks good but has mixed reviews.

Are there other books? (Ideally not dry textbooks.)
Free/inexpensive open courses, e.g., through MIT or Stanford?

brador 5 days ago 0 replies      
Mathematics. In my experience, ability to program complex algos comes from the complexity of your maths background. Find a way to do more maths and you'll get better at algos. (abstract/logic maths, not just simple number crunching).

Also, building "pet" projects helps, since you'll know exactly what you want as an end product of an algo.

brianprogrammer 5 days ago 0 replies      
I feel the same way although I feel that I have improved somewhat by writing an interpreter for my own programming language. The problem is we have no way to practice. I learn by writing code. If I didn't write a sorting algorithm myself then I don't know it. But how often do you find a legitimate reason to write a sort from scratch on a real project.

I think it would be great to build an entire computer science curriculum out of nothing but programming practice problems covering everything from bit twiddling to monads.

jmsduran 5 days ago 0 replies      
The article makes a good point. I too sometimes feel the same way in my technical career, often asking myself: "Do I really know X as much as I think I do"? I don't view it as insecurity, more often just an observation that there are real limits to my knowledge, and how I should go about improving certain skills.

It keeps me humble, thinking, and always learning, which to me are the greatest qualities a software engineer/developer should have.

tmanderson 5 days ago 0 replies      
Any half decent programmer uses algorithms everyday without even knowing it. Algorithm is just another word that encompasses a massive subset of other words that in reality DO NOT matter. A word is of no use if you don't know the definition, but a definition is plenty useful all on its own.

I think that's where people get scared. Just look through many of the examples above and you'll be surprised. There's no mystery to them, and I'm sure many of you (conscious of it or not) have implemented many of those many times.

Algorithm is efficient and concise code. All the different names and acronyms flying around are just a way to apply your efficient and concise code to a particular problem.

The seemingly tougher algorithms make so much more sense when they are applied in a situation of your own. If you start becoming conscious of your uses of code, it'll all get easier.

I'm sure you're doing just fine, and if you stop thinking of the word "algorithm" as some deep dark abyss of complex problems and knowledge, you'll discover it to be something that you may have done before, or it'll be something new to apply to your next project.

danbmil99 5 days ago 0 replies      
I'm a great algorithmist and a mediocre programmer (by my own tough standards at least), so there.

Everyone has different skills. One of the real arts of building a team is figuring out what each member's top skills are, and divvying up the work appropriately. That's actually more difficult with a top-notch team because high performers are often good at everything -- but there are still areas where they absolutely shine vs they've learned a skill that didn't come as easily through practice and perseverance.

cosminro 5 days ago 0 replies      
It takes time and practice. You won't get the practice at work. I dealt with a network flow problem a while back and a spell correction for URLs problem before that. In the last year I haven't done anything algorithmically challenging. Most of the time you're building systems that move data around.

A common mistake is that people learn about complex algorithms and data structures, remember their names but then can't solve questions that involve just basic structures like vectors, stacks or binary search trees.

I can't learn by reading a book, I have to solve problems to really grasp a concept so my advice is this:
Do topcoder.com/tc div 2 practice rooms, about 30 of them in a short time span. You'll see the solutions of other people and be able to learn from them. Also the level of div 2 problems is about the level of more difficult interview questions.

Another suggestion is to try projecteuler.net

bdg 5 days ago 0 replies      
Was anyone able to get a mirror of the article before it went over capacity?
cfontes 5 days ago 0 replies      
Include me there :D but it's mainly because I don't like to code algorithms, I can if i need to, but I don't enjoy, and to be good you have to enjoy.
I enjoy creating interfaces and front-end so I am good at that .
Zolomon 5 days ago 0 replies      
Is there any website available, like spoj.pl/projecteuler.net, that has some test input X for some specified algorithm/data structure Y that you need to implement?

Implement a stack in your preferred language!
<Explanation of format for test file/input>
<Read the following into stdin>

This could be really useful to train on your algorithms before you go to spoj/PE.

khyryk 5 days ago 0 replies      
I, too, recognize this as a weakness in myself. Project Euler can easily make me feel like a loser, and the crowd that chants, "If you can't do pointer arithmetic, kill yourself," doesn't help, either.
SoCool 5 days ago 0 replies      
I am a javascript/java developer. But, I like thinking in terms of the underlying algorithm. E.g if I am doing a sort, I will like to think where the sorting should be done (javascript, java or sql) and what underlying sorting mechanism are being used. It's not necessary but a good skill to have. If you start just thinking about the underlying algorithm associated with a data structure/operations on the data structure and then start digging deeper, I think you will be able to hone your skills.
colinhugh 5 days ago 0 replies      
I feel like I'm the exact opposite...
victorhn 5 days ago 0 replies      
Practice makes you perfect.

Implement a bunch of problems from online judges (Google: UVA Online Judge, SPOJ, Codeforces and Topcoder). If you can't solve a problem, there is often explanation of the solutions (at least in Codeforces and Topcoder), so read them, understand how the solution works and then implement them, then try to find related problems. Doing this regularly, i estimate that you will be a good algorithmist in about 6 months.

ruedaminute 5 days ago 0 replies      
I dunno, a lot of these things are brain teasers and not useful in our everyday programming lives as you say. Brain teasers can strengthen your brain and thus make you a better programmer, but rarely will you be able to apply the learnings from those brain teasers to common problems. I think I'll tease my brain just enough to be more productive, not just so that I can "feel" like a better programmer...
jdefr89 5 days ago 0 replies      
Algorithms aren't really something you can just sit down and bang out. It takes a certain amount of time to do the abstract thinking, put the details on paper, then implement. Coming up with a famous algorithms that we hear of everyday won't happen overnight. They are hard to design, thats something you have to accept and move past.
moonchrome 5 days ago 0 replies      
Dunning-Kruger ?
alexchamberlain 5 days ago 0 replies      
I feel I'm the opposite. I'm a mathematician by study, but have a passion for programming. Algorithms come very naturally to me, but large architectural decisions are often difficult.
codergirl 4 days ago 1 reply      
I sometimes feel like I have the opposite problem. I can come up with the algorithm which requires an understanding of why it works on the problem, but then I lose my train of thought while coding it (albeit this is happening in stressful interview write-on-the-whiteboard-while-I-judge-you situations).
EricDeb 5 days ago 0 replies      
I am also an undergrad CS major from UTD (whoosh!). It is VERY interesting that you would bring this up because now I am pursuing a masters in CS at a different university and grad algorithms is the class I struggled with the most! I ended up having to spend a lot more time on it in grad school and learned a lot more. I think UTD might have a slight deficiency in teaching algorithms IMO.
gearoidoc 5 days ago 0 replies      
With todays abstract languages you don't have to be great (or even good) at algorithms in order to create great software products. Simple as that.
Dachande663 5 days ago 0 replies      
Maybe it's because I've come from a more mathematical background, but I'm pretty much exactly the opposite. I'll see the problem, come up with an algo in my head to solve it and then the actual programming is just a remaindered implementation detail.

Obviously it helps if you know the final language well when you're coming up with the solution, but ultimately the algorithm is the only difficult bit.

alfet 5 days ago 0 replies      
I am like this to, something that really help me overcome this shortcoming of mine was start solving problems from http://www.spoj.pl/ and http://uva.onlinejudge.org. After solving a few hundred problems coming up with basic algorithms became a trivial task.
Void_ 5 days ago 0 replies      
Is it "algorithmist" or "algorist"?
creatom 5 days ago 0 replies      
Sorry, but if you are horrible algorithmist, you are definitely not a great programmer.
defecacy 5 days ago 1 reply      
This is something that I feel as well although I've been developing software for years. I've tried to study some books on algorithms but could never internalize what I've read.
gcb 5 days ago 0 replies      
I'm an average algorithmist, but a lazy programmer.

working just fine so far

Build a house for less than $5000 ciracar.com
277 points by mambodog  2 days ago   103 comments top 25
nkh 2 days ago 5 replies      
If your interested in cheap housing. Yurts are worth a look. They are used by half the population of Mongolia, and can be very warm. They make a great cabin retreat, but they are not quite as nice a normal american home without the added expense and convenience of plumbing, electrical, etc...

However, in there base form, they cost around $5000. See the link below for pricing:


(I am not affiliated with anyone selling any yurts, I just happen to like them).

upthedale 2 days ago 0 replies      
I remember reading about this a long time ago. The builder's own website on the subject is a much better link, which presents the hows and whys:

The OP is nothing more than a copy-paste job, though given how old it is, there might be some interesting discussion in the comments.

I believe from what I've read in the past that this was more of an exhibition piece than a long term place to live.

roel_v 2 days ago 2 replies      
What bugs me about projects like this, is that they're being presented as 'sustainable' while they're the antithesis of that. If everybody would want to live like that, there wouldn't be enough room, let alone large, undisturbed areas for forests or agriculture; plus this house may have cost the builder only 5000 pounds (if you don't count the land), but that's only possible when it's a one-of-a-kind project. If you'd have to take into account the supply network needed to build a house like this, and live in it, to a reasonably comfortable standard (meaning, at the very least: warm, dry, no vermin inside, access to sewer and running water), it would become a lot more expensive, if not downright impossible.
ctdonath 2 days ago 2 replies      
While the house cute and quaint, cozy and cheap, methinks most of us are more fond of modern straight-line homes than "hobbit" habitats.

For some time now I've been digging for info on building ultra-cheap housing, starting with an interest in log homes and branching into "tiny houses". Goal is to get my kids to earn and move into paid-off real estate by graduation.

To keep it short, here's some interesting links:

Tumbleweed Houses - http://www.tumbleweedhouses.com/ (plans starting at $20; in one notable case, house built for $10K)

MIT $1K house project - http://web.mit.edu/1khouse/ (seems defunct, but a noble start)

Tiny House Blog - http://tinyhouseblog.com/ (ongoing reviews of small and/or inexpensive options)

Cheap houses - https://www.google.com/search?q=cheap+houses (there is a lot of dirt-cheap real estate out there if you're flexible)

Free land - https://www.google.com/search?q=free+land (some jurisdictions will, in fact, give you land free if you'll build a house & live there a while)

elmarschraml 2 days ago 4 replies      
I love the look of that house, seems extremely cosy and well-designed.

But it's pretty hypocritical to present it as cheap and frugal.

The cost of a house is land + labor + material. Land costs depend on where you want to live, but can be the biggest factor. He mentions 1500 hours of labor, which, if you were paying somebody to do it, would be somewhere around 100000 USD (full cost of a skilled craftsman is around $60/hour). And even the 5000 dollars for materials is a fool's calculation, since he mentions using scrap materials, i.e. stuff that somebody else had to pay to produce.

If you want something truly sustainable, i.e. not something pseudo-green and feelgood-ecologigal, but something that anybody can afford, you'd unfortunately would have to go with a mass-produced high-rise block of flats.

Not a fan of the do-gooder hypocrisy here, but as an example of an architectural style that blends into nature it's adorable and looks fantastic.

roqetman 2 days ago 0 replies      
The original link (has more detail): http://www.simondale.net/house/index.htm
alan_cx 2 days ago 2 replies      
Here in the UK we have a show called Grand Designs on Channel 4. Its a show about self builders. One of the episodes featured a guy called Ben Law(S09E13). He is a woodsman who worked woodland in a strict conservation area. He wanted a home in his woods, and did a similar thing but on a bigger scale. For electricity, he had solar and wind power, feeding submarine batteries. He collected and purified water. Waste waster was, IIRC, fed in to a reed bed. He also had internet sorted out, cant remember how.

I cant find a decent site that shows the build, but for any one interested, it worth a google. Ben has a website, but there is not much detail there. There are also various vids on youtube.

For any one vaguely interested, this project is well worth look up.

sodiumphosphate 2 days ago 0 replies      
Such things are built in the woods of Southern Oregon, and in my hipper days I had the pleasure of living in some of them, and helped to build or refit a few others.

It's all good until the roof fails catastrophically.

Retric 2 days ago 0 replies      
+1,000- 1500 man hours @ say 15$ / hour = a total of around 20,000 - 27,500$ + land costs.

Which, is still great for such a cool house IMO.

hussong 2 days ago 1 reply      
German version: File your application for a construction permit for less than €5000 (SCNR).
csomar 2 days ago 1 reply      

If it rains enough, I expect that the house will collapse.

Also what about Electricity, Water and Internet (ok there is wifi) but electricity and water needs their proper setup. Gas is important too, if it gets too cold, and I expect they want to cook something.

myspy 2 days ago 0 replies      
In Germany: After digging out the first stone, the neighbors called the building authority and declares a full stop to your efforts until you hand in hundreds of papers and plans done by an architect and approved by a constructional engineer -.-
bdg 2 days ago 3 replies      
I like what he's done and I'd love to do it if I could somehow work around a few issues such as: I have a job, I can't build a house 8 hours a day for 30 weeks (1500 hours) and I can't get the land deal he did.

I'd be really interested in seeing an easily repeatable solution that doesn't come down to living in squalor.

vishaldpatel 2 days ago 0 replies      
Did the house need to pass inspections / safety?
brador 2 days ago 2 replies      
How long is this house expected to last? did they remember to coat the wood? termites and woodlouse are going to be a pain in the ass in that location...and then there's the rain... and cold...

There's a reason we use modern materials, like bricks, modern insulation and tiles, to build modern homes. They work and have proven robust (although mass production has also lowered price on some less desirable materials). Nice little project though.

smallegan 2 days ago 0 replies      
Should be titled, live like a hobbit for $5000.
sharpn 2 days ago 0 replies      
Reminds me of a Tony & Faith Wrench, who have done similar things a few times in West Wales:
Interesting couple.
retrogradeorbit 1 day ago 0 replies      
And then the council comes and knocks it down because the plans were not approved by the central bureaucracy!
Vivtek 2 days ago 0 replies      
You can get similar bang for your buck by firing your own bricks for a masonry house. Nice project!
tocomment 2 days ago 4 replies      
I feel like you'd need to know a lot of engineering to be able to design the thing, and still be able to sleep at night knowing it won't collapse on you.

Also how does something like this work with county inspectors?

sidman 2 days ago 0 replies      
Legendary ! that is pretty awesome. I guess there are conditions on where you can do that and thinking about it now i cant think of anywhere near me where i could do that if i wanted/could do it.

Though if i went back to where my parents came from in south east asia i could think of alot of places where that would work.

Cherian 2 days ago 0 replies      
Reminds me of Super Adobe by architect Nader Khalili.


gutini 2 days ago 0 replies      
Has anyone read anything on Zach Klein's cabin in NY? Very curious how he went about designing and building it. http://beaverbrook.com/
giardini 2 days ago 0 replies      
Sure hope he used galvanized nails on that or he's in for some surprises in a few years.

And how would you get something like this past a city inspector?

grk 2 days ago 0 replies      
There's no bathroom/toilet.
       cached 16 February 2012 05:11:01 GMT