hacker news with inline top comments    .. more ..    24 Sep 2013 Best
home   ask   best   6 years ago   
SteamOS steampowered.com
1245 points by kmfrk  22 hours ago   480 comments top 77
rkalla 21 hours ago 38 replies      
This is effectively the software-only equivalent of a console launch.

Is anyone else skeptical that they can motivate publishers to spend time/money porting their games to the Linux platform?

Valve certainly has a better chance than most at pulling this off (and likely enough user/market data to make this seem like a valid investment) I am still super skeptical that these publishers are going to spend the time porting their AAA releases to this platform.

A good chunk of the console games barely make it to PC/Windows as it is, let alone a PC/Linux platform... seems like a tough sell.

If the goal is an entertainment OS with streaming and DVR capabilities in addition to the few Linux compatible games on Steam, that's a bit different of a story but not a huge commercial win I don't think (unless they having some amazing partnerships planned with Netflix/Amazon/Vudu/Hulu for streaming that I am not thinking of).

If the goal is to make Steam into an entertainment platform (not just games) it is interesting to watch all these platforms converge on this "entertainment delivery pipeline" solution.

RyanZAG 21 hours ago 3 replies      
This is basically a similar approach Android took for phones. It leverages off Linux while replacing user facing pieces to give the user a simplified and consistent environment that they expect.

However as with Android, that isn't enough to get it to take off. Android had huge traction problems to start with until they managed to get the big device makers to train users and market the devices. SteamOS is going to have the same rough and long launch period, but the ultimate payoff is very big as the tech is all there and it's just a matter of getting the big game publishers to join up.

As with mobiles and Google, if anybody can succeed in the gaming industry, it's Steam. So I definitely wouldn't write this one off, I think it will take off in a few years time if they can get the big players - both software and hardware - to join up.

evanmoran 15 hours ago 3 replies      
As someone mentioned this is just the first announcement of three: http://store.steampowered.com/livingroom/

Announcement 1, SteamOS: is just a fancy way to say you can create custom Steam consoles by just installing some software. Make the box as good or a cheap as you want and everything will just workPretty awesome, but definitely this will be dwarfed by...

Announcement 2, people are guessing is a Valve distributed "SteamBox": a console that is presumably very cheap and linux based. This would give Xbox One and PS4 a run for their money and with the social aspects of Steam built-in, this could be a break out hit with a price of 50% all the other consoles.

Announcement 3, is the large unknown here. We don't know what it is, but if it is bigger (or equal to) SteamBox this could be a huge deal. Nothing really makes sense here. We know:

* SteamBox will support streaming from your windows/mac machine so it will be able to run every game at launch.

* SteamBox will likely have lots of publishers signed on. Probably as many or more then on xbox one / ps4. If they are already using an engine that targets multiple platforms (Unreal or Unity) they are definitely going to try to support it.

* SteamBox will likely support all the features of steam with friend lists, chat, voice, purchasing over the cloud, etc. So the + might mean sharing, but a new kind?

* SteamBox supports game sharing at a friends or family level. I see this as a kind of Netflix-like persona idea: an account gains separate personas that each have different friends lists and achievements. Very powerful and necessary once Steam hits the living room and multiple people are using the same box / account.

What it could be:

* LAN play for SteamBoxs on the same network (announced in Dota, this could explain the circle + circle graphic). Maybe you share the game between friends, and stream to the other boxes? That would be pretty awesome.

* Game streaming from other people's SteamBoxs? This would be an awesome way to share a game. It is like onlive but for distributed for everyone (seems unlikely. That kind of streaming would stop your friends from being able to play).

* A launch title like Half-life 3 (seems unlikely with the circle + circle logo implying you need multiple SteamOS instances).

* A new kind of social experience, maybe a built in way to be a part of the game creation process or improved social network experiences on Steam (seems unlikely to be big enough to be the final announcement)

* A new kind of hardware like a VR headset(seems unlikely, as cheap will be a big feature of this box)

This is marketing at its best. They hooked us good.

theschwa 22 hours ago 2 replies      
"In SteamOS, we have achieved significant performance increases in graphics processing, and were now targeting audio performance and reductions in input latency at the operating system level."

I'm really interested to see the trickle down effect that this will have on other Linux flavors. Having a push for standardization from a big name company like Valve should provide a better Linux experience for everyone.

msy 21 hours ago 1 reply      
Add in Netflix (or a competitor) integration and you've got the potential to put all 3 major consoles on the ropes in a few years. Given Halflife 2 launched steam my bet is HL3 will be used to launch this.
programminggeek 21 hours ago 0 replies      
Building their own linux is the right move to create the kind of end user experience it will take for the living room PC to work.

Think about the XBox 360 and the XBox One. They are both basically a windows kernel with a totally custom UI designed for the living room. It's about creating the best possible experience for the end user.

You can already get steam client with big picture mode on Linux, what this does is creates something analogous to ChromeOS, but purpose built for gaming instead of web browsing.

If linux gaming is going to have a mass market chance, SteamOS or OUYA a similar approach is going to be how it gets there.

Sukotto 21 hours ago 3 replies      
Since I spend most of my time in front of a computer screen and not a tv, I hope they also roll out some improvements to the steam client as well.

Things like the ability to tag my games with multiple categories; To see trailers and descriptions of the games I "bought and forgot"; Pause the game and read the user manual; and the ability to actually PLAY a game right now instead of being forced to wait for hours while it downloads and applies updates to itself and the game I already have downloaded, installed, and partly played.

xSwag 22 hours ago 3 replies      
Oh my god. This provides a genuine chance for year of the linux desktop in 2014, for gamers at least.
StevenXC 22 hours ago 1 reply      
The rumors of a Steam Box based on Linux have been circulating for a while now, but earlier Valve came out to say they had no plans to enter the hardware business.

I love this solution. Those of us comfortable with building our own Steam Box can do so easily, and manufacturers can also build their own models. In every case, the Steam store will certainly be sewn into the very fabric of the box, and Valve emerges a big winner.

This is what I've been waiting for to build an HTPC/PC gaming battlestation... I've (personally) always preferred gaming with a controller while sitting on a couch.

xentronium 22 hours ago 8 replies      
I'm somewhat disappointed. While perfectly logical for Valve, it might end up being not very beneficial for other distributions. In worst case scenario, hardware manufacturers cherry pick specific devices ("steambox") and software ecosystem to support (SteamOS) while totally neglecting all other linux distributions.
alisnic 22 hours ago 1 reply      
The biggest benefit as I see it, is that the users won't have the hassle of setting something up: just install the OS and login. No drivers ppa, no recovery console, no xorg.conf patches. If this is true, Valve will do something very big for the gaming community.
davexunit 21 hours ago 1 reply      
I don't like that Valve says that SteamOS is "freely licensable". They must know by now that the word "free" often means "libre" in the GNU/Linux community, but they've made no indication of what the license terms will actually be.
Glyptodon 21 hours ago 3 replies      
The streaming of other OS games from your other OS systems seems like a pretty compelling and surprising feature. I wonder if it will work with all games.
JonSkeptic 21 hours ago 2 replies      
How long till we see the "SteamOS on Raspberry Pi" threads?
fredsanford 4 hours ago 0 replies      
I find it ironically funny that, after all of these years of having a near monopoly Microsoft is losing out to the open source it tried so hard to sabotage in the late '90s and early 2000s.

Then, while the MS boat is leaking and sailing haphazardly across the computing landscape, along comes Valve to put a stake in the heart of the MS gaming division...

Could this truly be the beginning of the end of this giant leech on the computer industry?

The combination of this "story" and this one from slate (http://www.slate.com/blogs/future_tense/2013/09/23/microsoft...) makes me wonder...

th0br0 21 hours ago 3 replies      
As someone who's had a lot of fun writing game hacks for ET:QW and QuakeLive back in the days and while I greatly enjoy seeing this move to Linux, I'm quite worried about game hacks on SteamOS.There are so many attack vectors on Linux and, currently, VALVE's Anti Cheat (VAC v3) does not, as far as I know, cover any of those.You can still inject your hack via LD_PRELOAD + detouring dlsym/dlopen. Even were that not possible, you could have fun with, e.g., ptrace.

I'm looking forward to seeing what VALVE's done to fight this, especially as I expect SteamOS to eventually be repackaged to run on any distribution...

xSwag 21 hours ago 4 replies      
So what is the chance that Gaben will make everything proprietary? Releasing games for the SteamOS with license restrictions to make them unplayable on other Linux distros? What if he makes a deal with AMD/NVidia to make drivers only for SteamOS which won't be available to normal Linux users? I don't want linux to go towards that direction.
ijk 21 hours ago 0 replies      
Even if this never gets majority traction compared to consoles, I suspect it will be worth it for Valve. Ever since Microsoft tried to cut them off with the Windows Store, Valve has been working to have an independent platform. Having alternative platforms gives Valve room to maneuver.
siphr 21 hours ago 0 replies      
The success and effectiveness of the console, I believe, is dictated by the following statement:

"Watch for announcements in the coming weeks about all the AAA titles coming natively to SteamOS in 2014. Access the full Steam catalog of over nearly 3000 games and desktop software titles via in-home streaming."

To me this suggests that they are actively trying to get developers to port and they have had some success. Also I believe that a lot of developers will not port and to handle those cases they've introduced the home streaming functionality so that you could stream your windows game to the steam box via a windows steam client running somewhere.

mrinterweb 21 hours ago 0 replies      
I wonder if they will white-list any games are not natively ported to linux that have good wine compatibility. SteamOS could manage the wine configurations for those games. With enough platform adoption, this should help game companies to start targeting linux natively.
z3phyr 2 hours ago 0 replies      
It would be good for valve to project Rustlang as their programming language of choice :)
minimaxir 22 hours ago 2 replies      
So the Streaming functionality will be in both SteamOS and the normal Steam client? For both PC and Mac?

There might be a few interesting ways to utilize that. :)

toblender 20 hours ago 2 replies      
I wonder if history will repeat itself, will Valve be the next Apple?

Apple took FreeBSD and makes it into OSX.>Valve takes Linux and makes it into SteamOS.

Apple makes iTunes for music, unifying digital music download>Valve makes Steam for games, unifying digital game download

Apple make IPOD for digital music playing>Valve make (SteamBox?) for game playing

Damn I wish I could own some Valve stock...

rlu 20 hours ago 2 replies      
What I'm curious of is most of Steam's users are probably avid PC gaming fans that prefer PC gaming over console gaming

At least that's true for me and various of my 'internet friends'

alexmat 13 hours ago 0 replies      
Cyranix 18 hours ago 0 replies      
Here's hoping that this effort is where they've been concentrating some of their non-game devs. There have been longstanding issues with Valve-produced UX once you look beyond the in-game aspects. TF2 server list couldn't sort properly on the first update for years, the Steam browser is often dog slow, etc. -- things that are front-and-center pain points for me. A perfect initial release isn't a reasonable goal, but I do hope that they'll be able to polish the out-of-game experience better than they have in the past.
Mikeb85 21 hours ago 0 replies      
This is the best thing to happen to Linux since Steam came (which itself was the best thing ever).

This gives developers even more incentive to use cross platform tools, to develop on OpenGL, and to make things work with Linux.

bryanh 20 hours ago 0 replies      
Let's hope they don't got the route of Android, which is perhaps the most successful consumerization of Linux to date, wherein they allow hardware vendors bog it down with crapware...
mikevm 20 hours ago 0 replies      
Given the current high-end game engines that seem to support all the popular platforms out of the box (Windows, Mac, consoles), how difficult is it really to ship a game with Linux support?
phren0logy 22 hours ago 2 replies      
Is it based on an existing distro?
jmomo 18 hours ago 1 reply      
How is "Windows 8" NOT found on this discussion???

It is very unlikely, had Microsoft not decided to go nuts and release a dead-end train wreck of an OS that thew it's passengers/users into the ravine in the name of chasing MacOS and touchscreens that everyone wanted with the same enthusiasm as to 3DTV, that Valve would be so scared of the future on Windows that they would need their own Linux-based platform. Not to mention Mac support.

I am a huge Linux advocate, but this is much more about Valve being scared and running away from Microsoft Windows than it was the greatness of GNU/Linux.

I wonder how Steve Ballmer being fired will change the direction of Microsoft and it's products. What will be the future of Windows?

If they keep trying to actively throw their users off the train with wildly backwards-incompatible user experiences, you can expect even Microsoft Office to start supporting GNU/Linux for fear of the future of Windows.

pippy 18 hours ago 1 reply      
The first circle is SteamOS, the second will likely to be the Steambox: http://store.steampowered.com/livingroom/

There's also a third circle there...

consider_this 21 hours ago 1 reply      
I think this is Valve's answer to the chicken/egg problem of new platform/app availability.

Build it and they will come.

programminggeek 13 hours ago 0 replies      
The other thing SteamOS will end up doing that is super interesting is get good controller support on Linux/PC games, which can many times be real lacking.
xpose2000 21 hours ago 3 replies      
"In SteamOS, we have achieved significant performance increases in graphics processing".

I assume they mean in comparison to other Linux OSs. Beating windows drivers seems a bit far fetched?

daemonk 2 hours ago 0 replies      
Are they looking to sell their own hardware? How good are graphics card driver support in linux?
philjackson 19 hours ago 0 replies      
How open will this be? Will game developers have to licence the right to develop for SteamOS? If not, it'll potentially be huge!
mmanfrin 20 hours ago 2 replies      
I really, sincerely hope they will get rid of the block that allows only one computer to be signed in at a time. I don't like the idea of having to relogin every time I switch computers (as is the case now).
ChikkaChiChi 18 hours ago 0 replies      
GTA:V Bundled Editions sold quite nicely over the past week. Seems like bundling your own console with your own game just became a reality.

Valve just got every major publisher to take a serious look at what they are doing.

bfigares 15 hours ago 0 replies      
This is easily the most groundbreaking news I've heard as a gamer (and from the point of view of an engineer/business geek) in the past four years or so. This will be a really tough blow for the windows platform since the gamer demographic drives a lot of spending.Also it points to a very deep strategic move by valve, vertically integrating the distribution channel and controlling a la Apple which and how games are experienced. I wouldn't be surprised if valve built strong partnerships with hardware providers to provide a fully vertically integrated, key-in-hand gaming platform experience.It is worth mentioning that valve also sells other types of programs through steam... and that it seems this will eventually mutate into it's application store, centralizing the money management for steamOS in general and fully capturing the platform value.

A new apple but instead of "think different", the idea will be "play different"

siphr 22 hours ago 2 replies      
The idea itself is not novel as such. Just like every other company the difficulty is having to disassociate yourself from Windows. As it stands the store relies heavily on Windows titles. The real feat would be if they managed to get the whole catalog across to SteamOS by under the hood cross compatibility layer.
emehrkay 21 hours ago 0 replies      
I've been asking for years why someone just doesn't make a XBMC-like os for gaming on commodity PC hardware. Glad to see it finally happening. I'm very excited for this. My son who is 11 will be too
sandGorgon 21 hours ago 0 replies      
Lovely - this is what I had discussed more than a year back [1] This same OS can be repackaged for the desktop. I would think superb hardware compatibility, driver support and fundamental media library innovations would make it a compelling base on which to layer on a desktop UI.

I wonder what packaging format will they use for their games ?

[1] https://news.ycombinator.com/item?id=3888472

lesbaker 21 hours ago 0 replies      
Some responses say SteamOS is not open source, in the press release, it says "Users can alter or replace any part of the software or hardware they want." So I'm guessing if not open-source, the user would download a disk image, then go in and change the configuration, install media-center front-end software, etc, after the fact?

Regardless, I'm very interested, but just curious how easy and flexible it will be.

jdc 21 hours ago 2 replies      
Valve doesn't need all the AAA titles initially. What if SteamOS were released to a group of perspective and current gaming hardware manufacturers la Android? Despite the DirectX platform being incumbent on the mid to high-end x86 PCs, if Valve were to target the Wii/smartphone gaming demographic they'd stand a decent chance at commoditizing consoles.
Yuioup 9 hours ago 0 replies      
I'm guessing that o+o means split-screen gaming on the t.v., streaming from two separate Windows machines.
sixdimensional 22 hours ago 1 reply      
Open ecosystem (Linux, hardware) + gaming = well done Valve, sounds good, I like it!
mathgladiator 10 hours ago 0 replies      
Now, if Halflife 3 becomes a SteamOS exclusive, then we might have a shot of a linux gaming environment.
vitd 19 hours ago 0 replies      
I have to say - after trying to simply play a 2-player game of Portal 2 with a friend over the Internet and having so much go wrong, I don't have a lot of faith that they'll be able to maintain an operating system.

We see constant problems just trying to download the same map. Sometimes the game just shoves us over to a screen with no options and the game has to be force-quit to exit it. Other times it crashes during loading. It won't download to both of our computers at the same time, so it downloads to one first, then, only after the first one has finished, to the other. On those rare occasions that we actually get into the game, there are lots of glitches. I mean, when it works it's really fun, but the number of problems that occur along the way is just phenomenal. It's like using software from the 80s again. It's terrible.

mladenkovacevic 21 hours ago 0 replies      
This effectively gives traditional desktop OEMs a relatively cheap and easy entry into the living room, and a new category of product to sell effectively and compete against Xbox, PS4, and the mobile OSs who will be trying to gain entry into the living room soon.
jdc 21 hours ago 0 replies      
What if SteamOS were released to a group of perspective and current gaming hardware manufacturers la Android? The DirectX platform may be incumbent on the mid to high-end x86 PCs, but if Valve were to target the Wii/smartphone gaming demographic they'd stand a decent chance at commoditizing consoles.
BuckRogers 20 hours ago 1 reply      
The way for Valve (if you're reading this) to make SteamOS/Linux the top gaming platform overnight?

Make HL3 Linux-only.

Don't do a Windows/Mac port for 2 years. Watch all of us gamers scramble to dual boot at minimum, if not see the writing on the wall and do a wholesale swapout on our Windows gaming boxes.

edu 22 hours ago 1 reply      
Looks great! I'm really looking forward to see the fist SteamOS device.
ffog 11 hours ago 0 replies      
If you want to see that third announcement icon a little more clearly, the lit version is already up.


bobbles 13 hours ago 0 replies      
Does mac bootcamp only work with windows, or is it any OS?

Id love to have a macmini as a 'steambox'

otikik 17 hours ago 0 replies      
To me the big thing is "Music, TV and Movies". If they are able to get rid of the "This Show is not Available in Your Country" thing, that would be huge.
rufugee 21 hours ago 0 replies      
I sincerely hope the release the streaming client for use on other Linux dists as well. This would mean a welcome end to my current dual-boot setup.
goggles99 18 hours ago 2 replies      
What qualifies as a "New" operating system? This is slightly modified Linux, with a slightly modified UI. Is that really considered new? How about calling it a new Linux variant rather than a new Operating System.
jebblue 15 hours ago 0 replies      
Is it just me or does Valve still rock? These guys really keep powering along, steady pace, good going guys, best wishes with your new platform!
jason_slack 21 hours ago 1 reply      
So, this means I could build a PC with SteamOS, hook it to my TV, XBox controllers and play all the same games in our living room. Am I thinking about this right?
charonn0 13 hours ago 0 replies      
BigChiefSmokem 21 hours ago 1 reply      
This needs to be marketed to consumers the same way Windows was in the 90s and iOS/Android is today or else it has no chance of gaining any real... Steam.

The Linux or tech community alone will not make this happen. They need to do a Windows/iOS/Android and push this out on marketable hardware for the masses or else it will just be another niche tech product.

No cool commercials, no chance.

kgp7 21 hours ago 1 reply      
They never seem to define what a Living room machine is ? I wouldn't consider a desktop be a living room machine.
Jaecen 21 hours ago 1 reply      
Having a machine boot into Steam will have an interesting effect on other similar services like Origin and Desura. It will no longer be sufficient to request customers install yet another download manager/DRM platform; instead customers would have to boot in to a different OS to play their Origin games.
topbanana 21 hours ago 4 replies      
Most Steam games require keyboard and mouse. I don't see how that can work in the living room
leokun 20 hours ago 1 reply      
Will this be a game only platform or can I do work on it too?
webwielder 21 hours ago 0 replies      
At last, all the unresponsiveness, bugginess, and ugliness of Steam in OS form!
bjorg 22 hours ago 0 replies      
That's one hell of a smart idea if they can pull it off. As an OS, it can run on a VM or dedicated hardware, which gives us users the greatest flexibility. Well played!
antsar 22 hours ago 0 replies      
If only it were open source... This is great nonetheless, though. It'll be interesting to see what directions this takes off in, both in terms of hardware and software.
speeder 22 hours ago 1 reply      

If that works on normal machines (like, my laptop), I will kick Windows for good finally!

jknt1164 21 hours ago 2 replies      
I'm not a software dev, so this might be a really dumb question, but how hard is it to port/co-develop Windows/Mac games to Linux?

From what I can find out, PS3 is based on FreeBSD and WiiU is a heavily modified version of Linux, possibly Android. XBOX obviously Windows. Would it be that much harder to also have a SteamOS version in the mix too.

scottmcleod 17 hours ago 0 replies      
Will we see a USB device for Smart TV's later this week?
skizm 21 hours ago 1 reply      
Can I still browse the internet?
samograd 19 hours ago 0 replies      
Yay, the 80s UNIX wars all over again:


wnevets 18 hours ago 0 replies      
the 3rd circle will be HL3
Eyes2design 22 hours ago 2 replies      
The end is near! windows should shake in its tiny boots
david_otoole 21 hours ago 1 reply      
Can you sideload games that aren't on Steam?
Chaos Computer Club breaks Apple TouchID ccc.de
943 points by biafra  1 day ago   441 comments top 73
abalone 1 day ago 20 replies      
Just to keep things in perspective, the goal of Touch ID is not to be unhackable. The goal is to get more consumers to move from zero security to pretty good security.

A very large number of people don't put any kind of passcode of any kind on their phone, simply because it's inconvenient. Touch ID is designed for them. It's not designed to secure nuclear footballs.

Touch ID is going to massively reduce the number of totally unsecured iPhones that require zero effort to access. That's the goal.

I think some people see "fingerprint scanner" and think "military-grade security" because that's where we've seen scanners before in movies and such. But this is really very much a solution for the consumer market, where convenience and usability are critical features of a security system. Sometimes infosec folks forget that. If you make it too hard to use (passcodes), people just bypass it. So you can blame the user, or you can try to design something easier to use. If in the end you've improved the overall security landscape, you've succeeded. I think that's what Apple is doing here.

WestCoastJustin 1 day ago 3 replies      
The "How to fake fingerprints" link [1], is one of the scariest things I have seen, given how simple it is, and how much we reply on fingerprints for linking people to crimes.

BTW, for anyone who does not know about Chaos Computer Club (CCC) [2], they run a massive conference in EU. You can look at some of their talks @ http://media.ccc.de/

[1] http://dasalte.ccc.de/biometrie/fingerabdruck_kopieren?langu...

[2] http://en.wikipedia.org/wiki/Chaos_Computer_Club

neilk 1 day ago 5 replies      
I think they're missing the point. The passcode on an iPhone defends against other people in your environment - family members, coworkers, roommates - getting your information opportunistically. It doesn't defend against hackers, the government, or even slightly savvy thieves.

Also, if a fingerprint sensor is significantly easier to use, and in practice will deter a class of privacy violations, it could increase overall security. This is a question you can only answer by looking how people behave, not solely with an analysis of the technology.

The fingerprint sensor worries me more that it records biometric information at all. It's one thing to leave fingerprints all around your environment, but there is now the potential to steal your biometrics over the internet. The device supposedly hashes the data derived from your fingerprint, presumably with a hardware-based secret, but I worry someone will find a way around that. (EDIT: maybe this is physically impossible; can someone provide details?)

Also, the issues that CCC discusses about how fingerprint unlocking can be coerced are important. Many law enforcement organizations now have devices that can scan smartphone data, which is bad enough, but at least the use of those devices are controlled. A fingerprint sensor now allows a cop to handcuff someone, jam his or her finger onto the phone, and then to (for instance) delete an incriminating video.

Likewise anyone else willing to use force. Might become the next schoolyard amusement for bullies, if your kid has a smartphone.

MarcScott 1 day ago 9 replies      
If we've learned anything over the past few months, it is that security is an illusion when it comes to Google, Apple and Facebook.

The fingerprint scanner is not intended to protect your personal data from being accessed by nefarious cyber-spooks or crackers. The $5 dollar wrench technique is fairly effective in bypassing such security anyway.

The fingerprint scanner is there so that when your phone is nicked by a mugger, they can't reset to factory defaults and sell it on eBay. If some knife wielding thug that robs me of my phone has the intellectual capability of lifting my fingerprints off the case and then using them to bypass the security, he still has to know my AppleID password before he can remove the 'Find my Phone' feature.

Give Apple a break. This is just another layer of security. It's _not_ the panacea to all our security woes, and they have never claimed it was.

arrrg 1 day ago 2 replies      
Expected. Still much, much better security than no code at all. I will use it (with full knowledge of its downsides and tradeoffs) and it would behoove the CCC to not portray security as a binary state. (Just as much as it would behoove Apple to be truthful in their marketing.)

Don't use it if thieves would consider going through all the effort of faking out the scanner. That's what I take from this no doubt valuable and important work from the CCC.

(I assume that iPhone tracking and activation lock cannot be disabled with the fingerprint, so stolen phones will still be easily remotely wiped and bricked, with fingerprint or without. Thieves will have to be crafty and quick if the want to pull this off.)

sehrope 1 day ago 3 replies      
Considering that people generally don't wear gloves when they use their phones this is like having a picture of your key on your door. Combine that with what we know you can do with pictures of keys[1] and yes it's obviously not a very good idea.

[1]: https://news.ycombinator.com/item?id=6167246

hrktb 1 day ago 0 replies      
In the comments there is so much focus on the convenient aspect of TouchID. I agree, but the main point I think is that we have a situation where:

- fingerprint authentication will be seen as more casual and mainstream than it was before [1]

- people will still leave fingerprints everywhere, including around and on the fingerprint sensors

- once a high resolution image of a fingerprint is done, it can be re-used for literaly a lifetime (imagine keeping track of someone for years and use his/her fingerprints anytime it's needed)

- if enough applications rely on fingeprint authentication, exchanging fingerprint databases might become lucrative enough

From this point of view, seeing TouchID as just a cute way adding some security to a phone is too candid I think. It will have an immediate positive effect for casual phone locking, but would bring much worse effects down the line.

Optimisticly no one would rely on fingerprints alone to authenticate users for anything important. But the definition of what's important is blurry, and there is so many situations now where weak passwords are used, but it would be so tempting to switch to fingerprints (door unlock for instance...).

[1] laptops had finger unlock features for years now, but it never really made it to the wild masses I think. Fujitsu phones had a fingerprint reader too, but again, I don't remember other makers picking up the feature.

gjmulhol 1 day ago 4 replies      
I have accidentally seen basically all of my friends' passcodes as they type it in at bars etc. I could get into their phones easily. TouchID is more secure than that simply because someone needs to take a 2400dpi image of the person's finger to do it.

Locks (when physical access to a device is available) are to keep honest people honest. Most security experts that I know agree that if an intruder has physical access to a device, it can be considered compromised because it is just a matter of time.

pcl 1 day ago 1 reply      
Here's an idea that would improve security in conjunction with the new sensor:

Create a random pattern of ridges and, using the technique outlined in the OP, build a latex key. Attach that to your keychain (in some sort of case to improve durability, maybe). Then, enjoy 2-factor auth, between the phone's pass code and the synthetic fingerprint.

chmars 1 day ago 1 reply      
What is the resolution of the fingerprint image stored in biometric passport, i.e., the kind of passport you need to enter the US?

Biometric passports store an actual fingerprint image and not just a hash like the iPhone 5S. So if the resolution was high enough, everyone with access to a biometric passport for example by scanning people carrying such passports around at an airport could forge fingerprints

joejohnson 1 day ago 0 replies      
"[I]t is far too easy to make fake fingers out of lifted prints"

Really? It seemed like this was a lot harder then just shoulder-surfing someone entering their passcode. Touch ID may be hackable, but this is still way harder for the average person to hack than a simple passcode.

AND it's way easier to swipe your finger than type in a code! Touch ID can't be worse for security; it appears it's at least a bit better.

kirillzubovsky 1 day ago 1 reply      
This is a really silly statement - "This demonstrates again that fingerprint biometrics is unsuitable as access control method and should be avoided."

Sure, maybe you can bypass this mechanism, but as an everyday password, this is still a substantially easier tool than typing in a 4-digit password.

In fact, at least you cannot easily spoof my fingerprint at a public location, while you could certainly easily figure out my password by just standing over me when I type it. I wonder how many mall cameras, street cameras and all sorts of public surveillance cameras have all our passwords?

Cushman 1 day ago 1 reply      
Actually, this raises an interesting thought. Couldn't a security-conscious user take advantage of this to turn "something you are" into "something you have"? Since you can train the sensor with anything, is there a market for semi-permanent, cryptographically-random... Thumb rings, or something?
JoachimS 7 hours ago 0 replies      
(Huge discussion here - lets add to it. ;-)

There are several things here that people in discussion seems to miss och confuse. I've been working with biometrics and can at least try to clear things up.

For authentication (and identification) of a user we have three types of information: Things you have (a hard token generator), things you know (password) and things you are (shape of face, gait, voice, pattern in the iris, arteries in the back of the eye, hand, DNA. And fingerprints). Measuring what you are info and using it is called biometrics.

For good security we normally want to have a combination of at least two of the types. OpenID using for example a Yubikey is a good example.

The good thing with biometrics is that the user always carry the info needed with him/her. There are a few drawbacks though:

(1) The information is not very stable. It changes during the lifetime of the user. Sometimes it can be pretty rapid.

(2) The information is not very unique. Some types of biometrics is better than others. There is also differences in informational quality between individuals and ethnic groups. Depending on type of biometrics we get anything from a few bits to a few ten of bits. This means that it is not better than a good password that is 8 characters or more, but as good as or a bit better than a normal PIN code.

(3) The information is not under the users control and can't readily be replace. This is one thing many here and elsewhere seem to have missed in the CCC announcement. The point is that you as a user can't decide at any given time that you don't trust you token anymore, invalidate it and get a new token. That is why biometrics is foremost a tool _for others_ to identify you (passports, forensics).

The reason fingerprint based biometrics is so popular (compared to other types of biometrics) is that it is possible to build compact, cheap sensors that are pretty easy to use and are simple to integrate into digital systems.

All types of biometrics are fuzzy. We normally talk about False Acceptance Rate (FAR), that is how often do we accept a biometric ID as valid when in fact it is not. And correspondingly we have False Rejection Rate, where a valid ID is rejected. Good biometric systems have FAR, FRR under 10%. But for a busy airport there is still quite a few mistakes during a day.

The way a fingerprint based biometric system normally works is that you have a sensor that creates an image (256 levels of gray scale or similarly). The image is then processed (differential filters etc) followed by feature extraction. The features are called minuae:


Typically sworls, where lines end, merges splits. Normally we find 8-10-15 or a few more good minutae in the image. Based on the location of the minutae we create a graph.

The graph is then stored (if registering a user - called enrollment) or compared to stored graphs. And here comes the fuzziness. The graph will not be similar so we simply can't do a SHA-1 digest and match. The graph will be rotated, scaled, stretched, have fewer or more points. Basically fuzzy congruence matching with threshold.

The feature extraction can be done directly in the sensor. But in the case of TouchID I don't think so. Apple bought Authentec and their area sensors (that can capture a whole image directly. Sweep sensors detect movement of a finger over the sensor, estimate speed and stitch image slices together) simply delivered a raw image. This means that the filtering, feature extraction and matching is done inside A7.

Apple has touted the security of the processing. Basically it is ARM Trust Zone used in several other devices.


TZ is good, but there has been attacks published. And there is nothing that says that Apple has not added a read port from the untrusted enclave into the memory of the trusted enclave. For efficient debug reasons for example.

So. Biometrics is fuzzy and will give false acceptance (as the main problem. rejextion is less of a problem). There is quite probably an image available in the A7 and we really don't know if it and/or the graph database is in fact accessible.

When it comes to the CCC attack - we simply don't know if they tried lower resolution before ending up with 2400 dpi. I wouldn't be surprised if it works (at least sometimes - fuzziness again) with lower resolution. Also attack always gets better. I'm prepared to bet a good IPA that someone within 2 years will show how he/she can unlock a 5S just by smartly pressing on the home button while breathing to activate residue as fingerprint. It has been done with area sensors such as Authentecs before.

TouchID is good if it makes users without PIN to use it. But if it gets users with PINs stop using PINs, it is not as good. What would be great if we could combine TouchID with PIN or password. All the time.

I hope all this explains a few things. And remember, once again, the main problem with biometrics is that it can't be changed at will by the user. Good for others, less so for the user.

sarreph 1 day ago 0 replies      
An interesting comment on the YouTube video: Not cleaning your iPhone is likely to leave fingerprint evidence/marks directly on the device's housing that could be faked.
DigitalSea 1 day ago 0 replies      
I don't think the goal of Touch ID is better security nor is it an attempt by Apple to prevent the loss of iPhones from theft. The goal of Touch ID at the end of the day is to make it easier for people to make purchases, entering passwords to make an iTunes/App store purchase is a hindrance to Apple's bottom line. Currently because of the steps involved, people have the ability to rethink their purchases during the time it takes to enter and confirm they want to make a purchase. Touch ID takes away a few seconds of time to make a purchase, touch your finger on the reader and BAM! instant purchase.

The steps in which the Chaos Computer Club took to break into an iPhone, no criminal would even think of undertaking. In the criminal world the longer it takes to steal something, the higher the chance you'll be caught. It's no different to an engine immobiliser that prevents a car from being stolen. If a criminal were to take their time, they could pop the bonnet and start the car, but most criminals will just take your stereo and car contents and leave the car if they can't get it started within a couple of minutes...

Although, having said that. Apple's marketing speak does make Touch ID sound much more secure than it actually is. This might come back to bite them in the behind one day if the wrong person has their iPhone and data stolen and decides to act upon Apple's somewhat deceivingly clever marketing speak in a court room with dollars to spare.

And besides making it easier for people to spend money without having time to think, a fingerprint scanner to the not-so-technology inclined sounds futuristic and cutting-edge, which in turn will sell millions upon millions of iPhone units. While many who frequent HN can see past the marketing spin and realise a fingerprint scanner isn't all that exciting or new, the lowest common denominator who buys an iPhone sees things differently.

coldcode 1 day ago 0 replies      
Apparently a lot of people are much smarter than the people who built the technology. Kinda like everyone is better at cryptography than actual cryptographers. Nothing anyone says here is going to surprise the folks who designed it.
rickjames28 1 day ago 1 reply      
"Biometrics is fundamentally a technology designed for oppression and control, not for securing everyday device access."


mephi5t0 1 day ago 1 reply      
They tried to make a fingerprint readers more sophisticated and added a temperature registers to avoid fakes or (more in more gruesome case - a cut off finger), but hackers managed to make so called rubber fingers or peel dead finger and fill with a warm salty water. Anything can be hacked.

But I think they are missing the point. If Apple wanted its phones to be a secure gimmick at Pentagon - that was silly. But for average user - nobody is going to steal your prints. It's just a usability. For average Joe it is so much easier to tap with finger than type PIN all the time. But if you get specifically targeted nothing will save you.

professorTuring 1 day ago 0 replies      
Of course they have broken it, I had no doubt it would be broken like any other fingerprint security system.

The issue here is that it's ok, it doesn't really matter. It is all about the amount of security you need. Does a normal user need unbreakable security? No. The security provided with this method is more than ok, it is kinda secure and it's faster (imho) than writing your passcode. After all your "enemies" here are nosy friends or similar...

If you need "unbreakable" security then you shouldn't use iphone or android, or you should use an specific secure storage application (cyphered content, hard to guess pass or whatever). If you need "unbreakable" security you better consider hiring a security consultant.

So, the question here is, are the security systems in mobile devices more than fine for most normal users? I guess so...

joshstrange 1 day ago 0 replies      
First off I want to say I agree with most of the people here that Touch ID was not meant to be in breakable but rather an easy to use system that vastly improved users security over 4 digit PINs or no PIN.

That said, hypothetically, let's say I get arrested and the police take my phone. My phone has my fingerprints all over it. What is to stop them, legally, from using my prints on the phone to unlock my device?

I say this not to spark an argument but as a real question, I bought an iPhone 5S and I really am interested to know if any law would protect my phone if it was taken in such a situation?

blinkingled 1 day ago 0 replies      
To be fair Apple hasn't said anything about liveness checks or any other safeguards against faked/duplicated fingerprints. All they talked about was how the fingerprint storage itself is secure, hardware level and local. The hack that gets the fingerprints off of the chip by exploiting some implementation related vulnerability would be a big deal.

TouchID is just another fingerprint reader - albeit one that's easier to use.

dmishe 1 day ago 1 reply      
I thought, based on anandtech review, that this scanner is not optical but electrical, hence "sub epidermal scanning", so why does a printed finger work?
reillyse 1 day ago 0 replies      
Talk about missing the point.

I dislike entering a passcode every time I pick up my phone. Yet if someone steals my phone or I leave it somewhere I don't want someone to be able to access my photographs or my data.

Fingerprint sensor sounds like a pretty good solution to me.

Do I want Fort Knox security on my phone? No.

Could someone still access all my data even if it was secured with a passcode, certainly they could with physical access to the device and a couple of debugging tools they could lay it wide open.

So put simply, fingerprint is more convenient than having to type in a passcode. +1 for Apple

Good to know how easy it is to break though so no one gets carried away and starts using it for things worth breaking into.

drakaal 1 day ago 1 reply      
Kind of a "well duh" post. All of the image scan finger print readers are easy to game.

Even the ones that use capacitance can be beaten with a rubber glove and a copy of the finger print, printed on the latex. (the best is actually an Vinyl condom that doesn't come pre-lubed, the ink sticks better and the vinyl is less of an insulator)

jccc 23 hours ago 0 replies      
[Regarding the point that this is only supposed to be convenient for users, not to be unhackable...]

Today: "Fingerprint scanning on my phone ... that's super convenient."

Tomorrow: "Fingerprint scan required by government ... oh well, I already use that on my phone."


"We hope that this finally puts to rest the illusions people have about fingerprint biometrics. It is plain stupid to use something that you cant change and that you leave everywhere every day as a security token", said Frank Rieger, spokesperson of the CCC. "The public should no longer be fooled by the biometrics industry with false security claims. Biometrics is fundamentally a technology designed for oppression and control, not for securing everyday device access." Fingerprint biometrics in passports has been introduced in many countries despite the fact that by this global roll-out no security gain can be shown.

iPhone users should avoid protecting sensitive data with their precious biometric fingerprint not only because it can be easily faked, as demonstrated by the CCC team. Also, you can easily be forced to unlock your phone against your will when being arrested. Forcing you to give up your (hopefully long) passcode is much harder under most jurisdictions than just casually swiping your phone over your handcuffed hands.

cowsandmilk 1 day ago 1 reply      
> The method follows the steps outlined in this how-to with materials that can be found in almost every household

I own almost none of the materials they list. They have a very different idea of what materials can be found in almost every household.

malandrew 19 hours ago 0 replies      
I want to see this exact attack repeated based entirely on the fingerprints left on the device itself. It's an all glass surface and we leave fingerprints everywhere, including on the device itself. It you are literally leaving the key all over the screen itself, this is pretty damning. I wouldn't be surprised if an entire photograph of all the partials all over the screen could be used to reconstruct one full fingerprint of the desired digit.

Now that this type of security is on the iPhone, it is likely to become widespread, which will only further increase the value of improving attacks on this particular security measure.

nodesocket 1 day ago 2 replies      
Honestly, TouchID is better than what we have today; a 4 digit useless passcode. If somebody has to take a photo of my fingerprint off a glass surface to gain access to my phone, so be it.
Marazan 1 day ago 3 replies      
Wasn't Gruber getting awfully excited about how amazing and revolutionary Apple's finger print sensor was?

Will he be claim chowdering?

JofArnold 1 day ago 1 reply      
Presumably solvable by using a digit that isn't normally in contact with your phone - eg the pinky of your non-dominant hand?
shawkinaw 1 day ago 0 replies      
Let's think about the real point of Touch ID technology. Is it to secure your phone against high-tech criminals with a lot of time and resources? No; it's to give you enough time to realize your phone is gone and remote wipe it via iCloud.
s_q_b 1 day ago 1 reply      
iOS security is trivial to break if you have physical access to the device. TouchID (and passcodes) should be considered little more than a convenience, not a serious security measure.
induscreep 1 day ago 2 replies      
This isn't new, some other guy broke TouchId by making a fake finger from gelatin and soy sauce.


bdcravens 1 day ago 1 reply      
We see him register his index finger. Then he places his supposedly artificial index finger on his middle finger, and the phone unlocks.

Since it uses RF and goes beyond the outer layer of skin, how do we know that the middle finger wasn't already registered?

danpalmer 1 day ago 2 replies      
I'd be interested on peoples' opinions, is this more or less secure than a 4-digit passcode?

From a real security perspective, users should have alphanumeric password, as far as I know, businesses often enforce this.

Obviously a 4-digit code is easy to brute-force on a computer, but it requires far more technical knowledge to do so - booting custom firmware, using some script to brute force, etc, and if the attacker doesn't have the skills, they are limited to 10 tries, maybe more after waiting a few minutes or an hour.

It seems to me that, excluding users leaving smudges on their screen and seeing the passcode that way, a fingerprint is even easier to break than a 4-digit passcode.

fmax30 1 day ago 1 reply      
Nice , The mythbusters did this in their fingerprinter scanner episode , although they didn't have the iPhone5s but I am sure the same principle/technique would work.
stesch 1 day ago 1 reply      
Just in time. Who knows how long these research projects stay legal in Germany.
runn1ng 1 day ago 1 reply      
Looking on the video is very unsettling. I think the person needs some medication or something.


tambourine_man 1 day ago 0 replies      
First, the fingerprint of the enroled user is photographed with 2400 dpi resolution. The resulting image is then cleaned up, inverted and laser printed with 1200 dpi onto transparent sheet with a thick toner setting. Finally, pink latex milk or white woodglue is smeared into the pattern created by the toner onto the transparent sheet. After it cures, the thin latex sheet is lifted from the sheet, breathed on to make it a tiny bit moist and then placed onto the sensor to unlock the phone.

Yeah, easy as pie.

Finger chopping should be added to this xkcd:



countrybama24 1 day ago 1 reply      
If you're really concerned about this, just register part of the finger that isn't the tip, and get in the habit of smudging the home button afterwards. I usually only touch the phone with my finger tips or palm, and you could register, for example, a part of the finger under the knuckle that almost never touches the device except to authenticate the print.

Of course if CCC knows which finger was registered, AND has a perfect print left on the device AND they know which print corresponds to the finger registered on the device, of course they can crack it. But if they have to guess which print on the device cracks it, I'm willing to bet they trigger the 5 failed attempts which then requires a passcode (and 10 failed attempts wiping the phone, although this is optional).

This means there are more than 10 options (which finger AND what part of each finger) you could use as a print. The oft cited scenario of police being able to compel you to input your print assumes they know what part of your hand unlocks the phone. They can't make me divulge the part of my hand thats registered just like they can't make me divulge my password.

thatha7777 1 day ago 0 replies      
A further argument against biometrics, for those in the United States, is that your "right to silence" (under the 5th amendment) doesn't protect you against the government compelling you to use your fingerprint to unlock something (however it does protect you against revealing a PIN code)...
yohann305 1 day ago 1 reply      
These findings would have been more surprising if the fingerprints were taken from the phone itself!
adamconroy 1 day ago 0 replies      
It is amusing to see thousands of unpaid apple PR workers spring into action, making sure no critical comment exists without a defence. Perhaps they feel their credibility is on the line, given how often they have sermonised on the genius/quality/beauty of their electronic device manufacturer of choice.
moocowduckquack 1 day ago 1 reply      
Potential side effect of TouchID: Due to the mass marketing of this feature it becomes cool for people to learn how to copy fingerprints, causing a massive headache for forensics teams everywhere.
Cbasedlifeform 1 day ago 0 replies      
Wouldn't it be ironic if the new iPhone 5S camera had a high enough resolution to take the photo of another user's fingerprint off the screen of his or her phone? ;)
EpaL 1 day ago 0 replies      
Important to remember Touch ID only gives you 5 tries before requiring the device passcode.

I wonder how many attempts the CCC guys had before they were successful?

seanmcdirmid 1 day ago 0 replies      
I've seen plenty of people "hack" the 4 digit password simply by observing the user entering it. This kind of hacking seems to involve even more work than that.
abritishguy 1 day ago 0 replies      
Some people seem to be forgetting what this is being used for.

This is an OPTIONAL replacement for the pass code.

However you feel about its level of security it is definitely more secure than a passcode which is the other option.

If someone wanted to target you for whatever reason then how long would they have to follow you with a high zoom camera before they would see you type the passcode in? The passcode/touch ID is to stop opportunistic unlocks not a determined attacker.

ForFreedom 1 day ago 0 replies      
According to the adverts by Apple they specifically select certain points on the finger print and analayze then permit access. If such a technology is broken then I would assume their encryption on the A7 chip where the fingerprint is stored also can be broken.

If lots of people do not use passwords on their phones for the sake of comfort then it is not anyones fault that their phones are logged into or information stolen. Information is stolen because the user is lazy to secure the device.

When Apple says one can use finger print to do transactions then I have to assume that the transaction cannot be done by anyone other than me and by any other means through the phone.

speeder 1 day ago 0 replies      
Great quote com CCC team:

"Biometrics is fundamentally a technology designed for oppression and control, not for securing everyday device access."

It explains why Brazil is trying to put biometric scanners on the electronic voting machines.

Marazan 1 day ago 0 replies      
The amount of kool-aid drinking about TouchID in this thread: https://news.ycombinator.com/item?id=6403089 is pretty staggering.
001sky 1 day ago 0 replies      
It is a Touch screen !


Don't lose it !! =D

goggles99 1 day ago 0 replies      
Not really anything new here. This was done a decade ago when bio-metrics were shown to be a weak form of authentication/verification. Still, the iPhone scanner is a deterrent and thus adds value.
cremnob 1 day ago 0 replies      
Overall security will be increased because of Touch ID because most people don't use a pass code at all.
spyder 1 day ago 0 replies      
Can the fingerprint reader work with other parts of your hand ? For example if you can use the back of your finger or part of your palm then it could be a little more secure because you don't leave the prints of these everywhere.
dbg31415 1 day ago 0 replies      
The comment was made, "It's not for people who care about security, it's about people with no security."

But poor security just replaces no security with a fake sense of security. I'd argue that false security is worse than no security.

anizan 1 day ago 1 reply      
Dont panic! this loophole is easy to fix if AAPL gives free mittens(cuter than gloves) to its users with clear instructions to take them off only when unlocking the phone.
therandomguy 1 day ago 0 replies      
So much more secure than my house or car? Looks like it. Also probably buys me enough time to realize that my phone is missing and do a remote wipe.
joakleaf 1 day ago 1 reply      
So the big question is, how hard is it to get at 2400 DPI finger print?

They don't show if they can scan the finger print off the phone. I would imagine that it could be quite tricky to get that level of resolution.

I would like to see a complete hack purely based on a finger print on the phone.

matdrewin 1 day ago 1 reply      
Much more convienient than a passcode with a little less security. I'd still use it unless I was a CIA agent.
Fourplealis 1 day ago 0 replies      
Guys from IsTouchIDHackedYet.com crowdfunded reward for hacking TouchID. I guess CCC won bounty worth over $10k.http://istouchidhackedyet.com/
ruttiger 1 day ago 0 replies      
This will end Poopin' tweets. http://poopinrules.com
confluence 1 day ago 0 replies      
This is fairly unsurprising to anyone with even a modicum of understanding as to how these sensors actually work and the decade long history of researchers breaking them with Photoshop, gummy bears, latex and spit. What concerns me more is the claims they make about the "secure enclave". Maybe I'm just paranoid, but historically if data does exist, then it will be abused. The TouchID sensor, coupled with its strong bullshit security claims by Apple, in addition to the claims made about how data is never sent by Apple because of the "secure enclave", makes me think that this would be a very convenient way to create a global voluntary fingerprint database tied to every aspect of everyone's identity without freaking anyone out. If a government were to release something like this, they'd be sued into the ground and screamed against for breaking core privacy covenants. But when Apple does it's just brilliant and revolutionary.

Reasonable technically informed paranoia is what made the NSA releases fairly unsurprising to me as well. My rule with security is that if it can be done, then it will be abused. It's basically a Murphy's law for humanity.

Trust nothing. Trust no one. Doubt everything.

KamiCrit 1 day ago 1 reply      
At this rate, no method of security is secure.
anmalhot 1 day ago 0 replies      
even though it was almost expected to be bypassed easily, using fingerprints can still be handy if one wants to establish claim on a device. I believe the thinking was to provide a way to uniquely link the device to an entity - security was just a byproduct (but marketing trumpeted it)
Navarr 1 day ago 1 reply      
Were people saying that this was secure? I thought it was just another fancy unlocking method like Google's "use your face to unlock"
jchimney 1 day ago 1 reply      
Its an improvement. The typical pass has 4 characters so 10,000 possible combinations. Doing about 1 per second would find the password in the worst case scenario in about 3 hours; simply by trying all possible combinations.

I think trying to lift a usable fingerprint off a glass surface would be significantly more difficult than that.

rashthedude 18 hours ago 0 replies      
Kabel-salat ist gesund.
frank_boyd 1 day ago 0 replies      
Siecje 1 day ago 1 reply      
He is still using his finger behind the tape....
yeukhon 1 day ago 0 replies      
I am not impressed by this so-called hack at all. This is like people expecting encryption to solve both authenticity, integrity and confidentiality altogether by doing c = E(p,k). We want to see real hack as in actually bypass the system without any fingerprint, or a way to forge a fingerprint.
2muchcoffeeman 1 day ago 1 reply      
Despite all the claims of how insecure this is, I've just checked a bunch of my stuff. I cannot find a single clear print. There are a few smudged prints on my laptop and coffee cup. My phone is just smudges all over.

So what is a realistic way to clandestinely grab a print?

I Am An Object Of Internet Ridicule, Ask Me Anything theawl.com
905 points by mwill  4 days ago   376 comments top 74
potatolicious 4 days ago 26 replies      
Hipster-hate strikes me as just another thinly veiled form of bullying, and it's interesting to see how readily internet nerds - the people who are disproportionately to have been bullied in the past - engage in it.

Look! He's different! Let's make assumptions about his motivations and get him!

It's also interesting to see how many times Reddit (and other communities) fly into a rage-fest because of lack of context, only to make an about-face when the full picture comes out. It's also interesting how no matter how many times this exact situation happens, there is no stopping the next rage-fest.

Above all other things, internet communities is what makes me cynical about humanity.

sharkweek 4 days ago 4 replies      
The front page of reddit can be a cruel mistress

My wife and I had one of our wedding pictures take the number one spot on /r/all one day -- There was some rather embarrassing text super-imposed on it that said "Oh you think married women still give BJs" (google Condescending Wife to find it).

Despite some of the comments in the thread being pretty mean, my wife and I took it in stride, we're both internet people, we get it; we thought it was pretty funny all things considered --

The awkward part of all of this though, was this picture was EVERYWHERE for about a day. All over Facebook, Tumblr, etc. So countless friends and family inevitably saw it. I got a call from my concerned father, asking me if everything was ok and if I had seen what the internet had been saying about me and my wife. I explained to him that we didn't really mind and we left it there as explaining reddit to him would have been near impossible. But it was just a really surreal experience. We got dozens of texts and emails that day all asking if we had seen the picture.

The best part of the the internet's short term memory is how quickly this image found it's way into obscurity; to be completely forgotten. No ill harm to my wife's nor my reputation.

revelation 4 days ago 7 replies      
The website she referred to had a series of essays they dubbed It Happened To Me that they sprinkled in amongst feminist-leaning news and features. I want to talk about how all of this makes me feel. You, all over the Internet, right after you dumped me.

Does that seem bizarrely self absorbed to anyone else?

homosaur 4 days ago 3 replies      
It seems like the hipster-as-a-pejorative thing started around the total collapse of the music industry in the mid-2000's and unfortunately was driven by indie scenesters who resented the influx of popularity when say, Modest Mouse had a song appear on say, One Tree Hill. The primary aesthetic religion of the indie scene from punk onward, no matter what the genre or style, was D.I.Y. so suburbanites who went to Hot Topic to grab Iron Maiden t-shirts were profoundly reviled.

This happens in any insular subculture. Do I even need to mention the "geek girl" bullshit?

The problem has quickly become that this revulsion has also played into the jock-centric bullying of anyone who dares to be different--"my football coach won't let me grow my hair long so now let me go punch that faggot with the plastic frames" sort of crap. Any indie community that still exists needs to rid itself of all this baggage for that reason alone.

Whatever utility the word "hipster" had as a pejorative, if any, is gone. Internet killed pop culture and it's dead to stay. The most popular cartoon character now is effing Grumpy Cat. Anyone should consider anyone else using "hipster" as an offhand pejorative to be no greater than a classroom bully, no different than calling someone a dweeb in the 1980s.

PhasmaFelis 4 days ago 4 replies      
Tangentially related, things like this are why I have not stopped wearing my fedora (in appropriate situations, with appropriate outfits).

Dear Internet Fashionistas: You've decided that fedoras and suspenders are the mark of a horrible person. Your opinions have no connection to reality. Over here in the real world, I look good. When I come back to the bar the next day to pick up my credit card, and the bouncer remembers me well enough to compliment my outfit from the previous night, that means I'm doing it right.

drcode 4 days ago 4 replies      
NEWSFLASH: If you're doing something specifically to get attention, it's possible the attention you get might not be to your liking.

(Though I agree people should be more open to people doing fun performance-ish stuff like this, it does not mean a performer is entitled to receive only positive reactions.)

techtalsky 4 days ago 3 replies      
Kind of recently, a close friend of mine took a picture of him and his wife explaining something to their dog:http://i.imgur.com/bfpOGYK.jpg

They're the sweetest, coolest, most open-minded people and I adore them. They're not trying to act like they're better or more stylish than anyone else, but the level of "hipster hate" they got in the thread was just intense.

forgottenpaswrd 4 days ago 2 replies      
Well, being ridiculed by people in Reddit is something honorable. Who cares what they think about you?

Don't lose your time with these people. Take a video camera and explain what you do for people in the internet, youtube and vimeo...

Better, you could create a cool kickstarter project in which by the way, you explain better what you do.

Never forget that being able to tell stories is one of the most important abilities humans have, since hunters met at fire in the dark of the ancient night.

Now FOCUS ON FEELING THE LOVE, not the pain. In my business the customer support people used to ignore thousands of satisfied customers letters to focus in the couple of crazy ones.

Don't dedicate neurons to them, don't think yourself the object of Internet ridicule, because we see only validation. Find yourself as the object of respect and love. You have my respect and validation and lots of other people's too. Search for it and you will find it.

peterwwillis 4 days ago 1 reply      
Cyber bullying kills kids. That's one thing to remember about all this. If he had been a shaky, insecure, frightened teen, this kind of treatment can push mild depression into thoughts of suicide. And many adults are also vulnerable to this kind of abuse. If you see this happening to anyone, please, step up and defend them.
im3w1l 4 days ago 1 reply      
>Thinking about her own troubles in creating something viral, she remarked, Its too bad you cant figure out a way to exploit this somehow. Other than sometimes posting my Twitter handle on pages where I saw the picture, I couldnt do much.

Since this is hackernews, it would be interesting to discuss this portion. What would be the best way to use this to propel oneself into success? It seems he was granted a strong brand for free. Mostly negative, but also with some positives. My idea would be to try to be even more hipstery, to really validate peoples impressions, and then try to sell things associated with hipsters: Second hand stuff. Organic, fair trade, hand made clothing. Maybe try to appear in a commercial for glasses.I don't know much about marketing so sorry if this is completely wrong. Just wanted to put some ideas out there to start a discussion.

sp332 4 days ago 4 replies      
I'm not claiming to have much fashion sense, but how is wearing giant plastic glasses "sincerity"? Is it about self-expression? What sentiment do huge glasses express?

The reaction, then, had nothing to do with hipsters... they hated me because I looked like I was nakedly desperate for attention, and had gone about that attention-grabbing by glomming on to marginalized trends.

I thought that was the whole reason people didn't like hipsters. Now I'm confused.

sfbsfbsfb 4 days ago 1 reply      
I have the utmost respect for anyone that can take their natural (legal) talent, go to a park and turn it into beer/food money in an hour or two. When I met my wife she was substitute teaching occasionally and to make ends meet she would do pencil portraits in the park. She would always wear a floppy hat and a colorful long skirt. Back then (1975) she would have been referred to as a hippy (http://en.wikipedia.org/wiki/Hippie :-) as opposed to a hipster. I remember sitting in her apartment and watching her gleefully straighten and count a pile of small bills. Great times!
adt2bt 4 days ago 3 replies      
Related to his original idea: I think it's simply fantastic. Not only does it help avoid writers block (You constantly have a stream of stories to create), but it's forced practice. Nobody says Mozart's first few works were brilliant. It wasn't until he practiced for years that he became a virtuoso. An approach like this, while easy to view from the lens of simply making people happy, is an investment in one's creativity and writing skill that will pay off in leaps and bounds years down the line.

It's just so unfortunate that the internet makes it so hard. You're either loved, hated, or ignored. He, thanks to an unlucky picture angle and loss of context, fell into the 'hated' category by many. I applaud the effort to just do it. It is funny how many view the real world as hard and the internet as an easy escape, yet in his experience, it was just the opposite.

voyou 4 days ago 1 reply      
TBH I preferred this story when it was an Onion article: http://www.theonion.com/articles/two-hipsters-angrily-call-e...
l33tbro 4 days ago 0 replies      

Sorry for the crazy-person all-caps, but this thing really crunches my Funyuns. Hipsters are a totally made-up label to brand people with that are into different shit. Would we have called Dylan a hipster (in the derogatory sense, not the beatnik sense)? What about Steve Jobs in the early days? Shoot, even Woz wore some pretty ironic bow-ties (definite hipster).

What's also a gas is that all these "hipster bashers" are so heck-darn defensive of mainstream culture. We all acknowledge that Walmart is a shithole. We all agree McDonalds is feeding garbage into our souls. So why are people so darn defensive about people who are trying to explore different things.

The "hipster" label is a sickeningly old cliche. Seriously. So-called "hipster-bashing" has been going on for 10 years now (it all started with 'the hipster handbook'. I've never really got it either. I mean, people don't actively go out and go "right, I'm going to be a hipster". Like the amazing roaming typist, these people are just interested in different things.

In my opinion, these "hipster bashers" are people that are just so obviously insecure about their own lives. Why bash others, just because you can't step out of your box.

Then again - maybe the definition of a hipster is someone who does actively embrace the attributes of this made-up subculture to form an identity - without understanding the depths of what they are appropriating. I must say, I have not met anyone like this. Hence, why I think hipsters don't exist.

uptown 4 days ago 0 replies      
This is one of my favorite quotes:

"The more you know who you are, and what you want, the less you let things upset you." -Lost in Translation

TomGullen 4 days ago 1 reply      
I keep saying it, taking photos of random people out in public not hurting anyone for the intention of posting online and ridicule is one of the most vulgar, inconsiderate modern phenomenons that seems to be socially acceptable.

Its the ugly, non creative side of accessibility in modern technology that hurts people sometimes significantly. If someone did it to me, I would probably be very hurt. "Look at this super ugly fat guy on my bus!" That ugly fat guy might of just mustered enough courage over the last week to step outside and as a result he gets ambushed in a hurtful demeaning way. It's not just the post, imagine going outside and noticing people slyly trying to snap pictures of you, how would you feel?

These sorts of posts are often veiled behind a thin curtain of pathetic vacuous wit. People need to call this sort of behaviour out more.

eagsalazar2 4 days ago 0 replies      
Hipster hatred really baffles me. The only thing I've come up with is that hipsters generally are people who actually are trying to live by their liberal ideals of anti-consumerism. Yes they are into fashion as is everyone else, that doesn't make them hypocrites.

People hate them because they make them feel bad by generally doing things most people are too lazy to do themselves, not because they go around telling everyone they are crappy or acting holier than thou. The act of recycling old clothing is what offends people, not hipsters talking about it.

You know what is holier than thou? "Hipsters are hypocritical scum". I've never been told anything like that by someone who is a hipster (except my radical feminist lesbian sister-in-law and it isn't because she's a hipster)

D9u 4 days ago 4 replies      
I, myself, would have started, and stopped, with the last sentence:

  I prefer to let these little cesspools of cyberspace fester and then stagnate, forgotten as they should be, secure in the knowledge that I am doing something that matters to me.
As reddit is nothing other than a festering cesspool of cyberspace.

altcognito 4 days ago 0 replies      
There were a whopping 229 comments in his thread where he was ridiculed by the "internet". Star wars kid he is not. Hell, there are more comments in this thread.


bolder88 4 days ago 0 replies      
Internet commenting is a cesspool of idiocy. Hivemind, kneejerk reactions, things taken out of context like this.

It's an absolute waste of time commenting on anything online, because there is an absolutely inexhaustible supply of people who are wrong.

(Yes I realise the irony).

at-fates-hands 4 days ago 3 replies      
This was the best line for me during the argument between two Redditors:

"you do realize things have value even if they're not digitized, right"

Brilliant point and something that is sadly being lost in our evolving digital community. As a former Anthropologist, we are leaving less and less artifacts for those future civilizations to discover us by.

At times, it's incredibly depressing to me this is the case. How will people know about the human race if our entire culture is wrapped up in bits and bytes and discarded without a thought to their permanence? It will as though we never existed.

delinka 4 days ago 2 replies      
I tend to group posts like this in with the recent attention on sexism in tech, and it makes me ask ...

Why do people feel the need to be such assholes to other human beings? Why should it ever matter what someone else does with their lives as long as it doesn't interfere with your inalienable rights? Why should it ever matter to anyone what color your skin is or what genitals you have if you get the job done?

I just don't get hate in general.

mikestew 4 days ago 1 reply      
Masses of comments from people one has never met, and likely never will meet, aren't much to be concerned about especially when the comments are based on a single picture with no context. We all quickly build stories based on a single glance or vastly incomplete information. "He looks like a douchebag marketing guy." "The way she walks, she's probably one of those types that...", etc. The really insecure among us go out of our way to post it online. That the Reddit folk built a huge narrative out of a single picture doesn't surprise me.

My personal favorites are the anonymous internet tough guys: "if I ever met him in person, I'd punch him". No, you wouldn't. You'd walk on by in silence, thinking your snarky little thoughts and tell your friends about it later. Because you, sir, have likely never been the first to throw a punch in your entire life.

I'm not saying one is wrong in feeling a little sting in such comments. Maybe it's too many years on Usenet, maybe it's spending way too much time on Xbox Live (that will grow you a thick skin), but I just pay them no heed anymore and let them wallow in their insecurity.

That's not to say that when my mother is referenced on Xbox Live that I don't point out that the 68 year old woman would probably love some time with a young, studly Call of Duty master like yourself.

mturmon 4 days ago 0 replies      
One of several worthwhile remarks in the article:

"For all the hateful words that were lobbed at me, it barely ever bubbled over from the world of online forums and websites."

This is also true of political forums. Many people complain on-line, but these people rarely show up at the council meeting to actually make a real-world difference.

philwelch 4 days ago 0 replies      
It doesn't surprise me that the Redditors responded with some contrition when this guy confronted him while the commenters on the feminist blog didn't. This kind of pack bullying behavior is only encouraged when you give the bullies an ideological identity to justify their behavior.
the_cat_kittles 4 days ago 0 replies      
The bottom line is, doing anything new puts you in a vulnerable position. Just ask the people saying the truly mean-spirited insults- have you ever tried to do anything new or different? The answer is pretty much "No". So, their opinions really don't carry much weight. Negativity is just useless!
actionscripted 4 days ago 1 reply      
To add to the discussion/close the loop:http://www.reddit.com/r/TrueReddit/comments/1mp79c/i_am_an_o...

Having been on Reddit for more than 6 years, what always blows me away are these "lessons". Sure, everyone backpedals a bit and thinks, "gee, he's not the douchebag hipster we thought and we acted like assholes" but it happens over, and over and over.

As others have also mentioned in here, I'm always amazed that those most prone to being bullied seem more than okay taking on the role of bully online with zero context.

guelo 4 days ago 0 replies      
Why can't we just upvote this kind of story on Reddit and leave it there?
Yhippa 4 days ago 1 reply      
> I often wear tight jeans, big plastic-frame glasses, shirts bought at thrift stores.

... and then later ...

> And that my wardrobe was more a function of my budget than hipster assimilation.

To me his style comes off as hipster assimilation. Am I missing something?

richardlblair 4 days ago 0 replies      
The most amazing thing about this story is that he stayed true to himself. He continued to do his thing, went to the park, did some typin'. I think that is pretty awesome! Why do I think that? Because fuck everybody else. Hater's gunna hate.
PhasmaFelis 4 days ago 2 replies      
The only valid definition of "hipster" is "someone who cares whether people are 'hipster' or not."

With that firmly in mind: fuck hipsters.

kilroy123 4 days ago 1 reply      
I would not at all worry about what reddit users think and say about you... Especially since it's mostly just mid-twenty to 30 years olds. [1]

IMO - reddit comments have gotten worst over time. While not youtube comments, bad. It's getting there.

[1] http://en.wikipedia.org/wiki/Reddit#Demographics

ahoge 4 days ago 0 replies      
Opinions on the internet are always extremely distorted. It's not like a survey where you make a bunch of random people answer some questions. It's several cycles of selection bias and network effects. It's kinda bizarre, actually.

In general, most people are indifferent. They won't feel compelled to comment on it. Naturally, you only get comments by people who have a sufficiently strong opinion on that particular topic. If you now add voting to the mix, you emphasize this distortion even more.

Now, the reason why it works this way is because it makes it interesting to those who participate in these discussions. That's the primary goal: encouraging user interaction.

It does not paint an objective picture of the community's opinion.


When I first saw that image about a year ago, I just thought he tried to create a distraction-free environment on a low budget.

I had no reason to comment on it.

If I had commented on it, my comment wouldn't have received many upvotes, because it wouldn't be aligned with this particular audience. That is, those who'd feel compelled to comment on this kind of picture.

protomyth 4 days ago 0 replies      
It just saddens me when someone is doing something unique or looks different and people have nothing better to do than trash talk.

I get the feeling that our lack of ability to deal with actual mental health issues as a society can be seen in the general reaction to the healthy, spirited, marching to their own drummer folks.

ap22213 4 days ago 0 replies      
Seems more a problem of celebrity than anything.

Do what successful authors, artists, musicians, actors (anyone creative) do: Don't listen to what others say.

carlaas 4 days ago 1 reply      
I'm the one that took the picture and here is the uncropped version (http://www.flickr.com/photos/crlnh/9818826176/). I didn't expect all this when I posted it on reddit
alxndresp 4 days ago 0 replies      
I don't understand why people hate on others so much, for no reason at all. What is the point? Just let people do whatever they damn like, it isn't like their interests are affecting you. How do people grow this mentality? I have never once negatively judged or put down someone because of some "weird" interest they had, such as preferring to use a typewriter. I seriously don't understand.
sequoia 4 days ago 0 replies      

    Then they'd shake their head and tell me that the idea and the execution were genius.
Modest, too!

kyro 4 days ago 2 replies      
If everyone's public, online comments were tied to their real, physical identity, would the internet on a whole be a more pleasant place? I don't see the type of vitriolic comment threads on Facebook that I see on Reddit. What would be the long term implications of that? Is online anonymity in a public forum a right that we have?
exodust 4 days ago 0 replies      
The "hate" that he talks about is not actually hate. People who make fun of others on the internet are often just having a go at comedy in the spirit of "The Roast" where jokes often cross the line but everyone is fine with it because it's "a roasting".

It's the same thing online. The thread begins with "how can we make fun of this person", and people join in and have a go at being a comedian. Obviously, amateur comedians will always step over the line without evening knowing it. And by amateur comedians I also mean professional writers who aren't known for their Roasting Humor, but will have a go anyway (ie, NY Times writes and so on).

nickthemagicman 4 days ago 1 reply      
At least 4chan hates everyone equally.
DigitalSea 4 days ago 0 replies      
Stories like this make me feel bad for naming my music blog Killhipsters. I think Reddit have proven one too many times that they're good at jumping to conclusions and ruining lives, look no further than the Boston Marathon bombing fiasco where many Redditors incorrectly blamed someone for the bombing and started a flurry of unwanted media attention. While the name of my music blog is a comedic take on the hatred people have for hipsters, I think it's sickening if anyone has a real hate for hipsters beyond jokingly on the internet or between friends...
cobbzilla 4 days ago 1 reply      
I was in NOLA in February and thought this street poet was quite entertaining: http://www.tout.com/m/hitche and his typewriter is older & cooler :)

I don't care how more street authors and poets "steal" this idea. Please copy, adapt, iterate, mutate, spread.... that's what culture is all about. Improvisational public writing is awesome on so many levels.

newobj 4 days ago 0 replies      
How is this news for hackers?I can't take it anymore. Bye.
kbart 4 days ago 0 replies      
Clever marketing I would say. Now he could make tons of money just by selling printed stories via mail.
Fuxy 4 days ago 0 replies      
Here's a good example of how we judge people by there appearance.

We're not all photogenic or very aware of our appearance we may actually look like something we are not.Like this guy.

He may look like a hipster but he's just an average guys trying to get by.

The lesson is simple. Don't judge people on how they look talk to them and then decide.

ateevchopra 4 days ago 0 replies      
By the time I reached the middle of the post, i had totally forgot how i got here. How i got to this page, this awesome piece of article. I totally forgot this was on the top of HN. Now that's the power of your storytelling. i just loved it. it felt like i was sitting beside you and you were telling me your story. Awesome storytelling abilities. Thumbs Up !
danielrhodes 4 days ago 0 replies      
I always find it interesting how people are eventually drawn towards the things they are naturally talented at. In this case, he is an excellent writer and so perhaps this flash of inspiration to write stories for people wasn't as sudden as it may have seemed.
SkyMarshal 3 days ago 0 replies      
One more reason to unsubscribe from all of the default reddits.

There's quality stuff on reddit, but's buried several degrees away from the frontpage subs.

benjvi 4 days ago 0 replies      
"The reaction, then, had nothing to do with hipsters. It was a hatred of people that need to stand out for standing-out's sake."

Isn't this close to the most common understanding of the word "hipster"? People that are middle-class, want to stand out, and also come off as a bit arty.

lnanek2 4 days ago 1 reply      
front page of hacker news too now. congrats to him! kind of hard luck about the sign text not being in the picture, though. would have helped his business
kyzyl 4 days ago 1 reply      
There's been a lot of talk about hipsters in these comments. Could somebody explain to me, in any concrete terms, what the hell a hipster is?
jhonovich 4 days ago 0 replies      
Is this satire or is this a real person?

edit: I guess it is a real person but this reads like an Onion piece.

penrod 4 days ago 0 replies      
Making a big fuss about the internet hating you is so hipster.
KaoruAoiShiho 4 days ago 0 replies      
Have you tried http://anonquest.com

It's basically the internet version of what you're doing.

fnbaptiste 4 days ago 0 replies      
This is a cool idea. If I was walking down the street with the lady I would totally pay this guy to write us a story. This post however is way too long for me to read. I get the idea though and it's great. I like it.
barking 4 days ago 0 replies      
I want to see some of this guy's 10 minute stories before deciding his fate...
Sarkie 4 days ago 0 replies      
It is like the record player meme.


He is actually at a record shop where you can test the records before you buy them, to test the quality.

michaelochurch 4 days ago 1 reply      
Hipster diagnosis fail. Guy has a work ethic-- enough to actually finish writing projects-- and is therefore, by definition, not a hipster.
fmax30 4 days ago 0 replies      
Am I the only one who doesn't even remotely know who this guy is ?
nether 4 days ago 0 replies      
I just don't like all the dashes. It's like jumpcut editing for text.
bliti 4 days ago 1 reply      
I wonder what would happen if I did the same thing but with programs.
djmollusk 4 days ago 0 replies      
I was expecting to read something about Christian Weston Chandler. That guy is an object of internet ridicule like no other.
piratebroadcast 4 days ago 0 replies      
This guy used to be my dog walker inBoston, not kidding. In the South End.
JeremyMorgan 4 days ago 1 reply      
Why do people care so much about how other people dress?
gadders 4 days ago 1 reply      
I think this is a pretty good summary of why hipsters are such an object of ridicule: http://opinionator.blogs.nytimes.com/2012/11/17/how-to-live-...
timmyelliot 4 days ago 0 replies      
It seems like walking around with a typewriter on your lap, no matter what decade, would have been seen as <slightly> odd, and would have gotten positive as well as negative responses.
Grue3 4 days ago 0 replies      
This post did little to convince me that the hate was unjustified. This guy is such a stereotypical hipster it's not even funny.
idealform01 4 days ago 0 replies      
it was a pretty interesting read, however by posting this isn't it only going to start the hate cycle over again? unless thats what the goal here is... can't fight the internet with a typewriter
leandrod 3 days ago 0 replies      
Serves you right for dumping your common law wife.
conch 3 days ago 0 replies      
But... he is a hipster. I don't hate hipsters because they're different: I hate them because they're the contemporary version of dandies.
brokenparser 4 days ago 1 reply      
(Emphasis mine)

  ..it was dozens of someones*faceless and impossible to control*
Strike 1.

  I asked...if she would *let me read a draft before she sent it*  to her editor... ...I ranted back to her, *mad that she hadnt  sent me the article*
Strike 2.

  ...the hipster label is a compliment, a devotion to a *self-  evident truth*
Strike 3.

This guy isn't hipster, he's sinister.

x0054 4 days ago 1 reply      
Why on earth is this on the front page of hacker news. I understand that HN is not all about tech, and interesting articles of all kinds should percolate up. But why is this at the very top for so long. It's about Internet hate, and we all know that Internet hate is due to the anonymity that Internet provides, nothing more or less.

This has little to do with hipsters or counter culture. SOME People on reddit don't hate hipsters, or puppies, or anything else. They just hate, period. They hate because there is a % of human population which just likes to hate. Think about the Sexual Harasment Panda episode of South Park and the "we don't take kindly to..." line from it. That kind of attitude + anonymity = net hate. The good thing is, net hate very rarely = real life.

Any way, I think this guy is pretty cool. And it makes perfect sense to me that he uses a typewriter. He sells stories to tourists. He needs to give them a physical object, rather then an email, to inspire them to give him money in return. I know I would pay more money for a story written on a typewriter and given to me, rather then one emailed to me for the following reasons:

1. I know it's original, or at least typed just for me.2. I will own the only exact copy of it.3. I know some one actually spent time to type it out, which takes skills and effort.

Besides, if he wants to give people a hard copy, what is he supposed to do, lug a printer and power generator with him.

A beginner's cheat sheet for web development bentobox.io
422 points by jonhmchan  3 days ago   190 comments top 67
rryan 3 days ago 3 replies      
Hm, looks nice! The coloring of the columns doesn't seem to be meaningful in any way I can come up with. I think it would make more sense if things were grouped into categories (e.g. databases, web frameworks, frontend languages, backend languages, style/presentation). If you use color I would make it meaningful (e.g. represent order of learning things with color something?).
brd 3 days ago 4 replies      
The title and the pitch on the actual site are kind of disingenuous. This is a collection of resources to learn web development. Its hardly a cheat sheet or "everything you need to know".

A cheat sheet would be a succinct set of syntax/concepts/examples required to get by.

Having said that, its a pretty website and its a worthy cause so please don't take my critique too critically.

liquidise 3 days ago 1 reply      
A good list so far.

The lack of XML though, in addition to JSON's claim of being the ubiquitous data transfer format, seems a bit hyperbolic.

Vivtek 3 days ago 3 replies      
Appears to be broken this morning. I see the template briefly, then nothing, in Chrome and IE. Which is sad because it sounds really great.
donutdan4114 3 days ago 4 replies      
I'm not sure if the order is supposed to matter that much, but I feel like the blocks should be ordered from easy to hard. Why is PHP at the end of the list? Why is JSON so close to the front?

But yea, I just think the ordering could be better, still a nice resource!

dsrguru 3 days ago 3 replies      
Only works for me in Chromium. Firefox is displaying "box.name" and "box.description" instead of their values.
eaurouge 3 days ago 0 replies      
Here's an idea. Let each box 'expand', perhaps to its own page. This way, if you want to dig deeper, you can find more resources in the expanded box. You can let users suggest resources with an 'add' button; users can vote for resources so the best ones bubble to the top. You could take this further and break each resource list into beginner, intermediate, advanced.
CmonDev 3 days ago 2 replies      
Where is knockout.js, SignalR, ASP.NET MVC, Azure?

Call it "hipsterbentobox.io".

PS: I am on BitBucket, I know it's not as hip as GitHub - sorry.

jonhmchan 3 days ago 3 replies      
OP here: in case anyone has suggestions, this is also on GitHub: https://github.com/JonHMChan/bento/tree/gh-pages

Would love your feedback!

hodder 3 days ago 1 reply      
This is great! Thanks! As a beginner, figuring out what to learn, as opposed to how to learn, is a struggle. This provides a pretty great roadmap and explains how things fit together.

As for feedback, you could potentially add:-Hartl tutorial to the rails section-Udacity to the python section.

dclowd9901 3 days ago 1 reply      
Hilarious to me that no one here gives a second thought of how intimidating a list like this would be to someone first getting into web development. On my initial scroll down the list, I first thought it was a tongue-in-cheek joke ("cheat sheet"? Lol) about the incredible range of things your typical full stack developer needs to know to actually go from 0 to .com
DanielKehoe 3 days ago 1 reply      
For Rails, the article "What is Ruby on Rails?"


It's getting a lot of praise as a good starting point for beginners. (BTW I wrote it)

lbarrow 3 days ago 2 replies      
"SQL" is not a database.
donniezazen 2 days ago 0 replies      
Sometime ago I finished Codecademy's Web Fundamentals. I learned enough to understand what's going behind the scene but not enough to start hacking on my own. Since then I have started learning Python, also on Codecademy. There's Java for Android. And I would also like to learn C++/QML to hack my Arch Linux/KDE box.

Is it common for programmers to be proficient(reasonably well) and also be able to work on multiple projects requiring multiple languages at the same time? Or do most folks learn many things but tend to work with one language on one project.

scottrblock 3 days ago 1 reply      
I think the web would be a better place if you encouraged beginners to start with the HTTP block, rather than HTML.
gravedave 3 days ago 0 replies      
Where's the content? I thought it's just my browser (Chrome), but on browsershots it seems to be empty for most browsers. Is it a WIP?
bpp4dt 3 days ago 2 replies      
I've always been looking for something like this to send to friends wanting to learn to code. A couple of recommended

This step by step guide to learning Github: http://www.thinkful.com/learn/a-guide-to-using-github-pages/

My first [hilarious] exposure to Rubyhttp://mislav.uniqpath.com/poignant-guide/book/chapter-1.htm...

Eloquent Javascript [built in console with examples]:https://eloquentjavascript.net/contents.html

If anyone's interested in some front-end web development sources: http://www.quora.com/What-are-the-best-sources-to-learn-web-... [You won't need to make an account with this url][1st answer has the skills you'll need to learn with documentation and 2nd has a great collection of resources for newbies]

shn 3 days ago 2 replies      
Interesting, I do not see anything other than a link to github page. https://dl.dropboxusercontent.com/u/50999755/Screen%20Shot%2...
marincounty 3 days ago 0 replies      
I think it's a great site. What I need is the "glue"(how all the different programs, set of instructions) fit together.

I realize most website developement is not programming;it's following a lot of directions. This is the reason I hated working with computers when I was younger. I justwasen't interested in learning a bunch of man made termsthat seemed to change yearly. As older dude, I'm looking at it differently.

I still think there's got to be a better way of learning dynamic website developement? I do like the idea of condensed teaching--like cheat sheets.

jwallaceparker 3 days ago 1 reply      
Would like to see the Ruby micro-framework Sinatra on this list.

It's a great starting point for Ruby development and could be a good entry point into Rails, which can be intimidating for a beginner.

TallboyOne 3 days ago 2 replies      
Great stuff :)

Shameless plug for more of the same: http://pineapple.io/tags/all

state 3 days ago 1 reply      
I can't say how many times I have been asked 'How can I start learning to build stuff for the web?' and wanted to give this as an answer. It's not perfect, but it's on GitHub!
colemanfoley 2 days ago 0 replies      
Cool. Thanks for putting this out there. I like it overall, but stepping through the beginner's sequence by highlighting different squares doesn't work great. Separate from the exhaustive glossary view, you could have "track" views where you could guide beginners through different paths, like an all JavaScript path that takes users from front-end stuff to Node to Heroku or whatever. Like Codecademy's tracks. Beginners love that stuff.
MrBra 3 days ago 0 replies      
These kind of cheat sheets make order in my mind and motivate me to start doing something, or at least reinforce the thought that hopefully sooner or later I will!

In either case, thank you.

bliti 3 days ago 1 reply      
The colors are off. Particularly the yellow. It is hard to read. The blue is nice, could be a shade darker. The last square position is empty. Why not put one there with links to your blog or whatever? Its prime real estate, because the reader will flow into it. Having a blank space there takes away from the design.
granttimmerman 3 days ago 1 reply      
Awesome! I'd be great if the title of each language was a link to the language's home page (if applicable) rather than having a <a>Home</a> in every box.
officialjunk 3 days ago 1 reply      
iOS chrome: huge white popup with text "{{ boxes[more_index].name }}"Keeps reopening after I close it... will have to check it out on a comp.
burgerz 3 days ago 1 reply      
The thing I was most interested in was backbone, and it just links to the original site. I mean the colors are nice but this is pretty much useless.
shire 3 days ago 1 reply      
I like this, you should include Udacity for the Python section. They teach everything from Basic Python to web development to software testing and even debugging. Can't find better resource for Python than https://www.udacity.com
filopodium 3 days ago 0 replies      
I'm not seeing any content and the console gives me:

"ReferenceError: CONTENT is not defined"

michalu 3 days ago 0 replies      
This is great, thank you. Some links for Scala:

Documentation: http://www.scala-lang.org/Twitter School for Scala: http://twitter.github.io/scala_school/99 problems in Scala: http://aperiodic.net/phil/scala/s-99/Coursera with Martin Odersky: https://www.coursera.org/course/progfun

shahed 3 days ago 2 replies      
I found out about this cool site a few days before it was posted on HN.

Pats self on the back

gren 3 days ago 0 replies      
Good list indeed.But nothing about Play Framework?
FLUX-YOU 3 days ago 1 reply      
Since a portion of beginners are interested in employment, I wonder how much of this sheet needs to be 'filled in' to become employable at a minimum, junior position?

I've found that the threshold between beginner -> employable is really fuzzy and that's a bit frustrating.

Grue3 2 days ago 0 replies      
Why is there vim and not emacs? Emacs is far better suited for web development, especially with stuff like web-mode.
loucal 3 days ago 1 reply      
IMO clicking rails should show sass also. It shows less which can also be used with rails, but if I'm not mistaken sass is still the default. I'm sending you a pull request now. I didn't remove less, I figured you could consider that yourself, just added sass to rails.
hobolobo 2 days ago 0 replies      
Well done. A very well executed idea.
megrimlock 3 days ago 0 replies      
Does the color coding indicate anything?
gremlinsinc 3 days ago 1 reply      
hey Just pushed some laravel links to This project. . I'm actually wanting to start a dev boot camp her in Dayton that uses online learning resources to teach the fundamentals.. i.e why reinvent the wheel... with pair coding and real idea pitch sessions and learning while working on real startups that we may also help get some traction. ie Dev boot camp meets coworking space meets incubator/accelerator. this will be a great starting point for that... I learned a lot of my coding skills from code academy, team treehouse, and code school..and ruby koans..all are amazing resources.
Aldo_MX 3 days ago 0 replies      
I would rather hide blocks instead of graying them out.
deevus 3 days ago 0 replies      
Don't know if anyone else noticed this but I see the page template briefly before the content is loaded in.

Can't say I've seen this for long enough to notice before.

robseed 3 days ago 0 replies      
Such a relief to see xml described as "An alternative to json".
Splendor 3 days ago 1 reply      
nodeschool.io might be a nice addition to the node.js seciton.
dpratt 3 days ago 0 replies      
"Java, a popular programming language." - that's basically best thing you can say about it, but it also deserves a caveat on how awesome the JVM is.
mrbad101 3 days ago 2 replies      
Why is ColdFusion always the ugly red-headed stepchild? I realize that the amount of people using it in comparison to PHP is very low, but it still exists! Can we get some love?
nwg 3 days ago 1 reply      
Periods. Overused. In marketing. So much. Appears normal.
pintglass 3 days ago 0 replies      
Nice page, Doesn't seem to be any rhyme or reason to the layout, which is strange.
gesman 3 days ago 0 replies      
Add 'donate' button!

Great work

abhishekdelta 3 days ago 0 replies      
The site's broken.
nickthemagicman 3 days ago 0 replies      
Good stuff! Commenting so I don't forget about it.
r0s 3 days ago 0 replies      
Django but no Drupal?
IvanK_net 3 days ago 1 reply      
I recommend to avoid that website. That's why: http://validator.w3.org/check?uri=http%3A%2F%2Fwww.bentobox....
maerF0x0 3 days ago 1 reply      
Lost all credibility (in my mind) when it pointed to w3schools
supahacka 3 days ago 0 replies      
I don't see anything related to web development on this site. It's just an empty page with a header, About Me and Pull request. What's going on?
dhruvarora 3 days ago 0 replies      
Is it just me or is this site broken?
SamBoogie 3 days ago 0 replies      
Awesome, nice design too. Thanks for this
konstantintin 3 days ago 2 replies      
everything about web development... apart from the two of the biggest languages/platforms for web development.
dylandev 3 days ago 0 replies      
If you're going to include Laravel, which is built entirely on top of Symfony, you may also want to include Symfony.
akilism 3 days ago 0 replies      
Green Yellow Redcoloring never fails.
jdorw 3 days ago 0 replies      
descriptions about why I would want to learn each one would be helpful.
known 1 day ago 0 replies      
jbro72 3 days ago 0 replies      
Code snippets in the JSON tutorial are blocked by ad-block plus in Chrome
sebnukem2 3 days ago 0 replies      
Groovy? Grails?
contingencies 3 days ago 0 replies      
Javascript based templating engines and the web don't necessarily mix. They are ideal for mobile, intranets or other known environments, but not something I'd use in this sort of environment. Right tool for the job. https://minus.com/ly4w7OtUMBvxX
chevas 3 days ago 2 replies      
I was hoping to see GO
hoonbae 3 days ago 1 reply      
AsymetricCom 3 days ago 1 reply      
Love all these new technologies that are hardly proven in production and many have been proven to have fundamental design problems leading to security issues that cannot be engineered around without breaking the flexibility offered by the technology, such as PHP and Ruby.

JSON and XML are just data formats, there's nothing special to know about them other than that a lot of stupid enterprises decided that they are standard now so that's what you'll use. Considering that Javascript isn't even a defined standard (although ECMAScript is) , I find the idea of a standard based on it quite laughable.

This is more like a cheat sheet for farmland development, as requested by the landowner. Bring your own tools and teach yourself how to use them, just don't bring your own land unless you plan to forfeit it.

Spy Files 3 wikileaks.org
403 points by frank_boyd  2 days ago   23 comments top 8
TheLegace 2 days ago 3 replies      
From the gist of the incredible difficult to decipher training manual there are 4 systems. Overview of network topology is here:http://i.imgur.com/gzw6nAT.png

1) ADMF-Client & Infection GUI

These seem to be HP Compaq computers, running Windows 7 Ultimate, FinFlyISP GUI and a XMPP client(which runs over TLS and is secure).This is a tool for LEA to use which interfaces with the ADMF backend for managing infections, selection of infection methods, realtime status info and management of all components.

2) ADMF - Central Administration Function

This is the backend which all the LEA terminals in 1 connect to. These are HP DL380 G6 Intel Xeon X5550 @ 2.67GHz servers running hardened Debian(by Dreamlab best practices). It is a core component of their infrastructure and communicates in realtime with all their other component systems. It stores the configuration and initiation of infections. Realtime exchange of info and states(target coming online, being infected, etc.) Contains RFC XMPP used for secure encrypted communications.

3) Network Data processing component (iProxy/NDP01/NDP02)

Infections are remotely activated by ADMF in 2 via the GUI. Each NDP is bridged with 10GB/s fiber bypass module. Incase of hardware/logical failures this module switches automatically to by-pass mode. Thus traffic will never be interrupted. ATTENTION this is highly dynamic bridge, do not change any configuration manually. NDP has been specially configured for his network, any changes are tightly coordinated with Dreamlab.

4) Radius Probe(RP01/RP02)

Realtime monitoring of AAA processes which include:

1. Targets coming online

2. Receiving IP Addresses

3. Changing IP Addresses

4. Going offline

Recording of RADIUS authentications and accounting dialogues. Being always up to date of target IPRP sends info to ADMF, the ADMF provisions the NDP. Running same hardware/OS as 3. The RPs have bidirectional connection with broadband remote access server(BRAS) [1] which are what connect to the global internet from a ISPs network. BRAS aggregrates user sessions from access network. This is where ISPs can inject policy management and QOS. Aggregrates DSLAM connections from locally dispersed in an ISP area network.

Communications Visualized

The slide explains that communication of all components always is initiated towards the ADMF.


Use Cases

1. GUI->ADMF [Infect a target]

2. ADMF->Radius prove [Start monitoring/set a trap on target]

3. Radius->ADMF->NDP/iProxy [Handover of IP]

4. iProxy->NDP [iProxy requests NDP to analyse datastream on IP and "interesting" traffic]

5. NDP->iProxy [Handover traffic matching request]

6. iProxy [changes traffic and modifies data by adding infection parts]

7. iProxy->NDP [iProxy sends modified traffic data to NDP]

8. NDP Reinject [NDP recalculates checksums/resequences TCP/IP packets and reinjects traffic into the stream]

9. Target infection done [Data successfully sent to target]

[1] http://en.wikipedia.org/wiki/Broadband_Remote_Access_Server

conductor 2 days ago 1 reply      
I'm glad this time it is getting more up-votes than the previous submission [0].

There are many interesting documents here, for example the "Finfisher FINFly ISP 2.0 Infrastructure Product Training" [1] which is a presentation/guide from www.gammagroup.com about how to use their software to "infect" the target and collect information about it.

[0] - https://news.ycombinator.com/item?id=6329435

[1] - https://wikileaks.org/spyfiles/docs/GAMMA_2010_FinfFINFISP_e...

detcader 2 days ago 1 reply      
Making all the text of these docs searchable from a single webpage would be lovely..
runn1ng 2 days ago 2 replies      
This is why you need actual journalists... this is just heap of data that's hard to decipher and hard to make sense of.
mkup 2 days ago 1 reply      
There's a screenshot at the page 49 of https://wikileaks.org/spyfiles/docs/GAMMA_2010_FinfFINFISP_e... logs of ADMF trojan upload service) which mentions resource "chrome_installer(3)_129271991323222656.exe" was processed.

Doesn't it mean that ADMF of FinFly somehow interferes with browser auto-update in order to upload its trojan to the target computer? I know browser update file must be somehow cryptographically signed, but NSA may have access to private RSA key used for browser updates, which allows such types of attacks. Isn't it?

lawnchair_larry 1 day ago 0 replies      
The discussion here so far seems to be talking about something other than the general page that this link points to, as if the other commenter had some context that the current title no longer provides. I see Gamma Group being discussed specifically.

I'm going to guess that the title was edited again, so we don't have the intended context. What was the original title?

joering2 2 days ago 1 reply      
I don't have time to read all this but I wish. Please anyone: I need names of organizations and those on the top involved, so I can create my own "no-use list" and avoid those at any cost.

Thank you.

shandip 1 day ago 0 replies      
I'm moving from US, it just keeps on getting worst. Fuck it.
Ask HN: How much recurring income do you generate, and from what?
376 points by marioluigi  23 hours ago   374 comments top 102
jdlshore 20 hours ago 8 replies      
I gross just under $10K per month from http://www.letscodejavascript.com, a subscription-based JavaScript screencast for professional developers [1]. It's a full-time job: I put out two new episodes every week, plus a "special" every month that takes quite a bit more effort. That leaves me with about half my time for developing the business. I'm bootstrapping this, so it's just me. I don't plan to hire any employees until there's more money coming in. (I also make a few hundred a month from royalties on my book [2], which is truly passive.)

I've talked about Let's Code JavaScript on HN before; check out the previous thread [3] for some details about how I started and market the site.

Since simonswords82 was so generous with details about his business, I'll do the same. About 2% of the visitors to the site sign up for the free trial. That seems poor, although I don't have a lot of insight as to what the number "should" be. I do require a credit card in order to sign up for the trial. The trial automatically converts to a subscription after seven days.

About 70% of trial subscribers convert to a paid subscription. This seems pretty good to me, although I'd of course be happier if it was higher. Once they've subscribed, I lose about 25% of subscribers in the first month, and then the number drops asymptotically down to about 5% (of the initial total) per month. I'm reasonably happy with this as well. It's poor by the standards of a SaaS, where a churn rate of 1-2% is doable, but I think it's pretty good for a content site.

My most recent push was an inbound marketing campaign: I took one of my monthly specials and turned it into a dedicated site on object-oriented JavaScript [4]. That was very successful; it nearly doubled traffic in the first month (from 2,800 uniques in the previous month to 5,400) and looks like it will permanently add about 1,500 uniques per month. Trial rates went down slightly as a result, but overall subscriptions went up.

The biggest challenge for me is having lots of things I'd like to pursue, but not enough time to do them all. The Object Playground inbound marketing campaign was successful, but a lot of work. I recently released another special that might make a good inbound campaign (on large-scale JavaScript fundamentals: modularity and automated cross-browser unit testing), but I'm not sure it's worth the time it would take to create a marketing site for it on the scale of Object Playground.

For now I'm focusing on A/B testing various ideas for improving conversion. It takes less effort and potentially has longer-term impact. So far, I've improved the subscribe page [5] by adding testimonials and a better design. Next, I'll probably provide more opportunities for people to preview the series without signing up, as well as more obvious calls to action on the video pages. I also have some other plans in the works that I can't talk about yet. :-)

[1] My screencast is Let's Code: Test-Driven JavaScript, a series for professional JavaScript developers. It's available at http://www.letscodejavascript.com. I'd love to hear your feedback.

[2] My book is The Art of Agile Development. It's been out for over five years now, so it's nice to still be getting royalties from it.

[3] I talked about my experiences launching and marketing the screencast here: https://news.ycombinator.com/item?id=6038226

[4] My recent inbound marketing campaign was Object Playground, a tutorial and visualizer for object-oriented JavaScript: http://www.objectplayground.com.

[5] The Let's Code JavaScript subscribe page is at http://www.letscodejavascript.com/v3/subscribe.

simonswords82 22 hours ago 7 replies      
TL;DR: The top of our funnel is fine, and our app is making money, but it's not "easy money" and our trial to paying customer sign up needs some serious attention.

I run a HR app for SMEs called http://www.staffsquared.com. We're making a comfortable 5 figures each month.

We're reinvesting this income back in the product either in the form of new functionality (paying programmers) or advertising (paying Google Adwords). We've increased our Adwords spend, invested in SEO (on page and off page) and a recent redesign saw a decrease in bounce rate and increase in trial sign up rates.

Our site visit to trial sign up rate for the last five months looks like this:

April: 13.02%

May: 12.37%

June: 13.76%

July: 15.61%

August: 16.46%

Our bounce rate for the last five months looks like this:

April: 39.54%

May: 40.06%

June: 37.21%

July: 32.8%

August: 31.17%

So both of those top end of the funnel stats are moving in the right direction.

Our free trial to paying customers is the area we're really focussing on at the moment as it's really not high enough. So we're re-targeting accounts that have expired to find out how we can serve them better and tell them about new features. We're also working hard on our onboarding stuff (the type of stuff you'll read patio11 talking about) including more intelligent automated e-mails based on the status of their account at a point in time.

Happy to answer any questions you good people might have where I can...

emhart 21 hours ago 2 replies      
I've usually read these threads without thinking about my own situation, but suddenly realized, I'm getting checks every month. It's not much, only $100-$250 per month, based on advertisements on my youtube channel, most coming from a 24 part series I made on locks & lockpicking a few years ago, but it's passive to the point that I literally forget about it.

Unfortunately I'm the sort who is very uncomfortable asking for money, or even advertising on my content (only about 50% of the videos I put out have ads at all, and many of the most popular do not), but at the same time I'd love to have the time & resources to produce more & better content in the future.

Not looking for advice, as my disposition away from revenue is much stronger than my wish to get money, and I've learned that lesson many times, just adding another voice to the thread.

drpancake 22 hours ago 4 replies      
I'm making roughly $300/month from three iPhone apps. They're all quite simple and I'd estimate that I've put in less than a month's actual work building them; although as a disclaimer, this is my day job so I can put these together relatively quickly.

My fourth app was a larger time investment and gets quite a lot more downloads. It makes no income now, but I'll add In-App Purchases soon.

I'm freelancing for ~45 hours a month to fund this while backpacking all over the world. I should blog about it.


Edit: I put up a LaunchRock page, if you would be interested in a blog about this stuff, leave me your details: http://theoreticalblog.launchrock.com

TamDenholm 18 hours ago 5 replies      
Bit late to the boat but:

Around $700/mo from a themeforest account.

And the more interesting story, about 4.5k/mo from a cleaning business that i bought.

I will at some point write the story up, but the TL:DR is:Spotted vastly under valued cleaning business with complete staff.Turnover of previous owner 190k a year.Profit of previous owner 18k. Yup, 18k....Bought it for 13.5k.

Still in the early stages and still changing things but the previous owner was/is in massive debt, little free time to put into the business, did EVERYTHING on paper/fax/phone and had enormous monthly costs.

Theres a much longer story to this but i'll write it up in a few months when its a bit more proven.

toumhi 23 hours ago 2 replies      
I didn't post on the last threads I think, but I have had some modest success with passive income, was making up to 700 euros a month 2 years ago, this is down to 130 euros a month now. Still not too bad considering I haven't really touched the site for almost 2 years. But my heart isn't in that kind of projects anymore. Passive income is a bit overrated in my experience.

Still nice to get a small check at the end of the month.

The site in question is http://www.giftcertificatefactory.com, it provides printable gift certificate templates.

EDIT: I should add the money comes in from Adsense. I tried other monetization schemes as described there http://www.sparklewise.com/my-first-passive-income-project-o...

gravitronic 20 hours ago 1 reply      
Last year I made a decent DJ application for Android. I probably invested a few thousand hours into it & the framework I built it on that could compile to Android, Blackberry Playbook, and HP Touchpad. I grossed just under $10k between sales on the three platforms, and advertising on Android. That works out to a few dollars per hour, last year.

This year, I don't have time to work on it further but between advertising and sales I'm still making ~400-600 USD/month. For 0 hours investment. I love the long tail.

galfarragem 31 minutes ago 0 replies      
$15/m with amazon affiliate links in a niche blog: http://www.archimodels.info 7.5k visits month). Unfortunately I didn't start the blog thinking about monetizing it. It's a very bad market (architectural students and teachers). Hopefully I can get $30 for 5h work every month (10min x 30days). It's just a hobby that allowed me to learn about web development (that's not my work field).
maxprogram 21 hours ago 3 replies      
~$1000 a month. Designed, edited and published a book of Warren Buffett's letters to shareholders (see http://amzn.com/1595910778). An opportunity I stumbled into. But I suppose "get publication rights from Warren Buffett" isn't a repeatable business model :
euroclydon 20 hours ago 1 reply      
I make $300-$500 per month with an online design tool for printable cupcake wrappers. I don't do any advertising. I get 80-100 uniques per day. I have very few quality inbound links. I do rank high for a few keyword combos, but their monthly traffic isn't that big.

I spent quite a bit of time early on writing the website, and lost some hair recently trying unsuccessfully to upgrade the OSS libraries, but for the most part it runs itself, at least when GoDaddy's $60/month VPS isn't flaking out. The only other expenses are the domain, e-junkie, and payment processing fees.


ghc 22 hours ago 3 replies      
I generate about $900/month of semi-passive income from http://algorithmic.ly, but the initial setup cost is high. In the future I want it to be the goto-company for adding generalized algorithms to apps, products and services (provided as a service), but while I validate the market there's a huge initial setup cost (about 10 hrs), spent on data modeling, cluster deployment and secure key generation.
23andwalnut 23 hours ago 3 replies      
I've made about $3k a month in semi-passive income from my codecanyon portfolio in 2013. I call it semi-passive income because I have to spend some time on support each day, but it usually doesn't take more than 30 minutes.

EDIT: My portfolio http://codecanyon.net/user/23andwalnut/portfolio

domrdy 2 hours ago 0 replies      
I feel a little bit ashamed to post this but whatever. I used to write bots for a popular online game that would harvest materials and sell stuff in the games auction house. At first I only wanted to automate some tedious, boring tasks in the game, but over time I got really good at it to the point where I wouldnt have to touch my guy for days. Anyway, there where lots of bots on my servers and we would all undercut each other to a point where our materials where worth almost nothing. Around this time the company released an API where you could pull auction house data for your server. I wrote some scripts that would pull the data, store them in redis and crunch some numbers that I would later feed to my bots, to gain some advantage. Basically, I was able to withhold my stock when the price reached a certain threshold and buyout all of my competitions stock at super low prices. By that time I had already "scaled up" and ran several instances on various servers, all full automated by some python scripts. I wrote a web socket based web interface that allowed me to see my bots log messages in real time from work. I set up alerts when game masters messaged so I was able to answer them to prove that I was not a bot, all remotely. It was so much fun. At the end of each month I would sell the in-game currency to some chinese companies, the last few months I made between 300-500 / month, double that amount around christmas. One day, the bann hammer (rightfully so!) hit me hard and I lost all my accounts. It still was a fun experience that introduced me to several new technologies.
clarky07 22 hours ago 3 replies      
I make between 5-10k a month on my apps and book. (It depends on the season. Summer and Christmas are best.)



vldx 22 hours ago 5 replies      
It might sound kind of obscene here on HN, but I'm making about 3500 euros per month, semi-passive from adult related site/community. It's subscription based and the content is user submitted (that's why it's semi-passive). Some moderation is necessary, as well basic user support, but overall - not so much hustle.
tachibana 22 hours ago 2 replies      
I am a data point for the worst-case example. I don't have a hot application or a popular website, and most of my money is earned the old-fashioned way.

My passive income from my investments in government bonds is enough to cover mortgage, basic living expenses for my family, and two family trips a year.

Source of money for investments:

- savings from many years of working and diligently saving

- some real estate investments

clemesha 21 hours ago 1 reply      
I make ~$400 per month off of https://itunes.apple.com/app/the-wiki-game-a-wikipedia/id459... (and counterpart: https://itunes.apple.com/us/app/wiki-game-hd-wikipedia-game/...).

I started 'The Wiki Game' by building this web game: http://thewikigame.com - but all revenue comes from the iOS apps, not the site. Been meaning to potentially monetize the site some day. It gets ~30,000 players per month, with time-on-site ~9mins.

leviathan 22 hours ago 3 replies      
$0.1/month from ads in a free iPhone app.
dangrossman 22 hours ago 1 reply      
Improvely reached $10,000/mo RR recently, less than a year from launch (https://www.improvely.com).

I also run W3Counter (freemium) and a couple smaller services and paid plugins for Shopify stores.

callmeed 7 hours ago 1 reply      
I have 2 companies in the professional photography space: http://bigfolio.com and http://aphotofolio.com. The first serves wedding and portrait photogs and the second high-end editorial, commercial, fashion. We provide website designs and a custom CMS for managing galleries. We get a setup fee (though that is going away soon) and monthly hosting. They aren't exactly equal but each is making in the low six figures per month.

On the wedding side we also have http://nextproof.com which is sort of a "shopify for wedding photos". It makes around $30k/month in subscription + transaction fees.

On the commercial photo side, we have http://editdrop.com which is a feedback/collaboration tool for photographers and their clients. It makes about $2k/month at the moment since we haven't done much marketing yet.

Overall, I'm bearish on the professional photo space so we are actively looking into other verticals and doing a lot of customer dev/research.

My wife and I also run http://cheergram.com in our spare time. Right now we are making a few hundred bucks a month in sales but we did almost $3k in Instagram Christmas cards last year between thanksgiving and Christmas. I'm hoping we can top that this holiday season.

mhartl 15 hours ago 1 reply      
The Ruby on Rails Tutorial (http://railstutorial.org/), conceived as a 4-Hour Workweekstyle product business, makes low five figures per month, requiring just about the proverbial four hours of work per week (mostly minor book updates and customer service emails). New editions are a lot of work (e.g., ~2 months full-time to redo the screencasts), but the new sales cycle typically yields a mid-five-figure income spike the month of the launch.

I'm currently working on a project designed to help make Rails Tutorialtype stories more common among hackers. Stay tuned...

wellboy 21 hours ago 2 replies      
$2000/month from free Android apps.

I just copied existing apps on android like Logo Quiz, 4 pics 1 word etc. that were number 1 in the play store. Just took 24h to rebuild this apps, since they're quite simple. Did that around 10 times.

Admob makes $500/month, Airpush $1,500/month.

However, Google just shut down Airpush push notifications, so the latter is now gone. ha.

snoonan 18 hours ago 1 reply      
Interesting point against recurring revenue for some products: We increased overall sales by charging a fixed price for permanent access vs. recurring billing. The lifetime value of the customer turned out to be less in the recurring model. It took us about 2 years to discover this. Just something to keep an eye on.
xoail 22 hours ago 1 reply      
Few years ago I wrote a solution manual to one of my text books (half of it was part of the assignments). I sell it on Amazon for $30 for pdf download. Been making around $200/month.
cageface 22 hours ago 0 replies      
I make about $500/month from my iOS apps. Considering how much time I put into them I can't say it's really been worth it yet but I plan to at least upgrade them for iOS 7. They did open the door for some unsolicited contracting work though.


IgorPartola 20 hours ago 0 replies      
Meta note: please don't be shy to share links to what it is that's generating your income. I hate reading things like "I have this simple app that's making me $X/month" and not be able to see the context. Who knows, maybe I'll find it useful and pay for it too.
Ologn 22 hours ago 2 replies      
Between $1450 and $1650 a month from ads on Android apps. One app does about $1100 a month, another does $325 and the rest collectively maybe $150.
n1c 22 hours ago 2 replies      
I'm not sure if my project counts; 'cause it's running at a loss?


I made it because it seemed like /r/malefashionadvice needed somewhere to host their fits with a little extra functionality. Every now and then I build a feature or two but mostly it just ticks over.

For revenue I make a little via adsense but mostly try and focus on the affiliate products, for example on this page http://drsd.so/15YxDWv the 'shop this look' links earn me affiliate revenue.

jakobe 19 hours ago 0 replies      
I make around $2000/month from two Mac apps (database tools). Revenue is falling as multiple competitors cloned my profitable app, so I have to do more client work again :(
trevorcreech 22 hours ago 3 replies      
$2500/mo from AdSense on http://coverphotofinder.com/

Zero-maintenance, which is nice.

ape4 22 hours ago 4 replies      
It seems the big winner is Apple and Google. They passively collect 30% on the apps we spend months making.
zrail 23 hours ago 1 reply      
I wrote a guide to integrating Stripe payments into Rails applications that expands greatly upon the 10-minute quick-starts[1]. It launched a little over a month ago and has generated more than $10k. I'm expecting that to drop quite a bit going forward but I'm still hoping for ~$500 in monthly revenue.

[1]: https://www.petekeen.net/mastering-modern-payments

withoutfriction 21 hours ago 0 replies      
It's good to be back!

I guess it was around 864 days ago that I posted the original one of these threads!

My current stats:

$~500/mo from a few supplement related websites, and some fitness stuff. Last worked on these back in April. Total work/month is roughly 30 minutes.

My current project:

Doing the research so that I can boost this to around $5000/mo :)

I figure this is as good a time as any to announce that I'm actually putting together a little recurring project of my own - and it's pretty meta.

It's pure stats and useful information on who generates recurring income, how much work they had to do to get there, what they learned/should've done/shouldn't have done. I'm researching this purely for myself, because I want to get to more recurring income faster (because recurring income is so, so, so freeing) - but a few friends asked me to package it up so I'm doing so!

Check it out [1]. Also I figure I should post it to HN, so I'll update this comment when I do so :)

Thanks guys - and really glad to see this thread live on longer than when I first posted it almost three years ago!

[1]: http://recurringincome.meteor.com/

Edit 1:

On HN. [2]

[2]: https://news.ycombinator.com/item?id=6432851

jamesgagan 23 hours ago 4 replies      
I make around $5 to $10 a day from my site http://tunes.io I haven't put any effort into marketing it or trying to monetize it other than adsense. Maybe I should be trying harder!
acconrad 13 hours ago 0 replies      
Since this thread didn't specify that the recurring income has to come solely from technology, I make $400-$1k/mo DJing. Technically it's work because it's not passive, but it is recurring and it is a hobby that requires little to no work - I have a LOT of fun doing it and it pays well by the hour. I'm only posting this because I think it's important to also point out that you can turn hobbies into passive, recurring income and that is a surefire way to getting the most out of your passive income.
kbelbina 23 hours ago 4 replies      
I generate around $2,500/mo. I operate a company which mines poker data and have a couple of partners, plus some large server / tech / support costs. No-one is full time on the business any more as after Black Friday there isn't a lot of $ in poker: http://hhsmithy.com/
jarofgreen 20 hours ago 0 replies      
In the UK I started and ran a site listing tech events: https://opentechcalendar.co.uk/index.php It's just had it's first birthday and is doing well.

This was done in a "maybe-a-bit-to-lean" fashion. There was a previous facility run by a local meetup that suddenly stopped, so I knew there was demand before I started. The first version was a MediaWiki site with a hacked open source calendar plugin that took 4 days from buying the domain to public launch. This was then later replaced with custom software.

This now picks up a small amount from direct sponsorship (as in, I directly approach ppl and don't use something like Google AdWords).

It took a bit to write, but I've realised the specific niche functionality could serve others and I'm currently working on turning this into a platform for any area. It's early days for that, but it works and it's up at http://ican.hasacalendar.co.uk/

(I also have some recurring income supporting a freelance contract I did which now takes a couple of days per month but I don't think that's what most ppl here are interested in.)

kbart 2 hours ago 0 replies      
Nothing, 0 ;( But after seeing so many success stories here, I hope one day to overcome that internal brake inside me that prevents from trying.
europa 20 hours ago 1 reply      
Making $4000 + / Month profit . Running a consulting firm. I have two direct employees and few pass-through 's . Revenue is much bigger a number at $100,000 + /Month . Effort is very less to maintain this profit as only spend few hours /month to run payroll , invoicing clients and make timely payment out to the vendors.

pass-through : Consultants not employed by my company but work for my clients.

yumraj 22 hours ago 1 reply      
My wife just posted an eBook - Startup Financing, Equity & Tax, which might be of interest to some folks here.Link: https://itunes.apple.com/us/book/startup-financing-equity-ta...

There is no sale data yet, but would be happy to share in the next thread.

Also, if anyone has any pointers on how to market an eBook, would love to hear.

asciimo 22 hours ago 1 reply      
I mine about .0015 BTC a day, a figure that has been declining consistently and rapidly.
JeremyMorgan 18 hours ago 1 reply      
I pull in anywhere from $400-$600 in adsense off my blog, it's not exactly passive because I have to contribute content to it. But I originally only put AS on there to cover hosting costs (and other servers for dev, etc) but now it's starting to get closer to "income".

I'm still putting it into things like Raspberry Pis, Arduinos, Parallellas etc for stuff to write about on the blog. I use that money to try out other services as well, it's nowhere near what I'd call a "business" at this point.

suhastech 21 hours ago 1 reply      
http://thehorcrux.com/ currently making $400-$500. Fluctuates a bit. I haven't done much marketing (apart from a Show HN)

I'm not even sure how people are finding it. My analytics software says 85% come from "Direct Traffic" which is weird.

Shpigford 4 hours ago 0 replies      
Making around $5000/mo between http://popsurvey.com and http://temper.io (recently launched).

But that's rising a bit more rapidly now: http://joshpigford.com/kill-the-free-how-to-increase-revenue...

Slow, but steady, growth. Definitely a prime example of the "Long, Slow, SaaS Ramp of Death." http://businessofsoftware.org/2012/10/gail-goodman-the-long-...

kephra 16 hours ago 0 replies      
- I'm doing between l$20k and l$30k per month on commissions on vendor systems that rent out shoutcast servers to musicians and DJs in Secondlife. oups thats only us$80-$120, but its game money, that I can drop into tipjars, if I like music, or use it pay graphic designers.

- I'm doing Linux maintenance for a dozen servers (Debian, Linux Container, Nagios, Make+M4 as management - hey puppet, chef and cfenginer are for quiche eaters) for Euro600/year each, basically for doing backup, apt-get, and having a nagios screen open.

- I have sold the 3rd w3dig.com installation, with an Euro1000 anual maintenance contract recently. This will hopefully become my next 'big' software.

- I still have 22 XML::Edifact customers, who pay Euro1000 twice a year for maintenance update, when the next UN/EDIFACT standard is published. A semi-passive income that requires a week work twice a year, and payed my lifestyle, free software experiments, slack, and procrastination for a 3rd of my life so far. Not bad for a software I published under GPL 15 years ago.

jaymzcampbell 22 hours ago 0 replies      
Around $40-50 from admob and amazon affiliate links. It pays for my netflix. I originally set myself a goal "just to see" of buying myself one pint of ale from a pub over the course of a year for app sales/ads - not exactly ambitious but I thought i'd end up at best shifting a few cents a month.

I had already an app on android with ~3000 active installs for doing simple shopping look ups. I changed it to throw in some affiliate codes and fixed a crash and updated it approximately 18 months ago now and haven't made a single update.

It's next to nothing but it encouraged me to look more into at least trying things out for myself - I would never have thought (and still can't) it would be any more than a personal exercise. If I look at it as "free netflix for 2 years" then it's a real thing to me and "means something".

xur17 20 hours ago 4 replies      
I make anywhere from $300 to $800/month on http://pizzacodes.com. About 3 or 4 months ago I switched domain names to make it more memorable, and I dropped out of search results for everything but my site name. Traffic has increased pretty substantially from other sources over the past few months, so I'm back just over $600/month again.
IgorPartola 20 hours ago 0 replies      
I net roughly $230/month from a rental property I own. I have a realtor I trust manage it for a "first month + 5% of rent" fee. The property is located in a market where rent is much higher than the mortgage (about 150%), so I end up making a profit while building equity into a house at a low interest rate. Not exciting, but it is a viable model and management fees seem very reasonable for the amount of work the realtor does.
pmtarantino 23 hours ago 4 replies      
A better question I'd like to read is "Good ideas for recurring income".
jsleuth 20 hours ago 1 reply      
Been earning a couple hundred per year with a time-tracking/report-generating site for therapists-in-training. I think one of the big downfalls of the concept was that I chose too small of a niche to serve (marriage and family therapists in training in the US). The most tangible benefit from building the service was the coding knowledge gained which serves my freelance work very well. http://www.therapyhourstracker.com/
anovikov 23 hours ago 0 replies      
$800 a month for support of a few scripts i written 3 years ago. Drop in the bucket but still keeps me very motivated doing any work for that customer (and this is the only work at all that i still do myself, not my employees).
egomaksab 2 hours ago 0 replies      
4 figure each month, Breeze (http://breeze.pm), it's a project management app (Basecamp and Trello mashup).
nihaar 22 hours ago 1 reply      
I make about $300/mo with https://broker.mapthatpad.com. Not even close to what I originally was intending (and the amount of time I've spent building it) but to be honest, I have not been doing a whole lot in terms of marketing and selling it at the moment.

I hope to do more selling/marketing in the future and get this monthly number higher.

veb 18 hours ago 2 replies      
I run a Facebook fan page for a TV show, and use Teespring (http://www.teespring.com) to monetize the page.

Every few months I do a sale, which nets around $4,000 USD.

leviathant 23 hours ago 0 replies      
I have $200-$300 in (mostly) eBay and (less so) Amazon affiliate income from a message board and news site I run, both about a band.
jonstjohn 17 hours ago 1 reply      
About $100/month on http://www.climbingweather.com

It was ad-free for years, finally put some ads up last year and now it's covering my expenses. Haven't done much development in a couple years, but working on an updated Android app. A bit skeptical that I'll make much money from it, debating pay-app vs ads vs free-free. Now trying to pick up some real advertisers (currently adsense).

acketon 21 hours ago 0 replies      
I do a bit of freelance design work each month, but I've been working on a few products for designers to generate recurring income and solve some annoyances I have in my workflow and tools.

The first ( http://www.mockuprocket.com ) is close to finished and will be a desktop app to help quickly create design mockup presentations and upload them to your server. There are some services that do a similar thing but I've always preferred to keep client work on my server...especially for designs that need to kept under wraps until release. The app will also handle different layouts and let you customize the templates for each client so you can setup branding and so forth.

I'm a designer and front-end developer so it is my first serious attempt at building and creating something more involved and it's been a fun learning experience. Hopefully some other designers will find it useful and I can make a few bucks on it.

My wife is a self-published fiction author (http://www.amazon.com/Stephanie-Void/e/B0035Z08GI & http://www.stephanievoid.com ) mostly young adult fantasy/scifi. Visibility is the hardest thing when going independent because the Kindle/iTunes book stores are very hard to get found in. I actually think there is some sort of opportunity for a startup offering some kind of better book shopping experience with a bit of Netflix's recommendation engine or something.

She hasn't gotten enough visibility yet among her young adult audience to really take off but has been making enough each month that it is worth it. She keeps writing more books though so it should slowly increase over the years.

snori74 20 hours ago 1 reply      
My Linux server tutorial course site http://GREP101.com brings in $700 on a good month and $100 on a bad one. Simply a reflection of the fact that I don't have the necessary things in place to drive consistant traffic to the site - when traffic comes then I get good conversion and a full course, but if not, not.

I keep it going mainly because the feedback is very encouraging, (people really do get a buzz out of learning this stuff!). It requires only a small bit of work each week to keep ticking over, but honestly it doesn't make enough to justify that if money was the only issue.

otikik 23 hours ago 1 reply      
Judson 21 hours ago 0 replies      
I've been making ~$400/mo for the past 6 years from http://askjud.com. Its a simple trick you can play on your friends.

Info about how to use it http://www.wikihow.com/Use-Ask-Jud

bond 20 hours ago 0 replies      
Making about $800/month from 2 Android apps. Not much but it keeps me alive.

Trying to release some games and see if I can increase that amount in the next few months...

emilioolivares 12 hours ago 0 replies      
This thread is full of HN gold! Thanks everyone for sharing.

I make about $450 dlls per month offering cheap cpanel hosting @ http://www.simplehosting.co. Interestingly most of my clients are in emerging markets, such as Latin America, Indonesia, and Vietnam. It's not totally passive as I have to do support and other admin stuff, but it's not bad.


morphar 13 hours ago 0 replies      
I have a simple IP lookup site (http://showip.net) that I created many years ago. I created it because I needed it (but mainly too learn at that point ;)Since then it has gotten better and better indexing on Google until it reached a steady level at around 100.000 - 130.000 visitors / month.

The ads has been fluctuating quite a bit, but overall it has been going steadily up.Currently I earn somewhere between $250 - $500 / month.

I haven't done much but a bit of tweaking now and then since the initial version, though I have had plenty of plans...I have changed the GEO IP location DB a couple of times, but the only major change was a rewrite from PHP/MySQL to Node.js and a GEO IP database directly in NginX.

handzhiev 17 hours ago 0 replies      
$4 - $5k monthly from PHP apps for webmasters and premium Wordpress plugins (the latter works better recently). This is far from passive though as it requires constant updating and support.

We have a bunch of content sites but they barely bring $200 - $300 from adsense and affiliate (used to be 10x a while ago).

coherentpony 22 hours ago 3 replies      
Run a consulting firm. Make about $250,000 per month.
mVChr 19 hours ago 0 replies      
Small stakes, but completely passive. About ~$500/mo from Adsense on what are essentially niche long-tail SEO targeted yellow-page-like regional sites for very specific verticals. Not a lot of money, but I haven't touched them since 2007 (when they were averaging closer to $800/mo). Initial investment was mostly time doing research, implementing, and SEO stuff. Also experimenting: abandoning failed sites or improving ones with potential. Now the successful ones are completely passive sources of income and the only expenses are hosting and domain renewal.

Right now I'm working on a more substantial side-project that will provide an actual service that hopefully people will actually want to use and subscribe to for their businesses. It will require more maintenance and time and monetary investment, but in the long run should be much more satisfying and potentially bring in more income.

darkcatstudios 3 hours ago 0 replies      
I WAS taking around 1000 PM through an online printing service which i sold off about 3 years back as i hadnt got time to put the effort into it that it involved. I am now looking at re-launching that as the new owner disolved it and let the domain lapse (www.a2prints.co.uk) (i didnt sell the IP)As you'll see the site is very dated now so im in the middle of a compete rebuild, hope to launch again in a few weeks. Currently adwords is basically paying for itself, but the bounce rate is understandably very high due to the very dated nature of the site.

Should turn around 7k pm after relaunch with a realistic initial estimate of 10 1-print jobs per day.

nish1500 22 hours ago 4 replies      
21, drop-out, profit ~ $7k a month, working part-time, and no partner. Up from $31/month last December. Comes from sale of plugins. Not recurring, but stable.
amberes 22 hours ago 0 replies      
About 1000 from a subscription based web analytics niche thing and another 2500 from my wife as she works for the government.
thibaut_barrere 20 hours ago 0 replies      
I just crossed 500$/mo with https://www.wisecashhq.com (cash flow forecasting for freelancers and small businesses, launched officially 2.5 months ago).

This is far away from passive income since I'm actively working on it (I'm bootstrapping it + consulting/freelancing the other days).

eekfuh 21 hours ago 0 replies      
Around $1000 per month for an iOS app I wrote in 2008 and have made some updates to. It used make around $2k a month.
olofsj 20 hours ago 0 replies      
A small single-page info-site I made in a day or two some time ago started picking up traffic and now makes around $500/month from adsense ads. Quite nice for the work put into it, but of course if you take into account all my sites and apps that made nothing it's not much for the total effort. But now that it's getting traffic I have some ideas for building it out into a larger site, but I haven't found the time yet.
spencerfry 22 hours ago 0 replies      
https://www.uncover.com has been up and running for about four months now. We're bootstrapped and doing a bit over $5,000/month in recurring revenue. I wrote a three-month recap on our progress last month: http://spencerfry.com/what-i-ve-learned-since-releasing-unco...
appbot 12 hours ago 0 replies      
I currently make betweet $3k and 4k a month from http://stuartkhall.com/posts/an-app-store-experiment and http://appbot.co
ompemi 13 hours ago 0 replies      
Around $5K/mo for few android apps, being 60/40 between paid and inapp + paid versus ads.
jeffwilder 21 hours ago 2 replies      
Every year around Halloween I make $400-600 via adsense with http://trickortreattimes.com/ which lists trick or treat times for cities/towns. It felt like a good service to provide as you really have to hunt for the data. First year I did the aggregating myself, last year I added user submission which made it much more passive.

It's time for me to update it for another year!

anonymous1983 17 hours ago 1 reply      
I gross approximately 75k a month in RR, split between my business partner and I. 60k from IPhone apps and 15k from Android apps.
KamiCrit 22 hours ago 1 reply      
~$130 from ads on YouTube videos (http://www.youtube.com/user/YTBYlover
derwiki 20 hours ago 0 replies      
I get about $100/month from:

  * Lending out my cameras/lenses  * The cut that CameraLends takes off other transactions  * Affiliate marketing
for my side project CameraLends.com

benhirashima 21 hours ago 2 replies      
i make around 1300 USD a month from this android app i made two years ago. i have to update it every time a new version of android is released, and i spend maybe 5 minutes a day on email support.


wielebny 6 hours ago 1 reply      
About 400EUR monthly from running game servers on open-source game.
benmorris 21 hours ago 1 reply      
$1k-$3k/m (depending on season) mostly passive income from my design online niche sign related websites. I've done a lot in design online software so I made my own and farm out the production side. I've automated most of it and it provides a nice steady income when I'm between clients. I also license the same platform to clients when it fits their needs.
gurvinder 20 hours ago 0 replies      
About $400 per month from websites ( ads) and iPhone apps. Used to be 2k per month but has dropped low because of lack of time for attention.
wingerlang 21 hours ago 0 replies      
Around 0-300 USD from stuff I've developed for jailbroken iOS devices.

Note that that's a couple of months after release, and most of the revenue comes during the first two to three days.

AliEzer 22 hours ago 1 reply      
I make enough to buy a Frappuccino from day to day, mostly from a reaction gifs application on the App Store : https://itunes.apple.com/us/app/my-reaction-when/id632831985...

By the way, all in-app purchases are free today and tomorrow...

jankins 21 hours ago 0 replies      
I'm making $200/mo on average from one iPhone app. It took me a month to build it a year ago and sales have remained stable, except for one $800 month when I got featured in a popular newsletter. I'm currently polishing up an iPad version and will experiment with increasing the price when it goes Universal.
bmcd 20 hours ago 0 replies      
I make under $1,000 per month with a Salesforce.com application: https://appexchange.salesforce.com/listingDetail?listingId=a...

I'm working on a few more to try and supplement this.

abemassry 18 hours ago 0 replies      
$2.50/month from https://wsend.net I'm working on growing it and developing add ons that use it as a backend. No day to day work, 1 hour of server maintenance a month approx.
prepaidcc 13 hours ago 0 replies      
Created http://www.canadaprepaidcreditcard.com in June last year. Traffic has grown steadily to 3000+ unique / month. A large Canadian daily newspaper included link to site in a story on prepaid credit cards which spiked traffic for a week. Otherwise traffic is almost all organic search. Adsense revenue grew steadily and is up to $120+ / month. I have one affiliate ($35 per sign-up) that has paid once. Have to look into this some more.

Created http://www.australiaprepaidcreditcard.com, http://www.usprepaidcreditcard.com and http://www.ukprepaidcreditcard.co.uk sites recently. So far only UK site is following steady growth pattern. Apparently no one is interested in Australian cards and US has trillions of similar sites so mine is drowned in search.

I did Canada site card research myself. But didn't have time for Australia, UK and US site research. So I created 3 Fiverr jobs with template Excel workbook asking person to search internet and fill with as many cards as they could find. I got 4 people per card so between them I got good detail though had to clean it up and fill in the blanks.

Sites requires minimal ongoing maintenance. Actually I have had customers and several card companies contact me to make corrections and updates.

acoleman616 21 hours ago 0 replies      
I make $0/month now, but I'm working on a book ("Your First Web App", http://www.alexpcoleman.com/your-first-web-app/) and another SaaS app now to hopefully change that soon.
widdershins 22 hours ago 0 replies      
I make around 400 per month on tutorial videos for music production applications. It used to be more like 1000, but I've neglected the site in favour of pursuing programming (so I can make my own music applications, instead of talking about other peoples').
chromaton 20 hours ago 0 replies      
I'm at around $12000/month REVENUE from my side business doing online machining. Unfortunately, it's neither as passive as I'd like it to be, and much of the money goes back out as expenses.
ankit70 20 hours ago 0 replies      
For me, it's around $200 from Affiliate Marketing. My blog (http://ankitkumar.in) has couple of articles with affiliate links in them.
mflanagan 22 hours ago 1 reply      
I make 1-2k/month from WindowTabs (windowtabs.com), I've been neglecting it, I think I could make a good bit more if I put some time into it. It's hard to say no to the consulting work...
beachstartup 23 hours ago 0 replies      
in the millions/year and growing. managed hosting and cloud hosting.

the hard part is keeping the profits as we learn to scale the business.

mgz 18 hours ago 1 reply      
Couple hundred dollars from running ads on http://standartgost.ru
MrBigJoe 13 hours ago 0 replies      
I make roughly 60 a month from http://www.phonecompare.co.uk

It's written in PHP/MySQL using Symfony 2 and hosted on a UK based VPS.

It's only been online for a short period and I'm working on it all of the time to increase what it's making so we'll see how it goes. At the moment it's pretty bare and doesn't have a huge amount of value so it's not doing very well in the search engines, but I'll keep plugging away and give it a reasonable chance to see what its potential is like.

I'd like to add a comparison feature which will allow people to compare the specs of the handsets against each other which will hopefully give it a bit more of an edge.

benhebert 16 hours ago 1 reply      
I earn 1,500 - 2,000 a month off of niche websites. Nothing fancy.
ChrisNorstrom 13 hours ago 1 reply      
This is one of the greatest motivations for young and budding entrepreneurs. Even more so than aspiring speeches or conference talks.

I'd like to thank everyone that posted links and revealed your numbers. People usually don't do that because it invites competition but it's amazing to see how nice and inviting the HN community is. I'm also AMAZED at the familiar faces. I've seen and bought a lot of code from some of you guys without realizing many of you visit HN.

Here's my crap:

http://dayonepp.com - Maybe $100/month (down season) then I think $500/month (up season) NOT passive. Lots of work. I handle fulfillment.

http://affordabl.es - $0, just launched

http://residentevilradio.com - $0, (ran Amazon affiliate links)

http://timeforzen.com - $0, needs redesign, will monetize later this year.

BTW, where's http://CandyJapan.com guy? Last I heard he told us his project was successful at around $3,500/month in revenue.

Kanbab 22 hours ago 2 replies      
low 4 figures from real estate
newppc 21 hours ago 1 reply      
I make about $30 a month running a small coupon code website focused on cell phones. Again it's almost nothing but the upshot is if the site takes off in any way, it can bring in some ok money on the site. A lot of it can be outsourced once you get the system down, but there is a good amount of manual labor. Site: http://www.newphonepromocodes.com
Show HN: UI Concept Focus Transition n12v.com
374 points by NVI  4 days ago   71 comments top 31
nostromo 4 days ago 4 replies      
Often the best ideas are those that make you wonder, "why hasn't anyone done this before?" and in retrospect seem completely obvious and intuitive. Like this!
SwellJoe 4 days ago 0 replies      
Subtle change is often underrated...visual feedback that makes it clear what has changed is a pretty cool improvement.

Some of the mildly frustrating elements of using websites include not knowing where "I" am on the page. facebook, in particular, has some conventions that leave me confused and fumbling around for where I was typing a lot. This particular trick wouldn't fix it for facebook, but I'm pretty likely to add this to my current and future web UI projects, assuming it works reliably across browsers and doesn't interfere with other JS libraries I'm using.

noptic 4 days ago 1 reply      
Great idea.Possible improvement: Only show the effect if the user uses the tab key. IMHO the effect is distracting if you use the mouse and are already looking at the focused object.
NVI 4 days ago 0 replies      
A couple of years ago I saw http://osteele.com/tools/reanimator/, OpenLaszlo based RegExp tester. The animation on tabbing between text fields was unusual and interesting. I implemented a similar effect using JS & CSS, and made Chrome and Safari extensions.

I released it just two days ago.

Skalman 4 days ago 1 reply      
Such a simple idea - but it does make it easier to follow. The only problem I have is that it's very mac-centric. On my system the focus color is orange and it looks a bit off.

I'd suggest to use the highlight color:

  box-shadow: 0px 0px 2px 3px highlight, 0px 0px 2px highlight inset

hayksaakian 4 days ago 1 reply      
Could someone with the appropriate clout contribute this to chromium and Firefox?

It seems like in a perfect open source world, a change like this should be simple to at least propose (pull request).

cmdli 4 days ago 1 reply      
Wow. It fits the current aesthetic, solves a common interface problem I have, is only noticeable when you need it, fast, and doesn't look half-bad. I'm not a big design person so I can't comment on that, but color me impressed.
ecubed 4 days ago 3 replies      
I found it nearly impossible to concentrate on what the video was trying to show me because of the background music.
PhasmaFelis 4 days ago 0 replies      
I want something like this for text-searching within a page.
harrytuttle 4 days ago 1 reply      
Really like this when using the keyboard.

When using the mouse, the transition is implied so it's annoying.

Great work though!

ohazi 4 days ago 2 replies      
How about highlighting the current element with an "active" color border, and the next element with a different color for "this one comes next" (e.g. blue and dark gray, or dark and light blue, with the inactive elements being a light gray)? I think this would emphasize the element that comes next, as opposed to making you guess whether focus will move down, to the right, back to the top, etc. The animation is nice, but it doesn't really give you information until after the tab.
markbao 4 days ago 1 reply      
This reminds me of the moving brackets between form elements in OpenLaszloanyone remember that from circa 2008?

(Can't find a live demo, but looks like this: http://cl.ly/image/3Q2g0a182M46)

SimHacker 3 days ago 1 reply      
OpenLaszlo has had this for years. It's a great idea that works well, but it's not original.

The OpenLaszlo implementation animates four shadowed corner chevrons that interpolate between the corners of the current widget to the corners of the next widget, so they are are not as obtrusive as animating a whole rectangle (drawing a bunch of rectangles over each other tends to look cluttered, while the corner chevrons are not as visually distracting), and they work well between differently sized widgets.

The OpenLaszlo animation is a bit slower than the animation shown in this demo, and I think the slower speed of OpenLaszlo's animation works better for drawing your eye between one widget and the other.

This demo seems to move faster than eye tracking speed, and the animation appears to skip or flicker, and it go too fast to follow, especially if the widgets are far apart.

jeffmess 4 days ago 0 replies      
This is a great idea and executed well but forms should not be complicated. They should be easy to follow. If you need this library to ease users along then perhaps you need to take a look at your forms workflow rather...
mistercow 4 days ago 2 replies      
This is a really great idea. It drives me nuts how pressing tab (or even more commonly, shift-tab) can sometimes lead to focus being "lost". And not in the usual sense programmers mean, but in the sense of "where the hell is the focus?"

Unfortunately, it doesn't seem to work in Ubuntu at all in either Chrome or Firefox.

romaniv 4 days ago 0 replies      
Good idea, but the particular visualization (moving shadow) is a bit annoying. I would go with something less in-your-face. Maybe a light shadow that blinks couple of times on focus? I don't think the directional aspect of this is very important. Users just need to know where the focus is now, not where it came from.
smickie 4 days ago 0 replies      
That's a ingenious little addition.

You could extend it to all the tabbable elements on the page too. So once you've tabbed outside of the form element, the blue glow files to the next link, or the address bar in the browser and so on...

antidaily 4 days ago 2 replies      
Feels off if you _dont_ use keys. But I guess thats not the point.
agumonkey 4 days ago 0 replies      
Interesting but I think it's a bit too subtle or quick.
bliti 4 days ago 0 replies      
This is one of those neat little things that make a big difference in how a program is used and perceived. Very nice work.
nfoz 4 days ago 0 replies      
The idea is great. The visual implementation needs work, but that will happen. (I found it visually scarring to see the blue box jumping around wildly; maybe that's just me.) Anyway, thanks!
rndstr 3 days ago 0 replies      
After using it for a few hours I must say it is too distracting since it is overdoing it for links clicked that don't navigate away from the page (only some of them, though). So for example navigating GMail and Facebook you get the focus animation a lot when clicking around which is worse than having a gif animate w/o your interaction.
BHSPitMonkey 3 days ago 0 replies      
I noticed the Wii U's system software does this exact thing when you navigate the UI using the D-pad.
aagha 3 days ago 1 reply      
The Opera browser has had this capability for years.
DrewAllyn 4 days ago 1 reply      
Just installed it, seems awesome so far. Hopefully I don't get annoyed by the additional transition time.
notdan 3 days ago 1 reply      
Interesting, I just bought a Samsung smart TV and I noticed during the setup that when you switch between fields the focus selector moves just like this does.
johnx123-up 4 days ago 1 reply      
Looking good. But, demo doesn't work in Chrome 30.0.1599.47 beta-m
batiste 4 days ago 0 replies      
I was expecting some messy JavaScript. This is nice an clean solution.
nXqd 4 days ago 0 replies      
Like this ! I think this is so simple and neat :)
divya_v 4 days ago 0 replies      
Just started using it. looking good. nice work!
rjurney 4 days ago 1 reply      
Still can't figure out what it is. Hitting tab in a form to switch fields? That exists.
Mozilla Labs: TogetherJS togetherjs.com
357 points by pie  4 days ago   65 comments top 23
gbadman 4 days ago 5 replies      
This is a really cool and ambitious project. Although some mention ShareJS, I would say that the OT portion more closely resembles that employed by Firebase in their Firepad project [1] (in that no centralized server manages ordering and history). Actually, this system has many of the features of Firebase in a self-hosted package.

As a user of ShareJS (for the real-time collaboration on Plunker [2]), I can see some interesting benefits offered by TogetherJS; the system has cursor and presence features out of the box.

That being said, the main drawback that I see in TogetherJS is that it seems to be tightly coupled in a way that it is hard to take smaller parts of the overall system. It would be great if the P2P network system could be extracted and plugged into a node.js Stream interface. That would allow the code to plug into a whole ecosystem of interesting libraries [3].

I'm really excited by all the powerful libraries that Mozilla has been pumping out these days. The web is a great place to be.

[1] https://github.com/firebase/firepad

[2] http://plnkr.co/edit/?p=streamer&s=TogetherJS Demo)

[3] https://github.com/substack/stream-handbook#introduction

aroberge 4 days ago 1 reply      
This is fantastic. I put two lines of code in my site designed to teach javascript programming http://reeborg.ca/learn_js_together.html and it appears to just work (based on a quick test which is all I could do for now). Well, except for a bug: when the robot finishes a program, a pop-up window normally appears to indicate if the task was done properly ... and it does not appear when TogetherJS is activated. To compare the version without, just remove "_together" from the URL.
jkeesh 4 days ago 1 reply      
This looks fantastic. I just have a question for the author (+ Mozilla). Since this is a hosted service, I'm a bit reluctant to integrate it, because I'm not sure what we should expect from Mozilla on this project. Is this a cool open source project that will get support for a little and then fade away? Is this something that a team is really behind and is going to continue to support and extend? Is it expected that most people will just host their own version? (doesnt seem that hard to do, but there is a lot of appeal in not managing the server for this at all)

If this was from a startup I would expect a free trial and then a pricing page that told me what happened if I had X # of users or Y # of requests, but without that info, it seems there is a lot of missing information. Does Mozilla just plan to keep it hosted indefinitely? Or how do you plan to handle users of different sizes? Our use case now is small, but in choosing to go with this tool (vs. Firebase or something else), the switching costs down the road are relevant.

I'm planning to try it out in a small test either way, I'm just curious about more details on the mozilla-hosted version.

zamalek 4 days ago 0 replies      
I gave this a go with a "thick-client-in-browser" app that we are writing here [1]. I had to hack the code a bit (e.g. remove the clickable class check in the event simulator) but I was shocked how well it dealt with this scenario and how little effort I had to put in.

It's still a long way off from supporting this type of web page (e.g. dragging does not work, and would love to submit a PR if I only had the time to dig in more); but the almost-instant success with it was impressive. Good work Mozilla.

[1] http://www.k2.com/displaycontent.aspx?id=5502 / http://www.formsondata.com/

mbreese 4 days ago 2 replies      
Does this require using Mozilla's servers on the backend? I've played with ShareJS and a commercial hosted OT service, but they all required talking to the server.

So, I assume this does too, but I haven't seen where I could install it on my server.

gourneau 4 days ago 2 replies      
Was this previously know as towtruck?
sequoia 4 days ago 1 reply      
Looks cool! I wonder how you'd negotiate authentication with this... both users logged in presumably, you could record edit author as whoever clicked the save button (or upon each action in a "real time" saving application).
Sir_Cmpwn 4 days ago 1 reply      
I'm getting pretty tired of people releasing js libraries and not telling you that they depend on jQuery. You don't just add that script to your page, you add that script and jQuery to your page. Stop assuming everyone already has jQuery, guys.
pjgomez 4 days ago 2 replies      
Another great project from Mozilla, congratulations. I'll definitely give it a try.

Sorry to blow my own horn, but a few months ago we launched a similar project called Quolony https://quolony.com (we are a small startup from Salamanca, Spain). Right now we are working as a free service and we plan to publish it as open-source in the next few months.People can use it individually using a browser extension or in whole sites including our library.We have avatars, synchronized text selection, private and public chats, persistence, cobrowsing, file transfers and a lot more.

Some samples:https://quolony.com/demos/photomess/ (drag and drop)https://quolony.com/demos/quolony/developers/ (shared demo)

At the low level, we extend the browser event model to make it easier to use it in existing applications.

I hope you guys can give it a try and tell me what you think.

Kudos mozilla!

[EDITED: fixed linked]

FiloSottile 4 days ago 1 reply      
It seems to me that this could be wrapped in a bookmarklet, to be able to use it on any website, no?
zerop 4 days ago 4 replies      
I want to implement a real time Collaboration editor like google docs because I want to keep data on my own servers.. Can anyone suggest me architectural points to build that...what should be stack on server side, how to send edit diffs etc..
mqzaidi 4 days ago 0 replies      
Looks like this would be great for customer support, and could be a nice alternative to olark. It can be configured to automatically post the invite url to another dashboard, where one of the CS execs can pick up and walk the user through.
AUmrysh 3 days ago 0 replies      
Does anyone know how this would handle an iframe? Could this potentially be 'injected' into a page using bookmarklets?

edit: so, it doesn't handle iframes. Bookmarklets work but are buggy.

dshipper 4 days ago 0 replies      
This is very similar to what we do at Firefly (http://usefirefly.com), except we support all the way back to IE 8. Kudos to these guys for putting this together - especially if it works well. It's a lot harder than it looks.
morgante 4 days ago 0 replies      
The content sync is the really impressive feature here. Basically drop-in multiuser support.
jonny_eh 4 days ago 0 replies      
Seems quite similar to GoInstant.
kimar 4 days ago 0 replies      
We recently built openmic.io to add sound annotation to pictures & websites. This pops up just as we started looking into real-time collaboration. I guess it validates the need for better in-context collaboration tools.
itsbits 4 days ago 1 reply      
Video and Audio chat functionality are real advantages over other collab tools...awesome work...i will surely check this out some time..BTW is IE11 will be providing WebRTC support??
infocollector 4 days ago 0 replies      
Used to be called Tow Truck.
smoothpooper 4 days ago 0 replies      
I could see it being used when creating support websites or customer care related websites. Anyone else has any ideas on where else can this be leveraged?
6ren 4 days ago 0 replies      
NB: unrelated to TogetherJ
ilaksh 4 days ago 0 replies      
Seems similar to ShareJS
Kiro 4 days ago 0 replies      
Can someone give me a use case for this?
Deciphering the Business Card Raytracer fabiensanglard.net
344 points by cremno  2 days ago   62 comments top 12
a_e_k 2 days ago 3 replies      
Hi there, code author here. I've been lurking here for years, but couldn't resist an invitation like this.

I've always enjoyed Fabien's analyses so it's great fun to see what he makes of my own code. Anyway, a few clarifications from what I remember of this. (I wrote this '09, and I don't have my old notes in front of me right now):

* The `n` value returned by the trace function, `T()`, is the surface normal. It returns this whether it hit the plane or a sphere.

* The `r` vector in `S()` is the reflection vector off whatever was hit.

* The mystery `c` point in the `main()` function is the offset from the eye point (ignoring the lens perturbation `t`) to the corner of the focal plane. Note below that we're nominally tracing rays for pixel (x,y) in the direction of ax+by+c. At the image midpoint, this should be `g`.

* "although I suspect this to be a side effect: This is not how soft-shadows are done." True. There are true soft shadows in this, but this isn't where they're computed. That's the job of the randomization where `l` is computed in `S()`.

Anyway, please feel free to ask any questions about it.

chrissnell 2 days ago 1 reply      
If you want to make your own, like Fabian Sanglard did, take this block of binary numbers and draw your initials (left-justified) with 1's:

  0001110000010001110  0010000000000010000  0100000000010010000  0100000000010001100  0100000000010000100  0010000010010000010  0001110001100011100
That's my initials, cjs. If you unfocus your eyes, you can see the letters pretty clearly.

Take each line, top to bottom, and convert to decimal:


Edit Paul Heckbert's code (lines 12-13, the "G" array), replacing the numbers from right to left with the decimal values. In other words, the last number in the array is the top line of the binary block above.

Clean up the justification and you have your business card raytracer, courtesy of Mr. Heckbert.

I probably could have coded this in the time that it took me to draw my initials in binary pixels.

Also, here's a version with the camera moved slightly farther out so that the letters don't clip:


jevinskie 2 days ago 2 replies      
Would the wasted empty space in a #define return <pick a single character> make up for the several return statements that I see? That is why typedef statements are nice, you can ; terminate them!
chii 1 day ago 0 replies      
It looks like his site is taken down due to bandwidth limit reached. Use http://webcache.googleusercontent.com/search?q=cache:http://... till it's back up.
milesf 2 days ago 4 replies      
The output file is .aek but I can't figure out what to do with it. My Google-fu is failing me this evening.

How do you view the output?

szc 1 day ago 0 replies      
There are two other small ray tracers that can be examined. Both are winners of the International Obfuscated C Code Contest.

Matt Zucker won in 2011 and Anders Gavare won in 2004.

They can be found here, http://www.ioccc.org/years-spoiler.html

(The 22nd IOCCC is open for entries until 2013-Oct-03)

dinkumthinkum 2 days ago 0 replies      
Very nice article and straight to the point. It's really nice to see a pithy discussion and impressive demonstration.
ggambetta 2 days ago 0 replies      
I love this kind of thing. I've made a similar one (minus texturing) in Javascript, drawing to a Canvas; my current version is 975 bytes. Output, full source and live demo here: http://gabrielgambetta.com/tiny_raytracer.html
xioxox 1 day ago 0 replies      
I like this extremely short postscript raytracer I saw quite a few years ago:


  %!IOPSC-1993 %%Creator: HAYAKAWA Takashi <h-takasi@is.titech.ac.jp>  /C/neg/d/mul/R/rlineto/E/exp/H{{cvx def}repeat}def/T/dup/g/gt/r/roll/J/ifelse 8  H/A/copy(z&v4QX&93r9AxYQOZomQalxS2w!!O&vMYa43d6r93rMYvx2dca!D&cjSnjSnjjS3o!v&6A  X&55SAxM1CD7AjYxTTd62rmxCnTdSST0g&12wECST!&!J0g&D1!&xM0!J0g!l&544dC2Ac96ra!m&3A  F&&vGoGSnCT0g&wDmlvGoS8wpn6wpS2wTCpS1Sd7ov7Uk7o4Qkdw!&Mvlx1S7oZES3w!J!J!Q&7185d  Z&lx1CS9d9nE4!k&X&MY7!&1!J!x&jdnjdS3odS!N&mmx1C2wEc!G&150Nx4!n&2o!j&43r!U&0777d  ]&2AY2A776ddT4oS3oSnMVC00VV0RRR45E42063rNz&v7UX&UOzF!F!J![&44ETCnVn!a&1CDN!Y&0M  V1c&j2AYdjmMdjjd!o&1r!M){( )T 0 4 3 r put T(/)g{T(9)g{cvn}{cvi}J}{($)g{[}{]}J}J  cvx}forall/moveto/p/floor/w/div/S/add 29 H[{[{]setgray fill}for Y}for showpage

thenomad 2 days ago 0 replies      
Along the same lines, albeit much less compact - a 99-line Path Tracer (the next evolution from a straight-up raytracer, performing global illumination calculations):


kid0m4n 1 day ago 0 replies      
The same thing, implemented in Go:


eaxitect 2 days ago 0 replies      
This is really single piece of sh*t I like most for a while... simple and elegant
CrossFit's Dirty Little Secret medium.com
342 points by gms  2 days ago   205 comments top 36
Whitespace 2 days ago 7 replies      
TL;DR: I got rhabdo from crossfit last year. My CPK was 100,000 and I spent 5 days in the hospital. I wasn't overweight but I wasn't fit when I got it, and I got it during the first day of a beginner course.

Ask me anything.


I did crossfit for a couple of months in 2010 and loved it, but I had to stop since I moved to a new apartment and the gym times wouldn't work with the longer commute. I always wanted to go back, so in June 2012 I started up again, taking the two-week beginner course (I wasn't in the best shape and I wanted to ease into it).

During the first day back, we went through a lot of basic movements and listened to the instructor talk about what crossfit was like. In the hour-long class, we spent the last ten minutes talking about rhabdomyolysis; what it is, the symptoms, the danger, common ways to get it, etc.

The workout of the day was tabata squats (20 seconds of as many BW reps, then 10 seconds of rest, repeat 8 times for a total of 4 minutes and 2:40 of exercising), tabata pushups, and tabata situps.

The squats were the one that got me.

The next morning, I couldn't walk, but that was expected since it was my first day back. I pushed myself quite hard (knowing what crossfit was like), but I wasn't competing with the people in my class, I was competing with myself. I took it easy and rested.

The day after that, I couldn't really bend my legs because of the extreme soreness, and walking down the stairs was neigh impossible. It took a while, but I took the subway to the office where there's a gym with a stationary bike, as slow biking was the only thing that would ease the soreness in my quads.

After 6 hours at work, periodically biking and reading online, I noticed my urine was coca-cola colored, and that it was the telltale sign of rhabdo. I knew that because the crossfit instructor drilled it into my head two days earlier.

I looked online for a hospital that my insurance covered, took a cab, checked myself in saying I had rhabdo, and I began a 5-day stay where I received lots of saline solution (1000ml 6x a day, IIRC) to help flush the myoglobin out of my body. Luckily for me, the hospital saw a lot of cases of rhabdo from not crossfit members, but prisoners. They have little else to do than workout extremely hard, and the hospital saw dozens of prisoners a year.

My creatine kinase was almost 100,000 (excess myoglobin is the problem, but high creatine kinase is a proxy for high myoglobin, and CPK levels are commonly checked). TFA is right in that the normal is < 100. IIRC, the doctors estimated I dissolved 5 lbs of muscle tissue into my bloodstream to get a CPK that high. I was bored in the hospital so I charted my CPK to determine when they'd release me: http://imgur.com/18HYKNr


Many tests afterwards showed my kidneys are fine, and I haven't noticed (or read about) what the TFA describes as "flabbiness" or some sort of water retention in my legs. I also haven't noticed that my legs are weak; on the contrary, after lots of biking over bridges my legs are stronger than my squat days (at least when it comes to endurance, not power).

TFA is being a bit sensationalist and anecdotal about rhabdo being crossfit's "dirty little secret." To add another anecdote into the fire, everyone I know that does crossfit knows what rhabdo is, and rhabdo is mentioned in beginner classes multiple times; not only what it is, but the symptoms, what to do when you get it, and how, if left untreated, myoglobinuria can lead to acute renal failure and death.

I haven't been to crossfit in over a year, but TBH I'm itching to go back. I'm the kind of personality that will really push myself hard probably harder than most but now I know a little better and will hold back a tiny bit, especially when doing high reps of low weight.


Update: My first crossfit experience was at Crossfit Virtuosity in Brooklyn, NY and I got rhabdo at The Black Box in NYC.

Also, my memory isn't so great as I thought. I took the class on a Friday and, that same night, moved into a new apartment. The combination of crossfit and carrying lots of boxes/furniture on the same day was probably the cause.

fingerprinter 2 days ago 11 replies      
To be honest, Crossfit has quite a few dark secrets. This one, though, can kill you.

What are crossfit's dark secrets?

First and foremost, well, it's terrible. The programming coming from HQ is just plain awful. There are many programs out there now (Outlaw, Competitors WOD, CF Football etc) that fill the gap and actually give decent programming, but the programming from crossfit.com is really, really bad.

Did you know that ALL the athletes that competed at the Crossfit games do not use crossfit.com WODs as the base of their programming? It's true. Go and check it out. What does this tell you? That crossfit, the programming, is all bullshit. The elite athletes use strength training as the basis of their programming and complement that with met cons as they get closer to the games.

There is also a culture that promotes things like rips (ripping your hands, say during a deadlift), or rope burns or other types of stupid things as badges of honor. You can't go a few days on /r/crossfit without seeing someone mention their ripped hands with pride. This is dumb and promotes the wrong things.

And beyond that, frankly, high-rep olympic lifts, high-rep box jumps (DON'T JUMP DOWN! Seriously, trust me on this), and general bad form is ok in the name of better times. These are begging for injuries.

TL;DR - Crossfit is dumb.

dkarl 2 days ago 3 replies      
Rehash from five years ago? Doesn't this guy know that the new scandal is high-rep box jumps?

The "dirty secret" of Crossfit is that they don't do much to actively ensure the quality of local affiliates, and therefore the brand doesn't always mean much. My personal experiences have all been great, and my coaches have always been extremely safety-conscious, but in light of the nasty things I read on the internet, I wouldn't encourage anyone to blindly trust whatever local Crossfit affiliate happens to pop up down the block. Rather than thinking of Crossfit as a guarantee of a certain standard of quality, think of it as an approach to fitness that is interpreted in various ways by coaches of varying competence.

Also keep in mind that the coach can't always see when you need to ease up or stop. Sometimes they can, but they can only see what is apparent on the outside; they can't feel what you feel.

wdewind 2 days ago 2 replies      
Ignoring the fact that there is no true definition of what crossfit is (which is a problem in and of itself), this isn't even the biggest issue with crossfit.

The biggest issue is that the training philosophy is not ground in any kind of science whatsoever (ie: that mixing conditioning and strength training in one workout somehow combines for an increased effect on both).

CrossfitHQ also promotes a concept of "all around fitness" which is, quite frankly, bullshit. A marathon runner and a powerlifter are both very fit, but for different things. Having a training program that does not start with explicit goals and work towards those goals is idiotic. And for most people, who want to be somewhat cardiovascularly conditioned and aesthetically toned, crossfit is far from the quickest or safest way to get to those goals. Even the "good gyms" that emphasize form still seem to have completely nonsensical programming.

Finally, you can be sure that crossfitHQ in particular is bullshit because they have a motto of "forging elite athletes" and yet not a single elite athlete from a single sport follows crossfitHQ's WODs. The only acceptable reason to do it is because it can be fun, and if that's what you're into more power to you. But it's not an effective or safe form of training no matter how you cut it.

tlrobinson 2 days ago 1 reply      
Wow, I thought they were kidding about the clown cartoon, but no: (pdf) http://library.crossfit.com/free/pdf/38_05_cf_rhabdo.pdf
rangibaby 2 days ago 4 replies      
When I first started doing weights, my father and his brother both drilled one piece of advice into my head: training too much is worse than not training at all. After reading this article, I'm grateful for it!
jusben1369 2 days ago 1 reply      
This reminds me a little of the "Ban PitBulls" argument. If we got rid of all PitBulls then wanna be gangsta's would go to Rottweilers then Dobermans then German Shepards etc.

CrossFit is tapping into and flourishing with a certain mindset of folks for whom this extreme form of punishment is desirable. Probably better to understand that and help folks dial it back a little vs thinking getting rid of CrossFit would solve the problem.

mightybyte 2 days ago 1 reply      
The title of this article is one of the most misleading I've ever seen. It implies that rhabdomyolysis is little known and covered up. But later the author admits that it's not little known. "How, I wondered, is it possible that the layperson exercise instructor is on a first-name basis with a serious, yet rare medical condition?" Why does he do this? Because being sensationalist draws clicks.

This article is a microcosm of everything that is wrong with mainstream media. It takes something quite rare and spins a narrative designed to incite fear, making you think that these horrible things are happening much more frequently than they actually are.

I'm no stranger to intense exercise. As a competitive swimmer at a young age, I knew what it meant to push myself to the limit. It wasn't until 2007 when I started CrossFit that I was ever educated about rhabdomyolysis. But I'd much rather be educated than ignorant. Everything in life has risk. And strangely enough, things that are more worthwhile seem to typically involve more risk. Is exercise risky? Of course. But not exercising carries its own set of risks.

As for me, I'll stick with exercise. And for that, CrossFit makes more sense than anything else I've ever seen.

rayiner 2 days ago 0 replies      
Reading about CrossFit makes me a little queasy: http://en.wikipedia.org/wiki/CrossFit#Body_weight_exercises. A lot of these things don't seem very good for you. I feel like this stuff is going to come back to bite you in the ass in 20-30 years...

I personally would stick to basic weightlifting. You can get an intense 30-45 minute workout, don't put tons of pressure on your knees, and most importantly the long-term effects are very well-studied.

pcorsaro 2 days ago 1 reply      
I hate reading articles like this because it's trying to tell you that CrossFit culture is all about pushing yourself until you've practically killed yourself doing all sorts of crazy and whacky weight lifting. 99% of the time, the problem isn't CrossFit, it's the coaches. If you're at a good gym (or box as it's called), the coaches know how to scale workouts for the athletes so they won't get hurt, and they're programming workouts so that people aren't killing themselves constantly.

Where CrossFit is to blame is its low barrier to entry to becoming a coach/affiliate owner. All you need is a weekend of your time, $1000, a passing score on a super simple test, and you get to call yourself an "L1 CrossFit Trainer." They don't advise you to immediately go start training people, but there are plenty of boxes that will let you jump in and start coaching classes. It's gotten so popular now that there are bad affiliates popping up out there that have horrible programming that hurt people, and then articles like this get written, and then everyone thinks that's all CrossFit is.

When you take the L1 CrossFit Trainer course, they have a whole section about "Uncle Rhabdo." It's a very rare thing that occurs when you do a whole lot of isometric exercises (like strict pull ups where you come down real slow) when you're not used to them. It's not a rabid thing that is 100% going to happen if you do CrossFit.

jacques_chester 2 days ago 0 replies      
As an Olympic-style Weightlifter and coach, I hold the usual reservations about Crossfit. The insensible use of the competition lifts for high repetitions, the bonkers programming, the creepy culture, the pack of drongoes at HQ, the deliberate absence of quality control.

However, it has two positive features, in my eyes:

1. It gets lots of people up off their backsides and working hard. A lot of folk don't realise how much they can really do if they want to do it. The flipside of Crossfit's sometimes overblown culture is that it forms a strong social environment for most trainees to motivate them to keep it up.

2. It has introduced millions of people to Weightlifting and a lot of those people defect to the sport proper.

In the English-speaking world Crossfit has been a massive shot in the arm for Weightlifting and Powerlifting. They've gone from being struggling niche sports 10 years ago to seeing an unparalleled period of growth.

The current generation of Crossfitters won't make much of an impact on the elite levels of Weightlifting. But their children might.

In the long run, and despite the butchering of the lifts that goes on in many gyms, Crossfit might be the best thing that ever happened to my sport.

robbiep 2 days ago 1 reply      
Not a crossfitter but if they actively warn about the risk of rhabdo and have a cartoon (however poor taste some people may find it) then how is that a 'dirty little secret'?
badclient 2 days ago 1 reply      
I had rhabdomyolysis in high school after an intense afternoon of running around in the cold. Let me describe the pain:

* everytime I breathe in or down I felt like screaming

* moving almost any part of my body even an inch made me scream

* my urine was dark red

All my life I've had above normal pain tolerance from another chronic illness but it took rhabdomyolysis to really break me--quite literally. Ultimately it resulted in being put in a stretcher as I screamed my ass off.

It took a lot of morphine to find any relief and dialysis to fully recover.

callmeed 2 days ago 3 replies      
This article seems a little sensationalist. Just because a journal had an article about it with a cartoon attached doesn't mean they've adopted as a "mascot" or make light of the condition.

My wife has been doing crossfit full-force for almost a year (including some competitions [1]). Along with previous standard workouts and diet changes, she's lost 60+ lbs over the past 2 years. And she's getting pretty buff.

She's never heard of rhabdomyolysis.

Every exercise/activity has some risks. If anything, I'd say crossfit puts you at risk for other injuries (back, joints, heat exhaustion at competitions, etc.).

[1] My wife at a recent competition. A male competitor here fainted and had to go to the ER: http://www.youtube.com/watch?v=FnQ8ZDSmg70

skizm 2 days ago 0 replies      
Crossfit charges 1000 bucks to certify that you understand the movements and general philosophy and 3000 bucks a year to use the "Crossfit" name. That's it. Each gym is only as bad as the trainers and/or person writing the programming. People got rhabdo before Crossfit and they'll get it when the fad dies down. The only thing I hate more than fanatical crossfiters is (are?) fanatical crossfit haters.
Raphmedia 2 days ago 3 replies      
I have a lot of coworkers that injured themselves doing CrossFit. I don't understand why CrossFit is such a trend in the tech industry.

It seems like an easy way to hurt yourself.

Simply go to the gym and do your own workout...

kayoone 2 days ago 0 replies      
The biggest problem with Crossfit is that it promotes excessive amount of exercises under time pressure, which really is a dangerous combination. People die in competetive sports all the time. Its very rare but still, there are people dieing doing marathons, thriathlons, crossfit, biking and even less taxing endurance sports like football(soccer). Its rarer than rhabdo but excessive stress on your cardiovascular system can kill you (cardiac arrest, heart attack etc) especially if your heart isnt 100% healthy (and most young people have never made a check on their heart).

No reason to panic though, its very very rare, but it happens and thus it should be noted that excessive excersise (in whatever shape or form) just isnt risk free.

programminggeek 2 days ago 0 replies      
This apparently happens in p90x as well. The culture of mostly unathletic people trying to do extremely athletic things without any training beforehand is foolish and stupid.

The one thing p90x gets more right than apparently Crossfit does is the videos tell you to take breaks and go at your own pace. If you cant do 50 pushups in 90 seconds, do what you can. "do your best, forget the rest." is the refrain Tony uses, which is a lot smarter than telling people to push beyond their limits no matter what their body tells them.

xjtian 2 days ago 1 reply      
The vast majority of Crossfitters are not at a level of physical fitness and mental toughness that would put them at risk of rhabdo after a WOD. They'd throw in the towel long before "meeting Uncle Rhabdo" under most normal circumstances.

However, certain external factors can affect the risk - high humidity, heat, improper hydration, and poor nutrition can significantly increase the chance of catching rhabdo from a workout. It sounds like the subject of this post got caught up in the competitiveness of the workout, turned a deaf ear to what her body was telling her that day, and paid the price for it. It's a mistake that many inexperienced athletes make when thrust into a competitive setting, and most of the time only ends with "meeting Pukey" or some really bad DOMS the next morning, but the specifics of this circumstance (pushup-overhead couplet sounds like a stupidly dangerous WOD, plus a "warm Texas evening") lead to a significantly worse outcome.

raverbashing 2 days ago 0 replies      
"Any" exercise done in excess can trigger this. I suppose Crossfit's characteristics make it easier for it to happen

"Youre supposed to push yourself to the limit, but when you hit the limit and pay the price, youre the idiot who went too far." Isn't it? There are several "coaches" that only know how to push people but have no regards for personal limits

Diet can also cause rhabdomyolysis http://www.ergo-log.com/vegerhabdo.html (in this case, because of lack of protein - not necessarily because of vegetarianism)

physcab 2 days ago 0 replies      
Good lord, what is with all the Crossfit hate? I've been an avid crossfiter for over 3 years and I've never once had an injury. As with all workouts, you need to listen to your body. It doesn't matter who prescribes them - whether it be Crossfit, Men's Health or GQ Magazine, your general practitioner, Tony Robbins, or your best friend BodyBuilder Bob. Listen to your body. If something hurts, stop. If you're too sore to move, rest. If you're hungry, eat.

All this talk about Crossfit being the problem is b.s. You have a choice.

ok_craig 2 days ago 2 replies      
What's different about CrossFit from regular exercise? It doesn't give a summary of what it is or how it's different. That makes me scared that all exercise has this risk, especially lifting weights, which I enjoy. Is that true?
karl11 2 days ago 0 replies      
Lots of smart people here and no one is looking for real data, including the author of this article.

My bet is that rhabo:crossfit is similar to crashes:airplanes - you don't hear about all the people that do crossfit and simply get into shape without serious injury (most everyone who does crossfit).

Do more people get rhabdo doing crossfit than concussions playing football or torn ACLs playing basketball? Doubt it.

AlexanderDhoore 2 days ago 0 replies      
Every single article I read on medium is near worthless.
cdjk 2 days ago 0 replies      
I am thankful for crossfit because it introduced me to powerlifting. But I quickly realized I liked the strength portions a lot more than the AMRAP (as many rounds as possible) and other timed workouts.

The official line is "you're only competing with yourself," but in practice that's not the case. Especially when there's a whiteboard and everyone knows what the various times/number of reps are. Trying to force anything with a strong technique component (like olympic lifts) into a time based or number of reps based competition just seems like a bad idea.

Also, with the wide variety of WODs, it's hard to track progress. Yeah, the workouts repeat, but if you only do something a couple times a year it's hard to keep track of progress.

I ended up doing Starting Strength instead. I got my squat from about 80lbs to 245, and then 295 with some intermediate programming. I almost never got sore - only a little sore after the first couple workouts, or if I missed a week or two. I'm currently trying to figure out how to integrate cardio and lifting, which is one thing that crossfit has going for it, but I liked powerlifting workouts a lot more than crossfit.

iopq 2 days ago 0 replies      
Oh really? Overexertion is bad? Tell me more!

There are a ton of things wrong with crossfit like their insistence of doing skill lifts for time. But training too much? That's actually your choice.

lnanek2 2 days ago 0 replies      
Pretty impressive that most diets fail and it is so easy to go the gym and not do much, this is pretty much one of the few stand out exceptions that can motivate people to the point of hurting themselves. Seems like a success if a little more precautions were added to avoid this one issue.
jasonlingx 2 days ago 0 replies      
From the article: "Its so rare that one study reported the overall annual incidence of rhabdomyolysis to be 0.06%"

Crossfit reports only 5 cases up till May 2005: http://library.crossfit.com/free/pdf/38_05_cf_rhabdo.pdf

I wonder how the numbers stack up after taking into account only the population that does some form of exercise.

nivals 2 days ago 0 replies      
Veterans to CrossFit are not immune, nor are good movers/fit athletes in general.

I've been doing CrossFit for six years, this past December during a 'holiday' WOD I got nailed by acute rhabdo in my right arm.

It took many months of rehab and different body work techniques to get things back to normal. Very, very, painful process.

Honestly, the workout wasn't out of whack with a tougher than normal day. It was for me, however something that put me out of commission for five months.

Lesson learned.

akurilin 2 days ago 0 replies      
When in doubt, just do regular time-tested strength training and you'll be fine. Works 100% of the time, 0 bull.
moocowduckquack 2 days ago 0 replies      
I wonder if I could get office workers to shift rubble for me in the evenings and get them to pay for the privilege as a fitness craze. I have never really understood paying to lift things, you might as well do an evening shift doing order picking at a warehouse.
yalogin 2 days ago 1 reply      
Unrelated to the actual post, I have seen that with pages on medium the images load first and then after about 4seconds the text loads. Its a rather long wait for the text to load. Did any one else see that?
moccajoghurt 2 days ago 4 replies      
It should be mentioned that it normally only occurs when well trained people stop working out for a couple of weeks and then get into it again at full speed.

If you are used to working out hard, you won't get rhabdomyolysis.

So if you're pretty fit but stopped working out for a while, get into it with moderation!

To everyone else: don't be scared of rhabdomyolysis and work out!

westoque 2 days ago 0 replies      
I don't get why this is on the top of hacker news. I'm getting this impression that most hackers are ripped crossfit dudes/gals.
zobzu 2 days ago 0 replies      
10 pages to say:if you over train, it's dangerous for your health. Crossfit mentality pushes for over training, over exhaustion.


adamzerner 2 days ago 0 replies      
Most people don't come nearly close enough to working so hard they damage themselves. Since the overwhelming majority of people don't work hard enough, the fact that CrossFit pushes people is a good thing.
Rainyday.js github.com
340 points by josephwegner  1 day ago   74 comments top 34
ScotterC 1 day ago 5 replies      
Some, hopefully, constructive criticism:

The rain drops are too spherical as they traverse the screen. The friction plus surface tension of a water on glass pulls the tail out significantly farther then represented and also varies on whether the drop is following a path that's already been traversed and therefore has less friction. It would be really really cool to see that effect added in.

dyselon 22 hours ago 3 replies      
I always loved Shawn Hargeaves' blog post about the weather effects he did in MotoGP: http://blogs.msdn.com/b/shawnhar/archive/2009/04/01/motogp-w...

The interesting takeaway for me was that making something look rainy has so little to do with actual rain drops, and everything to do with the secondary effects of bad weather.

jffry 1 day ago 2 replies      
It looks like rawgithub.com is 503-ing. Here's a version of the demos with the JS file pasted straight in:

demo 1: http://jsbin.com/UFudExe/1

demo 2: http://jsbin.com/ePidOJe/2

HeyItsJames 1 day ago 1 reply      
My favorite part of watching rain on a glass surface is when two raindrops connect with one another and merge together into a larger one. It would take a lot more work (more intensive computation based on the location of the drop, constant checking if another drop is on top of the target raindrop, etc...), but I'd _love_ to see two globules merge with one another. That would be incredible.
bnycum 1 day ago 2 replies      
Should combine this with http://raining.fm/
remotesynth 1 day ago 0 replies      
The author of this library wrote an article about how it was built with some new demos at http://flippinawesome.org/2013/09/23/creating-a-realistic-ra...
spyder 20 hours ago 0 replies      
Currently to make it work you have to run it locally after downloading from github: https://github.com/maroslaw/rainyday.jsIn Firefox it runs fine at the beginning but then the fps decreases (running in 1920x1200), in Chrome it's "better" because it seems to use both CPU cores fully on a dual core while Firefox uses only one. Anyways it should use the GPU more (using WebGL) and not so much the CPUs, but i understand it's one of the developer's "first contact with JavaScript" and using shaders would be a little harder for him but here are some introductions: http://www.html5rocks.com/en/tutorials/webgl/shaders/http://aerotwist.com/tutorials/an-introduction-to-shaders-pa...
STRML 1 day ago 0 replies      
That's a great demo - demo #2 was a trip for me, because that's just about what I see out my window right now - there's leftover rain from Usagi on the window, and the IFC2 in the background.

This would make a great ambient bg for one of the nighttime podcasts like sleepbot.

chenster 7 hours ago 0 replies      
Don't the water drops can merge into irregular shaped larger water spots and trails; instead of all moving one direction, the real life drops are actually move around the surface.
hablahaha 22 hours ago 0 replies      
So I opened this in a tab without looking at it immediately and then forgot about it. When I opened it later I was legitimately worried that water had spontaneously started streaking down my screen, so really good job, you scared me, if even for one second.
Jagat 10 hours ago 1 reply      
Is it just me or does it cover only 3/4 of the screen in full screen mode?


I use Chrome on Linux Mint.

andypants 1 day ago 1 reply      
This is really cool!

There are a few small issues:

* There is a lot of flickering of the raindrops

* When two raindrops collide, they do not always merge correctly - sometimes the size is wrong, or the position is wrong

bigd 1 day ago 0 replies      
Neat! but the coalescence is not right (yet?)...You'll have to increase the volume of a drop when it eats a smaller one!great stuff
quaffapint 1 day ago 0 replies      
That is quite slick. If you really want a rainy day in your browser, there's always this one...http://www.rainymood.com/

Looks like they even have apps for portable rain now.

tsenkov 7 hours ago 0 replies      
Awesome. I would check for devicePixelRatio in order to render it crystal clear on retina display.
MrBra 20 hours ago 0 replies      
Couple of days ago I discovered http://www.rainymood.com/ and posted a link to it on HN. Did you get inspired by that or is it just a concidence? :
Cyranix 23 hours ago 0 replies      
Great efforts. I don't think it's usually the case that a raindrop is brought to a stop once it overcomes friction, though, right?
quaz3l 14 hours ago 0 replies      
I modified this to show the current song, and made it my screensaver with WebViewScreenSaver (https://github.com/liquidx/webviewscreensaver). Image: http://imgur.com/woYztL8
burpee 23 hours ago 0 replies      
I actually did something similar to this about 5 years ago with Flash. By applying a complex filter to a flat layer to make the layer behave and look like it was a liquid drop on a glass surface. Essentially I just embossed it with 4 different colors that matched the background and then added a subtle "gloss" on the top to give it a 3D experience.

The blobs merged together seamlessly when they even came close to eachother and were a pretty close impression of real liquid drops.

This technique might also work to make the merging of the blobs appear more realistic.

scrrr 1 day ago 5 replies      
The demo doesn't work? (Safari)

There's no point in making web stuff if you can't support major browsers..

EDIT: I take it back. mdkess is right.

dphnx 1 day ago 1 reply      
Heres a working version http://jsbin.com/ixUSEBE/3/I copied the rainday.js into the HTML so it doesnt rely on external resources.
d23 23 hours ago 0 replies      
Cool! Is there a way to turn on anti-aliasing to make it a bit smoother?
toonbit 14 hours ago 0 replies      
I just had flashbacks of snow gif's on websites
ivanbrussik 9 hours ago 0 replies      
someoen needs to make a conditional statement based on weather patterns to load this if it is raining in the users area.
dferlemann 18 hours ago 0 replies      
It's so awesome. I'm gonna use it for my next impress.js presentation this Thursday. Thanks, Marek! :)
fournm 1 day ago 0 replies      
Ouch to the 503's with rawgithub, but I like this. I'd love to see a rain track/Chell in the Rain version with this on it.
curiouslearn 13 hours ago 0 replies      
Wow! This is awesome. Thanks for sharing.
BaconJuice 1 day ago 1 reply      
This doesn't work on Chrome Version 27.0.1453.116?
axansh 8 hours ago 0 replies      
amazing. good stuff man :)
saltyknuckles 12 hours ago 0 replies      
This is awesome.
Kluny 21 hours ago 0 replies      
Someone please just demo it on their own site already, jeez.
semjada 23 hours ago 0 replies      
make it under 1k and i'll be impressed. it's just too darn big!
peachlover 1 day ago 0 replies      
jsbin is up again
Peachy Printer - The world's first $100 3D Printer 3ders.org
333 points by jschwartz11  2 days ago   111 comments top 32
WestCoastJustin 2 days ago 3 replies      
Kickstarter link @ http://www.kickstarter.com/projects/117421627/the-peachy-pri...

This is such a cool concept -- I backed it! I do not want to highjack the conversation, but I think it is worth mentioning, that this is kind of a "grinds my gears" [1, 2] moment when someone links to a summery, which borrows the video and images of a Kickstarter campaign, you are essentially diverting the campaigns traffic, why not just link to the campaign? This article was kind enough to at least link to it in the last paragraph. This summery is currently #1 on HN, which it likely driving tens of thousands of people to this suboptimal page [3, 4].

[1] http://www.urbandictionary.com/define.php?term=Grinds%20my%2...

[2] http://www.youtube.com/watch?v=dHtRnOXXZ0w

[3] http://aberrant.me/front-page-of-hacker-news/

[4] http://www.backwardcompatible.net/179-traffic-hacker-news-ef...

SwellJoe 2 days ago 2 replies      
This is the first 3D printer I've been excited about since the very first one I saw maybe a decade ago.

The reason is that it is actually a novel approach that I can see is in its very infancy...and it's clever as hell. The reality of 3D printers is that at this stage of their development, they aren't useful for a lot of people; at least not useful enough to make them a cost-effective purchase.

This, however, begins to make it seem a reasonable purchase for a wide variety of people. Any hobbyist or artist that builds things would find this an awesome tool for taking their ideas to the next level. Table top gamers can make their own models. People who work on electronics can make their own boxes and internal parts. The possibilities are pretty broad. They've always been broad...but the printer options have always been expensive, or required you to build it yourself.

We're getting close to a 3D printing revolution. I'm not the first person to say that. But, this is the first time I've ever said it, because it's the first time I saw a glimmer of hope that it would actually soon be in the same league as laser and inkjet printers in terms of cost.

And, this may be the time when I finally opt to jump into the pool and try out this new tech. If I can think up something I'd actually want to regularly use it for, I probably will.

Anyone know how tough the resulting objects are? Could I use it for something, such as gears or a chassis for an outdoor computer, that needs to take a lot of abuse and expect it to hold up?

noonespecial 2 days ago 0 replies      
That's the "Woz-est" engineering I've seen in some time.
kevingadd 2 days ago 6 replies      
I wonder how much error is introduced by the use of the headphone jack to drive the printer - you've gotta deal with line noise from the computer's sound card, mixing latency/glitches from the OS, and the device sampling rate, along with any noise introduced on the audio cable.

Does a 3D printer like this not actually require high-precision data to work correctly?

lumberjack 2 days ago 1 reply      
Damn I didn't quite realize the ingenuity of using a mirror instead of fixed axis until I read this:

>Build volume: There is no certain limit on build volume. In the same way that a flashlight beam gets bigger the further it shines, so does the build volume of the Peachy Printer. Although this has not been tested, we have high hopes to print a full size canoe! This will require a build volume of approximately 3'x3'x16'. The real limiting factor in build volume is time... It could be possible to calibrate the Peachy Printer to print a house, but it would take years![1]

And here I am thinking it was to save money on the rods and stepper motors.

[1]: http://www.peachyprinter.com/?_escaped_fragment_=printer-spe...

ibrahima 2 days ago 1 reply      
Hmm, this is pretty much getting into impulse buy territory (for a 3D printer), and it even helps with my #1 problem justifying getting one which was that I haven't really learned any 3D modeling, by being capable of scanning (though I guess you could also do something similar with a Kinect). Could anyone with more insight into these things explain further why this is unique and whether there might be drawbacks? This almost seems too good to be true.

(for background, I just want a 3D printer to tinker with, and if it works at all for $100 I'll be satisfied - I might have as much fun building it as using it)

andrewcooke 2 days ago 2 replies      
this may be obvious to everyone else, but took me a while... stereo!

[there are two mirrors to drive (or, equivalently, a point in 2D to target with the laser) and i couldn't see how to do that with a single audio signal.]

tinco 2 days ago 1 reply      
This is great stuff. I have no idea what I'd use a 3d printer for, but this guy's awesome approach to engineering has me wanting to buy one just to reward his work.
rbanffy 2 days ago 0 replies      
After a close look at the simple and clever design and the not quite practical printing method, I'm about to say this is the ZX-81 of 3D printers. Not quite an Apple II, but cheap and may serve to ignite some imaginations.
mrleinad 2 days ago 1 reply      
"Grayson wrote an add-on to blender which translate 3D model into an audio waveform".

This guy probably has a t-shirt that reads "What would McGyver do?"

grannyg00se 1 day ago 0 replies      
I was just talking to my mom about 3D printers on Friday, trying to explain the processes of the different types, and how the most accurate ones like this (lasers, laser-sensitive liquid, directed high precision curing) are the best but also the most expensive. That conversation would have gone much differently had I seen this project a few days ago.

One hundred dollars is a major game changer. I've been somewhat reserved on the 3D printing hype because of a lack of necessity for most people, and a lack of precision/usefulness at the lower price range. This can change all of that. For one hundred dollars you no longer have to worry about longer term entertainment value or interest for children. It's the cost of a couple of video games. And for project work, you don't have to worry about needing it for multiple projects. At $100 a single use justifies the cost many times over. I'm looking into spending $400 right now on a single 3D print for a small product I'm working on.

I love rewarding ingenuity.BACKED!

scoofy 2 days ago 1 reply      
This is a bit too good to believe, but at $100 i'll bite. I've been into 3d printing for years now, and my main concern is material. If this resin is durable, and doesn't get soft in the car on a warm day, this design could be really groundbreaking. If not, it'll be a waste of everyone's time. The quality looks pretty decent given how awful low end 3d printers can be without a ton of tinkering. My current printer cost me about 2K and ABS/PLA at $40ish/kg actually adds up when prototyping. I'd love to have something really cheap like this to test out prints before finalizing them in ABS.
DanBC 2 days ago 1 reply      
> The software we wrote as an add on to blender takes the data from that 3D model and translates it into an audio waveform. It then plays the audio file out to the printer through the headphone jack in your computer. This waveform drives a pair of electro magnetic mirrors. The higher the volume, the higher the voltage, the more the mirrors move. The purpose of these mirrors is to reflect and control the path of the laser beam. By using the audio waveform generated from the 3D model data to drive the mirrors, we are able to get the laser beam to draw out the shape of the object. That's takes care of the X and Y axes.

I look forward to people doing weird interesting things with this!

I have no idea how lissajous figures could work, but they're cool and in 3d resin print they'd be cooler.

dm2 2 days ago 0 replies      
Awesome product! The beginning of the video needs to be redone, stop switching the camera angle and get rid of the techno music. I'd recommend starting the video with a timelapse of a printing with some basic explanation audio.
jimktrains2 2 days ago 4 replies      
Mount a Raspberry PI to the side of it (with a USB microphone)and you could treat it as a network-attached printer :-)
ttty 1 day ago 0 replies      
Why when I visit this website I get a torrent downloade automatically? widgets_tweet_button.html.torrent
daeken 2 days ago 0 replies      
I got my first ever 3d printer today (Makerbot Replicator 2). It is seriously the coolest piece of tech I've ever seen, which is really saying something. I can't wait for the price to drop, and for damn near everyone to have a 3d printer of some sort.
jlgreco 2 days ago 0 replies      
I wonder if this will work with a combined headphone/microphone jack.

Regardless, I love the approach taken here; really quite clever.

tonyarkles 1 day ago 0 replies      
This is rad! As I looked through the list of people involved, I learned that one of the guys doing it was a close friend of mine through EE school.

And I have to chuckle a little bit about how much of a prairie farmer hack this is. People around here build crazy hacks like this all the time on their farm equipment, glad to see them getting some publicity!

mcantelon 2 days ago 1 reply      
Is the resin for this a standard type of resin? Seems like you don't get much of it with the kit.
scotty79 2 days ago 3 replies      
Awesome idea. But isn't mirror inertia a problem?

Also constant velocity of z-axis movement might pose some inefficiencies because if you want to print a box you have to set the rate of ascend low enough for the laser to create full bottom and you can't speed up when you are building sides of the box.

antr 2 days ago 3 replies      
why does the site, before it finishes loading, want me download a *.torrent file?
aagha 1 day ago 0 replies      
It should also be noted that this guy seems to be a genius.
codehero 2 days ago 0 replies      
I really like it and its entirely analog nature is refreshing. It makes sense to set aside something like a raspberry pi for it (I would never use a PC, especially on update tuesdays. And I would not want to set my PC audio to full blast so the output swings the full +-2.5V).

Mechanically delicate though. Vibrations disturbing the surface of the liquid will skew the print and cause poor layer adhesion. And you have to make sure your surface is perfectly level.

samstave 2 days ago 0 replies      
At this price - I would love to see an array of these printing into a larger vat to produce large objects.

This will make it so meta-printers can be hacked together:

Mount the Peachy onto XY motion capabilities (whats the word for this?) axes? -- and it should be trivial to make a hydrolically lifted resin system that is quite large indeed. (that was the most ingenious part of this design, IMO.

It should be easy to create a resin vat calculator where you simply provide the XYZ dimensions of your container and it will calculate the drip-resolution for you so you know at what rate to adjust the flow to get whatever resolution you need.

I'm getting several of these.

marincounty 2 days ago 0 replies      
I just heard a few weeks ago that the patents on laser 3-D printers expired. I really hope this freedom fromlawsuits will inspire many more Inventors.


ris 2 days ago 0 replies      
I wouldn't trust the dimensions of things made by this one millimeter.
tocomment 2 days ago 1 reply      
So why does it have to use audio? And why can't it use servos to move the lasers?
nanofortnight 2 days ago 1 reply      
I wonder if you're able to get accurately sized objects for gears and such. The resin for photolithographic printers normally suffer from shrinkage after printing.
fudged71 2 days ago 0 replies      
Very clever ideas in this design. I hope it can scale up the way he suggests!
robomartin 1 day ago 1 reply      
It's clever and really neat. That said, please don't think you are going to get parts of the quality, accuracy, surface detail and durability attainable through other more established methods.

The only reason I am funding it is to support someone thinking outside the box. I really have no use for it due to the issues listed above. I'll probably gift it to someone who might. I've done that a number of times with KS projects.

agumonkey 2 days ago 0 replies      
beautiful approach. love the audacity 'model preview'.
Command-line tools for data science jeroenjanssens.com
326 points by robdoherty2  4 days ago   77 comments top 24
bcantrill 4 days ago 1 reply      
Glad to see that we're not the only ones who are emphatic believers in applying the Unix philosophy to data science! Those interested in this may also be interested in Mark Cavage and Dave Pacheco's presentation last week at Surge on Manta[1], a new storage service that we have developed that draws very direct inspiration from Unix -- and allows you to use the tools mentioned by Jeroen across very large data sets. awk FTMFW!

[1] http://us-east.manta.joyent.com/mark.cavage/public/surge2013...

mjn 4 days ago 1 reply      
I like Google's crush-tools, which works on delimited data (e.g. tab-delimited), a somewhat simpler and faster format than CSV. Lots of the built-in Unix tools also work on delimited data (cut, join, sort, etc.), but crush-tools fills in some gaps, like being able to do a 'uniq' on specific fields, do outer joins, sum columns, etc.:


harrytuttle 4 days ago 0 replies      
Nice tools.

You can actually do most of that with vanilla PowerShell and Excel believe it or not but it's much fuglier and you spend most of your way working around edge cases.

The only thing that scares me about this though is that JSON is a terrible format for storing numbers in. There is no way of specifying a decimal type for example so aggregations and calculations have no implied precision past floating point values.

th0ma5 4 days ago 0 replies      
The ability to script the R stuff with pipes and whatnot is very welcome to me. I tried using R as a part of a system of normalizing package installs across environments. It was sort of kludgey but ultimately worked okay. Setting up the environment as the first part of any script you push into R is necessary, and that makes sense. Python and Java seem to have more support for this kind of thing (environment swapping) on the command line, or at least perhaps I wasn't looking the right places perhaps for R. It has been a year since I've messed with this though.
aficionado 4 days ago 2 replies      
A very powerful command line tool for Machine Learning: http://bigmler.readthedocs.org/en/latest/

Create a predictive model is as simple as:bigmler --train < data.csv

or create a predictive model for Bitcoin volume taking online data from Quandl and parsing it with jq in just one line.

curl --silent "http://www.quandl.com/api/v1/datasets/BITCOIN/BTCDEEUR.json" | jq -c ".data" | bigmler --train --field-attributes <(count=0; for i in `curl --silent "http://www.quandl.com/api/v1/datasets/BITCOIN/BTCDEEUR.json" | jq -c ".column_names[]"`; do echo "$count, $i"; count=$[$count+1]; done) --name bitcoin

More info here: http://blog.bigml.com/2013/01/31/fly-your-ml-cloud-like-a-ki...

zmmmmm 4 days ago 0 replies      
Worth noting that the Rio tool does not seem to account for R's concurrency / race conditions when running RScript. Basically, if you run it a lot in parallel you will get random failures. Although I am sure it is not exactly meant for high concurrency situations, it would be good if it accounted for this.
kbenson 3 days ago 0 replies      
This approach reminded me quite a bit of what Mojo::DOM and Mojo::DOM:CSS modules give you, and the ojo command line tool for perl (called as perl -Mojo).

Here's section 5 from that article rewritten:

perl -MList::MoreUtils=zip -Mojo -E 'say g("http://en.wikipedia.org/wiki/List_of_countries_and_territori... > tr:not(:first-child)")->pluck(sub{ j { country=>$_->find("td")->[1]->text, border=>$_->find("td")->[2]->text, surface=>$_->find("td")->[3]->text, ratio=>$_->find("td")->[4]->text } })' | head

  {"ratio":"7.2727273","surface":"0.44","country":"Vatican City","border":"3.2"}  {"ratio":"2.2000000","surface":"2","country":"Monaco","border":"4.4"}  {"ratio":"0.6393443","surface":"61","country":"San Marino","border":"39"}  {"ratio":"0.4750000","surface":"160","country":"Liechtenstein","border":"76"}  {"ratio":"0.3000000","surface":"34","country":"Sint Maarten (Netherlands)","border":"10.2"}  {"ratio":"0.2570513","surface":"468","country":"Andorra","border":"120.3"}  {"ratio":"0.2000000","surface":"6","country":"Gibraltar (United Kingdom)","border":"1.2"}  {"ratio":"0.1888889","surface":"54","country":"Saint Martin (France)","border":"10.2"}  {"ratio":"0.1388244","surface":"2586","country":"Luxembourg","border":"359"}  {"ratio":"0.0749196","surface":"6220","country":"Palestinian territories","border":"466"}
And here's the original command:

curl -s 'http://en.wikipedia.org/wiki/List_of_countries_and_territori... | scrape -be 'table.wikitable > tr:not(:first-child)' | xml2json | jq -c '.html.body.tr[] | {country: .td[1][], border: .td[2][], surface: .td[3][], ratio: .td[4][]}' | head

Fairly comparable, but there's a whole world of Perl modules for me to pull in and use with the first one.

nonchalance 4 days ago 1 reply      
> Ideally, json2csv would have added the header.

You can raise an issue (https://github.com/jehiah/json2csv) or just fork and add a flag to include a header line

gav 4 days ago 0 replies      
If you are working with XML, XMLStarlet is invaluable: http://xmlstar.sourceforge.net/
dergachev 4 days ago 1 reply      
These are great!

I wrote a quick ruby script that converts one or more CSV files into an SQLITE db file, so you can easily query them.


gerad 4 days ago 1 reply      
I'm surprised that the post didn't call out the unix built-ins cut, sort, uniq, and cat. There's an amazing amount of data processing you can do with just those commands.
the_cat_kittles 4 days ago 5 replies      
Some of these are cool, but I don't understand the preference for command line tools over writing, say, a short python script in vim and then executing it. I see the two methods achieving the same results with about the same amount of text, except with a script, its savable and much easier to type.
paulgb 4 days ago 0 replies      
Great list. Shameless self-plug: I wrote a tool similar to sample available on pip as subsample. It supports the approximate sample algorithm that yours does as well as reservoir sampling and an exact two-pass algorithm that runs in O(1) space.

Docs: https://github.com/paulgb/subsample

revertts 4 days ago 1 reply      
You should check out RecordStream. It has a lot of convenient processing built around JSON, and a lot of ways to get data to/from JSON.



jeroenjanssens 4 days ago 4 replies      
Suggestions are more than welcome. I'm currently keeping the post up-to-date with suggested tools and repositories.
peterwwillis 4 days ago 1 reply      
So weird... I didn't know about the csvkit I guess (or maybe it wasn't available for cygwin?), so I wrote my own a year ago. It supports field names (in addition to column numbers) so your data can move around and you'll still reference the right logical data.
cgrubb 4 days ago 1 reply      
Nice tools. I see some stuff I might add to my own personal repo: https://github.com/clarkgrubb/data-tools

Would be nice if some of these tools became standard at the command line. I don't know about "sample" though, since that can easily be implemented in awk:

    awk 'rand() < 0.2' /etc/passwd

fluidcruft 4 days ago 0 replies      
There is a command-line optimizer. I always forget it's name and can never find it. It is very cool for doing simplex optimizations etc.

I will try yet again to find it and edit.

tomrod 4 days ago 0 replies      
This post and comment section are tool's gold. I've been wondering where to start expanding my toolkit. Now I have a lot of great stuff to learn!
helloTree 4 days ago 0 replies      
Maybe I should take a look at awk/sed but I never found its language orthogonal. For simple scripts I mostly use Python or Haskell via something like

ghc -e 'interact ((++"\n") . show . length . lines)' < file


I know that it's the same like "wc -l" but using that approach I can solve also problems that may not be well suited for awk/sed. Or maybe I just have to see some convincing one-liners.

vram22 3 days ago 0 replies      
Good thread. This article may be useful for those who want to learn to write Linux or Unix command-line utilities in C:

Developing a Linux command-line utility:


dima55 4 days ago 0 replies      
Here's another that I use all the time:


It reads data on stdin, and makes plots. More or less anything that gnuplot can do is supported, which is quite a lot. Realtime plotting of streaming data is supported as well. This is also in Debian, and is apt-gettable.

Disclaimer: I am the author

mrcactu5 4 days ago 0 replies      
I feel like a dumbass. The two great data science tools I learned for command line are grep and sed :-)
lardissone 4 days ago 0 replies      
Awesome tools.

Also interesting color scheme! Can you share this?

Go Pro on a soaring eagle [video] kottke.org
321 points by pccampbell  5 days ago   79 comments top 28
aresant 4 days ago 3 replies      
When I got my Oculus dev kit I was most excited about the potential for designing interactive experiences driven by unity / 3d graphics.

Then I checked out a "wingsuit" video shot in 360 degrees and realized I had completely missed the potential of the platform:


The resolution is mediocre but for a first-gen experience in VR I was literally floored. I showed these demos to some unwitting subjects and where riftcoaster was "WOW" the 360 video had their mouths hanging open.

And this isn't speculative or crazy expensive - 360 riggings + cameras can be had for <$2k and here are lots of interesting experiences already popping up.


http://www.360heros.com/ or http://freedom360.us/




Lewton 5 days ago 5 replies      
I'd watch a 4 hour movie of this, i was so disappointed when the video stopped
heyitsnick 4 days ago 1 reply      
The first time I saw this was Human Planet, in an episode about Kazakh hunters training Golden Eagles to hunt foxes for them:


The extras part of the documentary includes a behind-the-scenes look at getting the birds-eye shot.

iliis 5 days ago 5 replies      
Ah, this is just beautiful.

There's a whole community flying model airplanes trough a camera and video goggles:http://vimeo.com/16604842

eumenides1 5 days ago 2 replies      
So this is what being Gandalf feels like.
joshaidan 5 days ago 1 reply      
I wish they would have shown the eagle landing, that would have been interesting to see.
booop 5 days ago 1 reply      
Looks like it's time to fire up Unity and make an eagle hunting sim.
leeoniya 4 days ago 3 replies      
is there anything that suggests this is an actual GoPro?

i own several of them and i'd imagine that because of the way they have to be mounted, their width and frontal surface area would impede flying quite significantly.

i'm inclined to think it's a more slender camera, like the Contour. http://store.contour.com/ae/us/page/home

GoPro goes way overboard with their marketing; they've become the Kleenex of action cams.

louthy 4 days ago 1 reply      
As an ex-games developer it reminded me of flying around a level editor with a fixed forward speed and using a mouse for orientation.

Maybe that's just me!

matthewmcg 5 days ago 1 reply      
Very cool! The eagle appears to be using the ridge lift generated by wind coming up that slope very effectively.
hadronzoo 4 days ago 0 replies      
Earthflight has similarly beautiful footage: http://www.youtube.com/watch?v=XIKnol2i850
gadders 4 days ago 1 reply      
I'd quite like to see what it looks like with the visual acuity of an eagle as well. Or at least some representation. EG where we see blobs of colour as cars in a car park, the eagle sees the mouse under the front bumper of the red one.
nkurz 4 days ago 0 replies      
It's done as an a animation, but here's a similar video from the point-of-view of a kiwi bird:


Animation or not, it may be the most poignant short film that I've ever seen.

wingo 4 days ago 0 replies      
They play this video while you wait for the train to take you up to that glacier (the mer de glace). I stared at it gapemouthed for some time!
ffrryuu 4 days ago 0 replies      
At the end, they shot the eagle to retrieve the camera.
applecore 5 days ago 3 replies      
How did they retrieve the camera?
kevinbowman 5 days ago 1 reply      
I'm guessing it was a tamed eagle or something like that? Very impressive, though, nonetheless.
zoner 4 days ago 1 reply      
This is like paragliding :) But without the hassle of collapses, material problems and a wee bit faster.
Ozark 4 days ago 0 replies      
what is this reddit?
Ethan_Mick 5 days ago 1 reply      
I'm a little terrified as to how close to the trees it got.
pwenzel 4 days ago 0 replies      
Time keeps on slippin', slippin', slippin' Into the future
stigi 4 days ago 0 replies      
I wish I had an eagle
benjamta 5 days ago 0 replies      
Fantastic - quite some speed it's got there.
seanschade 4 days ago 0 replies      
This was well worth watching!
kevando 5 days ago 0 replies      
Oh, you know. Just a GoPro on an eagle...
d0m 4 days ago 0 replies      
reminds me Ocarina Of Time
mentos 4 days ago 0 replies      
Metadata Equals Surveillance schneier.com
299 points by antsar  1 day ago   100 comments top 11
rayiner 1 day ago 19 replies      
Schneier sets up and knocks down a strawman:

"Back in June, when the contents of Edward Snowden's cache of NSA documents were just starting to be revealed and we learned about the NSA collecting phone metadata of every American, many people -- including President Obama -- discounted the seriousness of the NSA's actions by saying that it's just metadata."

The NSA and Obama aren't "discounting" the NSA's actions because it's "just metadata." They're defending the legality of the NSA's actions by saying that it's "just metadata."

The legally relevant distinction isn't how informative data versus metadata is, but who generated and controls the information that's the subject of surveillance. AT&T's metadata about your calls is generated by AT&T's equipment, stored on its servers, and is generally not even accessible to you. That not only puts it squarely within the domain of the third party doctrine, but makes it very hard to argue that it fits within even a common sense lay person's reading of the 4th amendment (which guarantees "right of the people to be secure in their persons, houses, papers, and effects."). Arguing that AT&T's data is your data is an uphill battle to say the least.

Now, maybe third party doctrine is obsolete in a world where people voluntarily give over to third parties every detail about their lives.[1] But it doesn't contribute to that debate for Schneier to totally mischaracterize what Obama is saying.

[1] In my opinion, privacy is obsolete in a world where people voluntarily give over to third parties every detail about their lives, but reasonable minds can differ on that point.

ijk 1 day ago 2 replies      
Part of the problem, I think, is that our concept of privacy is tightly linked with our physical embodiment. But our concept of self is no longer limited to our bodies. We conceive of our online avatars as ourselves. But our instincts about privacy haven't kept pace.
ck2 1 day ago 0 replies      
Remember when Nixon said "when the President does it, it's legal" ?

Well we've reached the point where the government is arguing whatever it wants to do is legal.

Of course metadata is surveillance, it is pretty darn obvious it is. It is just easier to spin.

TomasSedovic 1 day ago 0 replies      
I found Cory Doctorow's recent short screenplay on the topic quite fitting:


(features Winston Churchill, Alan Turing and Theresa May)

optymizer 1 day ago 1 reply      
I don't know about all cases, but in some cases, that's spot on. The Government doesn't need to know WHAT you discussed with Saddam Hussein, they just need to know that you were there at some time talking to Saddam to place you under the radar. In other words, 'information about information'.
scrrr 1 day ago 2 replies      
Somebody should start selling bumper-stickers with catchy phrases like this. I'd get one for my car.
ChrisAntaki 17 hours ago 0 replies      
The NSA has the actual data as well. The metadata is there to serve as an index, for easy searching.

Ref: http://www.wired.com/science/discoveries/news/2006/05/70944

sh1989 1 day ago 1 reply      
"Metadata in aggregate is content" - Jacob Appelbaum
coldcode 1 day ago 0 replies      
The government does not care what we think it is.
Mordor 1 day ago 0 replies      
Everyone assumes metadata doesn't include the source data.

Even a compressed copy of your telephone conversation isn't the actual call, just the 'metadata' describing how it is compressed...

cowboy_coder 23 hours ago 0 replies      
How can we hide or encrypt Metadata?
Apples iPhone 5 touchscreen is 2.5 times faster than Android devices venturebeat.com
281 points by bumbledraven  3 days ago   210 comments top 41
kyro 3 days ago 16 replies      
I'm so glad to see actual numbers for this. Time and time again I've been called delusional for saying that Android devices have more observable lag than iPhones. It is a very, very small component of the overall device and OS that has an enormous affect on the overall user experience, at least to me. It doesn't seem to be that big a deal to many as evident by phone sales, but it drives me absolutely nuts and is the main reason why I won't make the switch to Android.
kmfrk 3 days ago 5 replies      
To get an idea of the impact and importance of touch latency, see this intriguing demo by the Microsoft Applied Sciences Group: https://youtube.com/watch?v=vOvQCPLkPt4.

Drawing is one of those things that has felt awful on iOS devices to me.

blehn 3 days ago 5 replies      
It's a shame that Apple is negating that responsiveness with painfully slow transitions in iOS 7



programminggeek 3 days ago 1 reply      
This kind of responsiveness is actually the kind of thing that Apple is sort of famous for by designing both the hardware and the software, but it is surprising that Samsung is still behind.

I think the other thing that is not very often taken into consideration is how resolution impacts responsiveness. The more pixels the graphics card has to push, the slower the screen to redraw.

Pairing bigger devices with big resolution means that achieving consistently high performance is harder without equal advances in graphics processing.

Steko 3 days ago 1 reply      
It seems like an important thing that benchmarks didn't even really exist for until now but I think the topline number is off? 55 ms to 114 ms how do they get 2.5 times faster?

2 times faster is already very impressive, no need to exaggerate further (although I guess thats how you get the clicks).

icegreentea 3 days ago 1 reply      
It would be nice to know what their testing methodology was - specifically, was the measured times from touch to screen response, or from touch to OS response?
blinkingled 3 days ago 0 replies      
Interesting that none of the Android devices tested are Tegra based. Nvidia being gaming focused had to do something about touch latency so they did DirectTouch which was designed for better latency and lower power draw. Given the architectural differences between DT and others, I think DT should do at least somewhat better. See here for example - http://www.youtube.com/watch?v=DehlRJZPsDY .
PhasmaFelis 3 days ago 2 replies      
So in addition to having smaller pixels than Android devices with undetectably small pixels, Apple now has faster reactions that Android devices with undetectably fast reactions.

I'm looking forward to hearing about the new iPhone's unmatched fidelity in reproducing ultraviolet images and ultrasonic sounds.

joeblau 3 days ago 3 replies      
I have the Lumia 920 and when I have to develop on my iPhone 4 or use a friends iPhone 5/4s/4, this is my main problem. Lumia screen is so responsive that even iPhones 5 feels sluggish to me. Typing is especially challenging so it's nice to see that $AAPL addressed the screen response. Next upgrade to the screen needs to be to fix the size.
bryanlarsen 3 days ago 0 replies      
It would be interesting to get some numbers from a Tegra 4 device because touch latency is one of the selling features of that platform.
lnanek2 3 days ago 1 reply      
Apple has had much better multitouch support from day one as well. They started with a grid of sensors that could detect over 10 touches or something like that. Android devices have slowly struggled up from single touch, to single touch with a few multitouch gestures, to multitouch with an inability to tell apart certain situations, to real multitouch for certain numbers of points. Mostly due to manufacturers always going with the cheapest touch sensors they could get away with.
iansinke 3 days ago 1 reply      
The graph is just slightly misleading -- the horizontal scale starts at 20, not 0.
ultrasaurus 3 days ago 0 replies      
This is a brilliant submarine ad by Agawi. Reading it, I got the impressions that TouchMarks was some standard industry test (it doesn't seem to be).
Mikeb85 3 days ago 1 reply      
And this is pretty much the difference between implementing the user-space in Obj-C versus Dalvik... I'm sure Meego would have been much better than Android, as surely Ubuntu touch and Tizen will be...
6ren 3 days ago 0 replies      
An intuitive way to sense latency is to drag you finger and see how far behind the cursor trails.

Research showed that people can perceive even quite low latency:http://www.techspot.com/news/47784-advances-in-touch-screens...(NOTE: the article incorrectly states this is a device - it is NOT, it's just an experimental setup to measure latency perception, i.e. fake.)

I would expect the whole processing path - touch, bandwidth, CPU, RAM, OS, app, GPU, display - to factor into latency, just as it does for VR (see John Carmack's talk on latency for Oculus Rift).

Interestingly, mouse cursors seem instant to me (below perceptible latency), though it's slightly harder to tell, because the mouse isn't on the screen (and if you put it on the screen, the scaling is way off).

rly_ItsMe 3 days ago 1 reply      
Now that kind of Flame Wars start again.I remember the times where in every Mac Magazine you've found a comparison between Macs and 'PCs' where they did measure the times of flipping Images in Photoshop and were proud when the Mac was 0.5 sec faster than the Windows pendant.

I don't care about those kind of benchmark, because its not really necessary in the daily routine of handling a smartphone.

Can I do some calls? - FineCan I sync my calendar and contacts? - Fine

If the reaction/ respond time of the GUI is acceptable and without some breaks, I don't care about 1/10 sec in respond time.

jared314 3 days ago 0 replies      
Better link to Agawi's TouchMarks I benchmarking setup:


rvijapurapu 3 days ago 0 replies      
I would love to see the code for each of the tests. And most importantly the optimizations used for each. It's always important to get the baseline right before arriving at a conclusion.
DavidWanjiru 3 days ago 1 reply      
Would I, with my naked senses (eyes, touch) be able to tell the difference between a 55ms response time and 117ms response time? Alternatively, does such a difference add up or combine with other factors that ultimately make it noticeable to me? How? And while we're still at it, is this winning performance by Apple touchscreens a function of the quality of the screen itself (or components), other hardware (ICs and what nots) that work with the screen and are a factor in how it responds, superior code at OS level? I'd love to hear such details, as opposed to merely telling me 55ms vs 120ms.
6thSigma 3 days ago 0 replies      
Perhaps the iOS app they built to test its responsiveness is more efficient than the Android app they built to test its responsiveness?
buster 3 days ago 2 replies      
Like a single person on earth EVER complained "boy, does my smartphone touchscreen not react"... yeah... Actually, i wouldn't have thought it would be >100ms for my HTC One, but it's certainly small enough that i cannot see a difference.
code_duck 2 days ago 0 replies      
This must be one reason that musical instrument apps are unusable on Android (all the way from my Moto Droid 2 to my Galaxy S3, one can't play drum apps in a way that sounds decent at all) while they are generally excellent on iOS.

Per discussions I've had in the past the audio layer in Android is part of the problem. 60-100 ms delay is a lot too, though and that surely is adding to the perceived lack of responsiveness.

danielrm26 3 days ago 0 replies      
A good example of Apple "intangibles" becoming tangible. These combine to become experience, which is really what it's about.

Nice to actually have a handle for something as important as this element of a user's enjoyment with using a touchscreen.

ricardobeat 3 days ago 0 replies      
I and a couple friends used to compare the iPhone/iPad vs Android by touching the middle of the screen and wiggling it sideways really fast. iOS is always 100% precise - the area under your fingertip is exactly the same as where you started - while Android only started to keep up after Jellybean, and is still not as good.
nwhitehead 3 days ago 1 reply      
It's fun to measure these sorts of numbers for all kinds of devices. You don't need equipment that is too fancy, a Casio Exilim EX-ZR10 (cheap!) is good enough to get numbers within 4ms by framecounting the high speed videos. I personally find input lag on Android devices infuriating, I wish more attention were devoted to fixing it.
ppradhan 3 days ago 0 replies      
Anyone has any idea what the iPhone 5 touch screen is compared to the Nokia Lumias? The touch on them is pretty damn fast too, clearly faster than Android devices. But iPhone does still feel slightly faster... Maybe Lumia's and iPhones are almost on par.
ksec 3 days ago 0 replies      
While i have always felt the difference. I never knew about the numbers.

And while iPhone wins @ 55ms, i still think that is a very high number for input latency. Would have wanted Sub 20ms.

capkutay 2 days ago 0 replies      
Is anyone else surprised by the wave of positive media towards Apple these past few weeks? I'm honestly so used to Apple being bashed that I was even expecting this article to be negative near the end. I was also expecting to see the top HN comment say something along the lines of "no this is BS I could never use Apple products".
sengstrom 3 days ago 0 replies      
"Even a two-year old iPhone 4 beat out the other Android devices, Relan said. You expect this from Apples design team, while others may view their responsiveness as good enough. Now we know why the Android touch keyboard is not as snappy."

They know why but don't bother to tell us in the article...

amattn 3 days ago 1 reply      
This statement is a bit ridiculous:

> "The team built a device dubbed Touchscope that can measure response times to a level of accuracy that is plus or minus 4 milliseconds. It then adds the cloud processing response time to calculate the actual delays experienced by users."

No way the cloud is processing anything having to do with touch handling.

moca 2 days ago 0 replies      
The article mis-interpret the data. It actually measures the full UI latency, which includes touch input, event system, and UI graphics system. It is somewhat well know that Android event and graphics systems have higher latency. At least, I took it for granted for 5 years. The touchscreen is a hardware component, its latency mostly depends on hardware choice. Nintendo 3DS and PS Vita have much lower latency, because the software stack is highly optimized for games (which obviously wants low latency).
bennesvig 3 days ago 0 replies      
This is one of the main reasons I switched from a Droid to an iPhone. I also had an iPod touch at the time and the difference in lag when surfing the web always frustrating on the Droid.
barumbarum 3 days ago 1 reply      
Is this also Objective-C vs Java?
simplexion 3 days ago 3 replies      
Now you need to upgrade your eyes to notice it. Same thing with ridiculous ppi.
madmax96 2 days ago 0 replies      
This kind of makes sense. Whenever I've used an iThing, the screen always felt a lot more responsive than other devices. From a software perspective, their kernel is optimized for io, and so is the BSD userland. Not a surprising bench mark.
g4ur4v 3 days ago 1 reply      
Apple's iPhone5 is also 2.5 times expensive that Android devices .
spupy 3 days ago 0 replies      
Newer products better than older products. More news at 11.
n0on3 3 days ago 1 reply      
Think about this: iOS7 brand new interface sucks so much that on previous iPhones it lags EXACTLY like poor Android-based devices
chatman 3 days ago 0 replies      
Nice, at least the fanboys have something to be happy about. :-)
beyondcompute 2 days ago 0 replies      
And who doubted?
mehuldesai 3 days ago 3 replies      
Excuse me, but why all this energy on a millisecond type performance change. Why dont you guys focus on build apps that solve problems or are new companies. Your energies and brains are misplaced. Maybe its fun though.

Here's the deal. Instagram, Pinterest or SnapChat probably never considered about the time it takes for an iphone generation X to perform. They didn't design for it, they designed what the user needed and wanted.

I would say millisecond snapness isnt perceived by lets say 98% of the users of these systems. Focus on the application. Whats missing in mobile ? Facebook and Twitter are missing the picture. Focus on that guys, you are smart, but put energy on the big problems and not some low level hardware/software layer.

Cmd.fm cmd.fm
270 points by peacewise  3 days ago   87 comments top 46
JoshTriplett 3 days ago 3 replies      
Interesting concept, but it's always surprising to see a newly created web-based audio player that expects Flash rather than using HTML5 audio. Doesn't work at all without Flash.
whichdan 3 days ago 2 replies      
Very cool app. Few thoughts:

- If a track doesn't start buffering quickly enough, maybe automatically skip it?

- Running 'clear' also clears the current track, but it should really be persistent.

- This might go against the popular opinion, but I'd like to see "now playing" pinned at the top, so when the window scrolls, it scrolls under it, instead of effectively hiding it.

- Consider setting a cookie to track preferences.

- If you could link to the source (the current song's soundcloud link) that would be excellent. At the very least, a permalink or something.

lelandbatey 3 days ago 1 reply      
Oddly, I can play most stuff, but not drum & Bass. It just says

    Searching genre..    Found! Playing 'Drum & Bass' genre, yay!    -----------------------------------------------------------------    The song is ended (but the melody lingers on)    -----------------------------------------------------------------    Welcome to cmd.fm!    Use 'help' command to see available commands    >
It's rather odd...

_lex 3 days ago 0 replies      
You should actually constrain volume to 1-100. I'm currently listening at 2000, and I tried 1000000 and it was painful.
ineedtosleep 3 days ago 2 replies      
If you're like me and escape your spaces instinctively (e.g. "Progressive\ Rock" instead of "Progressive Rock"), it won't work. Hold back the desire to press the "\" key.
gbog 3 days ago 1 reply      
I also prefer TUI over Ajax GUI but here I think we don't have the tools and environment that define a real TUI. For example, can I pipe the genre list to grep or sort or awk? Can I script a player in a cronjob? I doubt it (cannot check because on a phone)
jaytaylor 3 days ago 3 replies      
Doesn't work at all with the "Vimium" Chrome extension [1]. What a shame.

[1] https://chrome.google.com/webstore/detail/vimium/dbepggeogba...

bmslieght 3 days ago 0 replies      
Current volume is 100, enter value between 0 and 100 > 100[USER]: Cannot call method 'setVolume' of undefined[[;#f00;;;TypeError: Cannot call method 'setVolume' of undefined at playerVolume (http://cmd.fm/js/common.js:26:15) at setVol (http://cmd.fm/js/terminal.js:182:3) at Object.term.push.prompt [as eval] (http://cmd.fm/js/terminal.js:358:11) at Object.z [as commands] (http://cmd.fm/js/terminal/jquery.terminal-0.5.4.min.js:70:18...) at HTMLHtmlElement.t (http://cmd.fm/js/terminal/jquery.terminal-0.5.4.min.js:41:20...) at HTMLHtmlElement.x.event.dispatch (http://cmd.fm/js/jquery.js:5:14129) at HTMLHtmlElement.v.handle (http://cmd.fm/js/jquery.js:5:10866)]TypeError: Cannot call method 'setVolume' of undefined at playerVolume (http://cmd.fm/js/common.js:26:15) at setVol (http://cmd.fm/js/terminal.js:182:3) at Object.term.push.prompt [as eval] (http://cmd.fm/js/terminal.js:358:11) at Object.z [as commands] (http://cmd.fm/js/terminal/jquery.terminal-0.5.4.min.js:70:18...) at HTMLHtmlElement.t (http://cmd.fm/js/terminal/jquery.terminal-0.5.4.min.js:41:20...) at HTMLHtmlElement.x.event.dispatch (http://cmd.fm/js/jquery.js:5:14129) at HTMLHtmlElement.v.handle (http://cmd.fm/js/jquery.js:5:10866)]Current volume is 100, enter value between 0 and 100 >
radley 3 days ago 3 replies      
Funny, you can tell by which generation/culture a player was made based on the listed genres. In this case I see acid jazz, trip-hop, and moombahton but no dubstep or glitch hop.
ams6110 3 days ago 0 replies      
Would love to see this expand. More general soundcloud search, etc. I played the "Funk" genre and it started repeating after only a few tracks. Nice demo of the concept though.
hsmyers 3 days ago 0 replies      
Long ago, there was music, call it pop. Much time passes and the same music is still played, but it has been renamed folk. Edison, got involved and the guy on the Martin discovered Fender so now they call it folk rock. Just to be clear, folk didn't go away, it is still around and thriving---fix your genres please :)
anuragramdasan 3 days ago 0 replies      
This is lovely. Although it would be great of there could be some link or info about the track being played because this could work as a brilliant music discovery service.
tjbarbour 3 days ago 1 reply      
For some reason, can't see how to comment, am I missing something?
_lex 3 days ago 2 replies      
How do we chat in the repl? I'm getting messages I'd like to engage with.
susi22 3 days ago 0 replies      
I'd love to get these implemented:

- Ctrl + L

- 'w'

- 'ls'

jeena 2 days ago 1 reply      
I wrote "play Jazz" and pressed enter then I see that it searches and finds something but then it just stops at 0:00 minutes and does nothing. (Firefox 23 on OS X)
datashaman 1 day ago 0 replies      
Odd: When I play a genre, the site tries to POST to http://localhost/cmdfm/api/users/, which is denied by my local Apache since it does not exist.

Coding error?

asimov42 3 days ago 1 reply      
Love the nowhere layout! Is it possible to go to the previous track? Sometimes you get a song really stuck in your head and its nice to play it on repeat for a while while you work on something.
ams6110 3 days ago 1 reply      
Doesn't work at all for me. Mac OSX 10.8.5, tried Firefox and Chrome.

Edit: the cli works, but no music.

djhworld 3 days ago 2 replies      
Can you download this as a standalone app? I'd love a command line music player I can just boot into from my terminal
fl0m 1 day ago 0 replies      
I hear nothing. I get some error when I'm trying to change volume. Where do these great comments came from?
rfnslyr 3 days ago 0 replies      
OMG I LOVE THIS. The Dream Pop playlist is awesome, thanks OP. I love discovering new music!
ChrisNorstrom 3 days ago 0 replies      
I noticed it requires flash.

If not already, you should use Sound Manager 2 http://www.schillmania.com/projects/soundmanager2/ and its api. It's amazing. It auto selects HTML5 or Flash on both pc and smartphones. It even checks if people have flashblock enabled and tells them to "click here to enable flash".

I've used it on 2 projects before http://timeforzen.com and http://residentevilradio.com it can also stream from shoutcast servers.) I've got HTML5 disabled on those 2 projects because it was still beta and glitchy at the time the feature was introduced.

lcasela 3 days ago 0 replies      
This is really useful. It would kinda cool if you made this into a command line app. Still, good job!
gcb0 3 days ago 1 reply      
ah. that made me sad. i thought it was a telnet or something emulator into the actual service. But it's just a html/js shenanigans :(

I'd like the actual service to be a command line via telnet or other established protocol, so i can automate it via cron, arduino buttons and what not the cool kids use today.

blueblob 3 days ago 0 replies      
Kind of cool, but doesn't allow much customization of the music. I'll stick with my terminal and pianobar for now.
Stealth- 3 days ago 0 replies      
I prefer this sort of interface any day compared to a bloated AJAX-y web interface that kills my browser.
gren 3 days ago 0 replies      
This is awesome!Nice idea, would be great to be able to search for a given track by name / author.
adriancooney 3 days ago 0 replies      
This is absolutely fantastic! I'd love a native Alfred style Option + Space interface so I could quickly chop and change between the music because having to switch to Chrome then the right tab is cumbersome. This is really great however, excellent job.
brownBananas 3 days ago 0 replies      
Good stuff! I personally don't have a use for it, but I think other's need to see this.

If anyone is looking for a front-end job, look in the right place. Look in the source.

jafaku 3 days ago 0 replies      
Oh nice. A black screen -.-
blaireaug 3 days ago 0 replies      
Excellent! Bookmarked and will be listening, I've definitely needed something like this for a while, and it's really a beautiful design to pull off.
pintglass 3 days ago 0 replies      
This would be even better if it were a real terminal command-line app for OS X (and installable via brew) and Linux (and installable via apt).
rashthedude 2 days ago 0 replies      
Wow, I'm in awe. I have seen a lot of wonderful mash-ups but this really tickles my fancy. Great job.
ldonley 3 days ago 0 replies      
This is certainly an interesting idea, definitely appeals to the programmer/hacker type. Its not a service for everyone since it looks complicated and scary to someone who has never opened a terminal before. I think this is fun though and you did a good job!
bender80 3 days ago 0 replies      
Very cool. I like the awake layout. Listening to some rock music now.
thehodge 3 days ago 0 replies      
No country :(
oddshocks 2 days ago 0 replies      
This is so ill. Nice work.
sparktree 3 days ago 0 replies      
awesome idea, unfortunately doesn't work with a mobile browser keyboard
hsinxh 1 day ago 0 replies      
absolutely brilliant.
devashish86 3 days ago 0 replies      
love it.Can you give an idea of what tech are you using for this.
jensenbox 3 days ago 0 replies      
Great idea!
moe_ 3 days ago 0 replies      
missing one thing for me, the Status page should also show in which Genre you are currently, i cant see that anywhere
osipovas 3 days ago 0 replies      
I am enjoying this immensely. Thank You!
shire 3 days ago 0 replies      
this is so cool
jpinkerton88 3 days ago 0 replies      
this is the best
The Real Reason The Poor Go Without Bank Accounts theatlanticcities.com
268 points by sfrjay  3 days ago   221 comments top 31
patio11 2 days ago 9 replies      
Some reasons which are cited in the literature, of which there exists lots (http://www.kansascityfed.org/publicat/research/community/Unb... is a good entry point):

1) Many poor people mistrust banks, for reasons ranging from cultural ("Where I come from, they're far more likely to vanish with your cash than the mattress") to personal experience ("I was just going about my business one day but then I ran the account a little low, $300 vanished in fees, my rent check bounced and I got arrested for 'uttering.'").

2) Banks have some assumptions made about their customers which are institutionalized by practice and sometimes regulation or policy. These assumptions map fairly well to the middle class but sometimes don't travel well. Here's four things I could tell you about an adult member of the middle class: they're literate, have a primary address which changes relatively infrequently, carry identification with them, and do not fear speaking to Authority because they're not cognizant of a reason why that should result in their immediate arrest.

3) "Free checking" was a multi-billion dollar ongoing wealth transfer from poor bank customers to banks and relatively wealthier bank customers. ("Free checking" was a marketing tactic very popular in the 90s and early 2000s where banks eliminated monthly fees for checking accounts while slashing minimum balances to open them. The flipside is that they then started cranking up fees generated by e.g. overdrafts. This combination generally tends to not be to the benefit of (many) poor people.)

4) The alternative financial sector has a product mix which more closely matches poor people's needs than traditional banks. For example, short-term loans for small amounts of money available with minimal documentation required are a) astoundingly high risk, b) relatively expensive to process, c) have fairly low margins, and d) carry explosive reputational risk. These counsel against the typical retail bank even trying to offer them. Much better to loan a middle class American $8k out of a credit card limit of $20k at 12% with a 3% loss rate then to loan a poor person $100 with $110 due a week later. (If you APR-ize that it becomes "A number which one never, ever wants to get asked about when you're called to testify before Congress about how you're causing poverty in the community you serve.") Business thus flows to the alternative financial sector.

5) (The literature is a bit circumspect about this one, but it's there.) Sometimes poor people make decisions which, if you appreciated their limited options, individualized viewpoints of the world, and the sociocultural context and structural issues at play... are still very effing bad decisions.

thaumaturgy 2 days ago 3 replies      
HN is so cute. So many people here talking about why poor people do things the way they do without having ever really experienced it.

Here's why poor people don't like banks: because banks don't like them.

Let me paint you some pictures.

You're not clean-shaven. You smell a little bit, whether because you just finished a smelly job or because you're living on the streets or because you're depressed and haven't bothered to clean up in a day. You enter the bank, and no less than four pair of eyes look at you -- eyes that are surrounded by expensive haircuts, ties, and nice dresses or suits.

You're exhausted and you can't concentrate well. Maybe it's the chronic lack of sleep, maybe it's malnutrition, maybe it's stress, or maybe it's drugs or alcohol. You walk up to a counter with a check in hand. This paper is worthless to you, what you need is a different kind of paper that you can trade for things you need.

The teller asks you if you're a customer. She's polite, but polite in that barely perceptible condescending way that people are when they're uncomfortable with the person they're talking to.

You're not a customer. She'll have to charge you for cashing the check then (or maybe won't do it at all -- depending on company policy).

Can you be a customer? She directs you over to a desk. The desk has a nice finish on it. It's probably worth more than anything you own. It might even be worth more than everything you own.

You sit down at the desk and another person with a polite smile, perfect hair, and a nice tie or suit or dress asks you for some personal information and enters it into the computer.

You're poor, so you hate computers. They keep track of you everywhere you go. You can't seem to escape them. The police in different towns all somehow have access to the same information about you. Computers produce paperwork that occasionally makes it into your P.O. Box, or last address, or friend's address, and usually it's bad paperwork: more bad news, more stress, more trouble. Some faceless agency somewhere wants more of what you don't have.

This computer is no different. A few keystrokes later, the representative apologizes in that polite-but-condescending way: "I'm sorry, you're here in Chex Systems for account abuse at BigCorp Bank three years ago, we can't open an account for you."

This is the sixth bank you've been to.

Three years later, after a little bit of luck and a lot of hard work and a struggle that will forever leave a scar on your soul, you've finally reached the five-year expiration period for Chex Systems, you've finally got a regular job with a regular paycheck that is just barely enough to live on. You're set up with free checking at some bank, but you're very very careful not to overdraw your account, ever, because that one time you did it suddenly somehow turned into $250 of money that you owed the bank -- money that you didn't have, because if you did, the bank wouldn't be asking for it.

But this morning, your beater car finally crapped out for good and the low-rent apartment complex you live in forbids you from working on it in the parking lot. You can't get to work without the car. You have a little bit of savings, about $100, and you just need to borrow a little bit of money so that you can get another beater and get back to work as soon as possible. Your job doesn't offer paid sick days, so every day you're out of work, you get a little bit poorer.

You walk or get a ride down to your bank and you sit down behind that desk, and that computer that you still hate, and you ask the polite-but-still-a-little-condescending nicely-dressed person if you can get a car loan. You quickly add, "I don't need much, only a few hundred dollars, and I'll be able to get this car I saw down the street from my apartment." You make promises and tell the representative how important this is to you, because you're under the mistaken impression that the representative has the ability to make a decision. But it's not up to them, it's up to the computer.

The representative politely tells you that they don't do car loans for a few hundred dollars, they only do loans for a couple thousand. You don't need a couple thousand -- in fact, the very idea of borrowing that much is really scary to you, because you're pretty sure that if somebody gave you that much money you'd mess up with it, just like you always do, and then you'd owe a lot of money that you'd have no way of paying back.

But the representative tries to get you a couple thousand dollars for a car anyway. The computer says no: you don't have enough credit, your credit is too bad, you don't make enough, you don't have collateral. In short: you are too poor.

It doesn't matter that you're a customer. It doesn't matter how hard you're trying. It's just like all your friends say, it's what you hear all the time: banks only lend you money if you don't need it.


That was me. For years. I'm reasonably intelligent, I've never had a drug or alcohol problem. Still, though, I made a relatively simple decision many years ago, to take a vacation from the computer industry for a while and be a climbing instructor. Unfortunately, while being a climbing instructor was amazing and I'm still glad I did it, it didn't pay very much, and eventually I got into trouble with a bank.

The economy started to have trouble then (dot-com bust), my computer skills were more of a liability than an asset, and for the next several years I struggled desperately to keep my head just barely above water. I was homeless for a while.

I've got my own business now and my finances are better and I still hate banks. I love the people at my local bank, but I hate banks.

mikeash 2 days ago 0 replies      
I thought this article was fascinating and made me think about all of this stuff in a completely new way.

I'm much like the author. I bank electronically. I actually just visited a physical branch today for the first time in months because I had a big wad of cash to deposit, and mobile phone deposit technology hasn't quite reached the level of sophistication needed to handle cash yet.

My relationship with my bank is generally simple. They store my money, and occasionally pay it out or receive more. This is almost all automatic. The one thing they do that might actually involve some effort is the bill pay service, where they will actually mail a physical check in some cases. But most of the payees I have set up in their system have electronic arrangements.

When I need further service, they're good about it. They answer their phones quickly, they can overnight a cashier's check for a reasonable fee on the rare occasions I need something like that, and they'll call me if something looks like fraudulent activity. But this comes up once a year or less.

For the most part, they're basically another appliance for me. We have defined roles and we stick to them. I keep a generous pad of extra cash in the account, never overdraw, never need anything weird, and in exchange, they charge me no fees, even pay me (extremely nominal) interest, and don't hassle me.

This works great if you have the responsibility and cash to do it, but it would fall apart if I didn't. If I started cashing bad checks and overdrafting, I'd get hit with fees up the wazoo and I'd pretty much have to leave. Features that are an extreme convenience to me now, like totally automatic bill pay, would become a huge liability.

I looked at these places and thought that they offered less service. They don't even keep your money for you, after all! And they charge you for the privilege! But, to their customers, they offer more service. They offer more control over their customers' money. They offer more flexibility and less punishment when bending or breaking the rules.

It's a good lesson in not just assuming people are dumb or ignorant. Sure, a lot of people are, but when behavior is this common, there's usually a good, rational reason behind it.

I always thought that if I was poor, I'd still be "smart enough" to bank properly with whatever money I had. Now, I wonder if that really would be "smart".

I also wonder about financial regulation. I generally favor a "better safe than sorry" approach there, but this might illustrate a downside of that. We've all heard about the trouble that non-traditional companies have had with such regulations, whether it's companies like Paypal, or Simple, or Bitcoin-related businesses. They try to get around the regulations in various ways. Here, RiteCheck is getting around banking regulations by simply not being a bank. I have to wonder if they could offer better service and some of the sort of safety and savings ability we associate with normal banking if it were less difficult for RiteCheck to offer something like an actual bank account.

gregpilling 3 days ago 3 replies      
This comment on the article reflects why many people that I have met personally do not have checking accounts or bank accounts. They are worried about having money seized.

From the comment section of the article -"If you would really like to know why poor people regular these establishments I'll tell you why: it's because they keep you off the grid. I used to have a checking account too all my life. But after I lost my job, even though I'm a fulltime single father, the "child extort" kidnappers levied my checking account several times. They just took money at will no questions asked. There was no rules stopping them and nothing I could do. The Sheriff of Nottingham might as well been barging in me and my daughters tiny apartment and stealing all of our shillings. So after the "child extort" agency did this 3 times, I shut down the account. And from that moment forward I just began to live off the grid using cash and money orders. "

Amadou 3 days ago 2 replies      
This article validates one my key beefs with "big data" - databases (like chexsystems in the article) remove slack from the system. Humans need slack and only humans can provide slack.

In the short term that may seem like a good idea, removing slack appears to increase efficiency. But in the long run it is socially destructive -- we are all people, not just numbers and reducing us to numbers ignores much of the realities of life. When you can't take into account the realities of life, then the imperfect systems that the databases model as perfect fall apart.

belorn 2 days ago 5 replies      
While the alternative financial service providers is taking the road of improved customer service, the banks are going the other way.

In Sweden, most ATMs is set at a maximum withdraw of 100$, while a few is set at $300. The bank itself also adds additional restriction of maximum $2000 per week. If you want to withdraw more of your own money, you have to ask permission and give a reasonable explanation why one is taking out "that much cash". Only if the bank approves of your reasons to withdraw money will you be able to do so.

All withdraws are of course logged, stored, traded and given away for inspection. I can also be held, for any reason the bank can think of or from outside pressure (like the Wikileaks visa scandal).

I fully understand why more and more people chose to avoid banks. Banks are services. If you voluntary give away your money to be owned and controlled by a third-party, they will indeed do so.

corrected: month -> week

rayiner 2 days ago 1 reply      
I'd imagine another reason is they need the certainty of having their money be there. My wife had an account she didn't use since college, and apparently she fell below a balance limit and they charged a $5 fee, which overdraw her and turned into a $35 overdraft charge. Inconvenient for us, potentially a disaster for someone scraping by.
saurik 2 days ago 2 replies      
I am not buying this; I agree that poor people not using banks is an issue, and I appreciate a number of interesting reasons why this is the case (the list iterated by patio11's comment is amazing): I do not, however, think it is because banks are turning into impersonal institutions with which you never interact with a person.

Sure: this author doesn't generally interact with her bank. She doesn't see the need to, so she isn't choosing to; but, the bank she is using does have a branch she went to, and if she actually went there at all often the people there would get to know her. The building might be "impersonal", but the people are still people.

This doesn't even just apply to small banks (a friend of mine has always used local banks): I use the Bank of America, and almost everyone at my local branch knows me because I go there often and actually talk to them. I seriously look forward to making a wire transfer because I enjoy the interaction with the people I know there.

Corporations with local offices are still made out of people; like, while I prefer automated payments, if I end up in a situation where I need to write a check, somehow that's on the other side of "I may as well drive to your office and hand-deliver it"; this meant for a long time I even knew the people who worked at my car insurer ;P.

Geee 2 days ago 6 replies      
Why is it exactly that online wire transfers aren't used in the US? As an European, I've not been in a bank since the 1990's, and never written or cashed a check. On the other hand, it's impossible to live without a bank account here. Your bank account is the only place you get paid to, whether it's salary or social security money. Also, you need it to pay your bills or transfer money to your friends.
blahedo 2 days ago 1 reply      
When I read an article like this, I'm always amazed that more people haven't discovered credit unions. Most of the objections that the article raises about "banks" are objections that I have too, except that they're really about "big (multi-)national banks". My experiences with credit unions have been much more in line with what the author describes about the check-cashers. On one occasion there was an incident involving a mis-typed amount in an online transfer, basically all my fault, but everybody was on my side and it got resolved quickly and easily---and all over the phone, as I was several thousand miles away from home at the time!
jlgaddis 2 days ago 1 reply      
A friend of mine works at a gas station in my hometown (a fairly low-income, rural city, pop. ~4600). After seeing him post Facebook statuses such as "Oh boy, it's the 31st and I get to work tonight" (in a sarcastic tone) a few times, I asked him about it.

He tells me that on the last day of every month, there are a number of people who come to the gas station starting as early as 9 p.m. and simply "hang out". They wander in and out of the store but mostly linger in the parking lot, chatting with others in their large group, and simply trying to entertain themselves, in general.

Naturally, I asked him why they would do this. Apparently their government "checks" are now "deposited onto their card" (a debit card, basically) at exactly midnight on the 1st of every month. They know that at 12:01 a.m. on the 1st, their money will be available and so they hang out at the gas station in anticipation of being able to load up on cigarettes, basic groceries (more expensive than a typical grocery store, of course), lottery tickets, and such.

byuu 2 days ago 1 reply      
When I was 19, I tried to open a checking account. Amazingly, I was declined. For a bank account. I didn't ask for credit, in fact I had no credit history at all. I was apparently so unworthy that they didn't trust me to give them my own money. I never understood that, as I figured they'd just bounce a check anyway if I lacked sufficient funds.

I'm much older now, and have a bank account, mortgage, credit cards, and all that jazz. Just a silly anecdote that it's actually possible to be too poor to be allowed to have a bank account.

rdtsc 3 days ago 2 replies      
I can understand this. My mother in law was sick for a while and in a hospital for a few months. During that time she was late on one of her mortgage payments, which she as been faithfully paying for 2 decades. She also took an equity loan to remodel her house. Because of the missed payment they cancelled her equity loan. She went to the bank to talk to them hoping they would understand, but all he heard was how his "hands were tied". She tried telling them she was a customer for years, she had a number of accounts with them, mortgages, car loans from the past, she even paid extra on her mortgage payments often. She explained her medical condition hoping they would understand, but all to no avail. He kept hearing about how all these rules and triggers are automated in the "system" and nothing could be done.

She lamented the time when banking was a personal experience just like the article wrote. You went your teller, you'd known for years, they'd ask about your kids. The manager migth know you, might send you a birthday card and so on. I can see how she would be a person willing to pay $5 per check just to get back that personal touch.

The article also touched on this, but many people who are poor also don't happen to see a lot of human kindness, sometimes fake customer service kindness is better than nothing, they don't even mind paying extra to get it.

bluedino 2 days ago 0 replies      
Don't forget that in poor areas, there aren't many banks. When you're in the suburbs there's a bank on every corner. Even trying to find an ATM in the part of town I work in can be a challenge. They recently built one and it has so many lights an mirrors around it, it seems a bit silly.

I'm not sure what the banks use to determine whether they open/close a certain branch. Everyone jokes that 'The First National on MLK Boulevard got robbed twice a month so they shut it down', but I'm sure there's some real process with population density and more importantly, income density.

When you cash your check at a liquor store, two things happen - you end up buying things like food for your family (as well as beer + cigarettes + lotto) and they take a % cut. The bank doesn't have anything for you to buy and they don't take a cut.

This also means the poor can't pay their bills online. Again, in the bad side of town on Fridays and on the 1st and 14th of the month, there are massive lines outside the power company, city water department, and cable company. Everyone's standing there waiting to pay their bill in cash. While the rest of us pay everything from our smartphone or have it directly taken out of our accounts, they're spending two hours in line during the day.

guelo 2 days ago 1 reply      
Banks have been continually inventing and raising fees on unsuspecting middle-class customers for decades. I wouldn't be surprised if banks made more fee revenue per customer than check cashers.
a3n 2 days ago 0 replies      
To all those who state that it's irrational to be non-banked, remember two things:

1) Just as all the world is not a Vax, all the world is not you and your circumstances and acquaintances and anecdotes.

2) as the article briefly touches on, many people simply cannot get a traditional or even minimal/basic bank account because of entries in ChexSystems. These entries may be correct and current, or they may be old, or inaccurate, or not reflective of current circumstances. And banks are only too happy to outsource the expensive process of judgment and "knowing their customer." No banker ever got fired for following ChexSystems' recommendations (I assume).

sdolan805 2 days ago 1 reply      
My friend had $150k in his bank account that was taken by the IRS while they were still in negotiations on a huge tax bill. No notification, no nothing. He only found out after he was trying to buy groceries and his card was declined.

After it was all said and done he ended up owing the IRS ~$14k and they gave him a check for the difference, but it took months to get it all sorted out.

I lent him some money to get him through it, but what if he didn't have a friend to do that? He'd be kicked out of his apartment and starving.

Now he doesn't trust banks (not that it's the necessarily the banks fault). He keeps around a thousand in his bank for emergencies, and keeps the rest in cash (at an undisclosed location :)).

It goes to show that even people with a reasonable amount of money have reasons to keep their money out of banks.

antoncohen 2 days ago 0 replies      
For those in San Francisco the city/county government has setup "Bank on San Francisco" to help people use regular banks instead of check cashing places. They have partnerships with banks that allow people to get bank accounts even if they have had trouble in the past. http://www.bankonsf.org/

Bank on SF also has a small dollar loan program called Payday Plus SF. Their partners offer payday loans at reasonable rates (max 18% APR). http://paydayplussf.org/

I know they don't address a lot of the issues the article brought up, but they could be useful for people in certain situations.

rm445 2 days ago 2 replies      
This article has a lot of fluff and before getting to the point. It just seems unlikely that the success of these shops that provide expensive financial services to poor people is all down to the human touch. I see friendliness in the report but not much in the way of personalised service (just the lady with the payment plan).

The benefits of paying a percentage to get your money a couple of days earlier are clear enough. But the avoidance of overdraft fees may be the key. When paper cheques have had their day and every non-cash transaction is software talking to a bank server, there will be no need for unarranged overdrafts to exist for every bank account. Accounts that carry no risk of unplanned fees would be a disruptive innovation, given that retail banks seem very addicted to the profits from overdraft fees.

wavesounds 2 days ago 1 reply      
TLDR: Check cashiers have better customer service and (anecdotally) less stupid fees.
omnisci 1 day ago 0 replies      
So this woman spends some time in a cash checking place and now knows why "poor" people don't use banks?

Poor people don't use banks because you don't need a bank when you live check-to-check. One doesn't need to make a deposit when the check they just got doesn't cover their expenses from last month. So her concluding statement of "the banking industry needs to develop different fee and service structures designed to accommodate lower income depositors "makes no sense.

It's not a choice, it's not like people are like "Hmm, well I could deposit my money and make 0.5% back next month", it's more like "shit, I'm behind on my gas bill and can't have my family freezing again this winter."

The fact that the teller at the check cashing place is like "family" and they speak spanish isn't really a reason why the poors go there, it's because they don't have a choice.

As an former academic who made it out of the poverty system with some serious work and lots of scars to prove it, this article really pisses me off. Not only due to it's lack of perspective, but due to it's lack of due diligence to actually answer the question they claim to answer in the title.

aperture 2 days ago 1 reply      
Currently, I'm interning at a well known banking wealth management company, and I find the rich like to have the same environment.

Birthday cards, get well soon cards, calling the client and asking how they are, helping them with last minute account stuff (like making their visa have a higher cap so that cruise trip can be insured).

I think a lot of banking should be like this. I doubt it ever could be, as most banks have very few people, but specialized areas, like this rite-aid, or some wealth banking, have the time to dedicate to these people.

Treating people like people, whether it is restaurants, or banking, or anything, makes a business less like a service and more like an experience. It should be something a lot of startup companies on hn should look into.

EwanG 3 days ago 2 replies      
So basically the check cashers have become more like banks, and folks who are short on human interaction value that more than the extra couple bucks a monolith that pushes you to an ATM (that may charge you extra for your withdrawal as well) costs.

Wonder if any banks will see this as a proper wake up call...

qwerta 2 days ago 0 replies      
Maybe it is because the services sucks as well. American banks are decades behind Eastern Europe, Russia or even Africa.

Just basics: account where 'overdraft' is not possible (account can not go into minus). Debit with low (5%) interest can be arranged separately .

My bank had mobile banking in 1999 (simtoolkit & SMS). In 2002 mobile banking become free!

Credit card fraud? How about white-listing expected transactions over the internet? How about setting up your own filters?

nell 1 day ago 0 replies      
This might be the right place to ask:

Can I simply lend money on my own? setup my own site. People request for loan and I choose whom to lend money to. Kinda micro financing. How easy it is to do that?

I want to do something like $1000 @ a flat 5-10% p.a

What are the risks? Is defaulting a big issue?

elnate 2 days ago 1 reply      
Reading this it sounds like there is a non zero minimum amount you're allowed to have in your bank accout. Is this true? I've never heard of such a thing in my country.
RexRollman 2 days ago 1 reply      
That's why Walmart has jumped into this. There is a lot of money to be made.
innino 2 days ago 0 replies      
Shit articles like this make me feel lucky. I don't come an extremely wealthy background or anything but reading this sort of stuff makes me feel like a life-assets superstar. I have to say it makes me appreciate my bank/national banking culture:

1) I can ask for an overdraft limit of up to $2000, which if I draw into I pay a $3 monthly fee for.2) I have a credit card which I can easily ask for a limit up to $5000 if I ever need that sort of temporary cash (I don't.)3) Everything is done with banking cards here - balances update automatically, only credit cards have weird lags with responding to transactions.

Recently I dropped my OD limit to $200 to try and improve my financial hygiene. I didn't watch my transactions and a small weekly automatic payment pushed me past my arranged limit. Talked to the bank and they explained in that case I would pay one $15 fee per month for any number of unarranged ODs. Seems pretty lenient compared to the American situation... but they never charged me the fee anyway!

bgilroy26 3 days ago 1 reply      
It's a tough situation, it has a lot to do with momentum. If these check cashers had profitable local ventures to invest in, they could hold deposits and pay out interest.

Because there isn't a lot going on in the area, a deposit/commercial bank isn't interested in the area and in turn, business people in the area do not have as many local sources of capital.

In place that need it, entrepreneurship would lead to a rise in saving.

RougeFemme 2 days ago 0 replies      
I've never been with a traditional bank, even though I've always been able to afford it. I prefer credit unions. I can get all of the "bank-like" services that I need at a credit union and I have the satisfaction of knowing that I'm not further enriching a bank CEO.
morgante 2 days ago 3 replies      
The meat of this article, hidden underneath all the fluff, is simply that fees are higher and poor people end up paying more of them.

Honestly though, they probably deserve that. I've never in my life been charged an overdraft fee because it doesn't take much to just track the payments you make and never go over.

Of course, an inability to plan is probably why they're poor in the first place...

The Banality of Systemic Evil nytimes.com
266 points by Maakuth  6 hours ago   100 comments top 13
kijin 3 hours ago 10 replies      
> David Brooks made a case for why he thought Snowden was wrong to leak information about the Prism surveillance program ... For society to function well, he wrote, there have to be basic levels of trust and cooperation, a respect for institutions and deference to common procedures. By deciding to unilaterally leak secret N.S.A. documents, Snowden has betrayed all of these things. The complaint is eerily parallel to one from a case discussed in Moral Mazes, where ... the complaint against the accountant by the other managers of his company was that by insisting on his own moral purity he eroded the fundamental trust and understanding that makes cooperative managerial work possible.

Welcome to the hyper-individualistic, hyper-critical, post-communitarian world, where neither tradition nor any existing social institution is taken for granted. Everything is now open to critical scrutiny, and nothing that fails such scrutiny will receive anyone's respect. Gone are the days when "institutions", "common procedures" and "cooperative managerial work", for example, were universally agreed to be valuable things in themselves. Now they need to prove their own worth, or else. Because if they have no intrinsic moral worth, you can't blame others for eroding them.

I don't know whether there really is such a thing as Generation W, but if Snowden and Swartz are its holotypes, then I have rather high hopes for it. Not because I expect a whole lot of whistleblowing in the foreseeable future, nor because I think they're particularly interested in politics (they probably aren't), but because they're probably the first generation to ascribe absolutely no intrinsic moral worth to the "System" in "Systemic Evil".

The System, whether it's a corrupt industry, a corrupt three-letter agency, or your country, has finally lost the romantic halo ascribed to it by traditional assumptions. It has revealed itself to be just another social convention with some (in fact, lots of) instrumental value but zero intrinsic value. The baby boomers, of course, also had their moment of subversiveness in the form of the civil rights movement. But the U.S. in the 60s and 70s was affluent and egalitarian enough to leave them with lifetime jobs, nice suburban homes, and enough money to watch Fox News on their four-foot TVs for the remainder of their retirement. Those perks are now gone, and with it the last traces of the System's romantic halo. All that is left is a rotting social infrastructure with questionable instrumental value at best.

So perhaps for the first time in human history, a large number of people are now mentally prepared to judge the "System" solely on its instrumental value. Instead of asking whether or not their actions will help preserve the System, people can now honestly ask whether certain portions of the System are worth preserving in the first place. Gen W is like the theoretical physicist in that famous story who, when asked how his research contributes to national defense, replies that his research makes the nation worth defending. Only sometimes, it might not be worth defending. Or perhaps even worth destroying.

It is no surprise that the Obama administration has a reputation for prosecuting more whistleblowers than (nearly?) every other administration before it. Previous administrations had no need for massive prosecutions, the population behaved itself. But the population won't behave anymore. The only psychological bias that kept them at bay has dissolved away, and I suspect that it's gone for good.

And like a lot of people who have warm fuzzy feelings about Snowden, I think that this quiet but irreversible change in humanity's sociopolitical lookout will turn out to be a Very Good Thing (tm) in the long term. Another superstition trampled under the relentless feet of reason.

tptacek 38 minutes ago 3 replies      
Manipulative. For instance:

* The article's entire coverage of Manning revolves around a single incident involving the detention of 15 Iraqis. But that's not all Manning did, despite the wording of the article. Manning fell afoul of the law by haphazardly collecting and releasing to a stranger on the Internet far more documents than any person could possibly have reviewed, many of which had no public interest implications.

* The article cites the case of Jeremy Hammond, convicted for hacking and dumping Stratfor. Ludlow famously supports Hammond's actions. But Hammond didn't leak secrets he knew were in the public interest. He picked an organization whose politics he disagreed with, attacked them, and helped circulate the credit card numbers of its subscribers to the Internet. The clear message being sent by Hammond's inclusion in the article is that he is of a kind with Manning, Snowden, and Swartz. The only thing his case has in common with the others is that they they share some of the same political motivations.

* The article does the same thing with John Kiriakou, asserting as axiomatic the idea that Kiriakou was motivated by the public interest. But Kiriakou didn't become a "whistleblower" until that label became convenient to his defense, after it became apparent that his conversations with journalists, which related to a book he was selling, had outed an agent who had been in deep cover for over 20 years.

I'm left with a disquieting conclusions about the way proponents of Ludlow think: so long as the accused share your politics, it's more important for society to empathize with their motivations than with their decisions and actions. That's what people who blow up abortion clinics think.

I'm also a little worried about the phenomenon of generating public support for any mass leak by working with the media to promote those leaked documents that are most interesting/entertaining/important, while working to thwart any effort to evaluate the impact of the leak as a whole. Call it "Greenwaldism", which feeds a careful drip of calculated outrage and then harnesses it to attack anyone who points out any accompanying documents that might have caused harm by their disclosure.

tokenizer 4 hours ago 5 replies      
How about we try to get to the core issues of this systemic risk of authoritarianism and repression, and look at:

Ageism: Why can't younger people vote? Because they don't have valid opinions? Some adults don't have valid opinions. This seems to affect our dramatically in our modern era, as many of our older folks are still around and skewing the generational differences towards conservatism.

Classism: Why do we feel it necessary to have a political class at all? Bush Sr., Mr. Clinton, Bush Jr., Obama, (Ms. Clinton?). To me, it feels weird even asking these people to have differing views. They're all apart of the council on foreign relations (https://en.wikipedia.org/wiki/Members_of_the_Council_on_Fore...). Control+F either Clinton or Bush. This in my opinion, is why we won't change any neo-con/neo-lib policies anytime soon. Expect less worker rights, more outsourcing, more free trade, more deficits, and more protection of institutions deemed too big to fail (impossible in classical capitalism but not the crony kind).

Apathy: The US has killed many people in Iraq since 2003. If you crunch one version of account, it works out to 16 people every day, for 20 years. Yet most Americans are more concerned with their own internal matters. This seems like it could be extended to anything being committed outside of the US to other humans, including torture, enslavement, anything. The American people have already shown that if their bellies are full, then it doesn't matter how many people their government kills. How can anyone fix this?

Anyway, this to me seems like the major hurdles we all need to get over...

detcader 2 hours ago 0 replies      
Skimming the article I see no mention of COINTELPRO, of which these programs are no doubt a continuation of at least spiritually. This would make sense given that this is the NY Times, and bringing up COINTELPRO would perhaps force them to admit racial/xenophobic dimensions and roots to these recent revelations (e.g. the USG's history of targeting civil rights and anti-war activism), instead of white guys fighting for other white guys' iPad Privacy..

>Swartz argued that it was sometimes necessary to break the rules that required obedience to the system in order to avoid systemic evil.

That paragraph would have been a perfect place in which to touch on the Church Committee and its origins. Does the author even know about it?

Honestly, most people with social power and influence don't seem to care about the revelations because they don't. They have nothing on the line -- their rights will never be threatened, nor will government programs like the endless War on Terror ever affect them (in ways that they will understand; "blowback" is evidently too intricate of a concept for most). Could that be because they're white men? Perish the thought

ck2 5 hours ago 2 replies      
I was reading up on Jeremy Hammond as I knew less about him and this caught my eye:

The judge's husband has an email address released in the Stratfor disclosure and works with Stratfor clients, but the judge refuses to recuse herself (while threatening Hammond that he faces a life sentence).

Unmitigated gall.

EGreg 37 minutes ago 0 replies      
This is why we have checks and balances between three branches of government -- to make sure no one branch gets too much leeway to get disconnected from what everyone else thinks is ok.

Similarly, people set up governments for societies but they also have a culture, and an idea of what is "beyond the pale". An insular culture can slowly become disconnected from the rest of the people, even in government which gets feedback through voting and other limited means. Thus, individuals possessing a "moral sense" who are hired to work in the government may in fact engage in whistleblowing. Governments recognize this and many offer limited protections to this activity. Of course, if they are too far gone in how much they disconnect from the people's preferences, then they might seek to screen heavily when hiring new people, to make sure they don't have this "liability". And thus make themselves even more insular.

At the end of the day, SECRECY is the source of many of the problems. Secret laws and secret courts like FISA which sometimes complain that they are being lied to by the executive branch -- but only during fortuitous court case does it even come to light. Or this: http://www.theatlantic.com/politics/archive/2011/10/the-secr... ... nothing changed in the last two years. I am a liberal and I really liked Obama, but I despise his administration's stance on secrecy, and foreign policy, because it sets a terrible precedent.

Compare: http://www.whitehouse.gov/the_press_office/TransparencyandOp...

washedup 43 minutes ago 0 replies      
"Systems are optimized for their own survival and preventing the system from doing evil may well require breaking with organizational niceties, protocols or laws. It requires stepping outside of ones assigned organizational role. The chief executive is not in a better position to recognize systemic evil than is a middle level manager or, for that matter, an IT contractor. Recognizing systemic evil does not require rank or intelligence, just honesty of vision."

It is natural for ALL systems, whether a political organization, company, terrorist organization, and even biological entities, to fight change and keep the system in tact. We are now at a point where we can critically assess our social organizations from a humanistic perspective and ask if they are really adding value or not.

It is very, very exciting. Also scary.

coldcode 1 hour ago 0 replies      
Plato said "The penalty good men pay for indifference to public affairs is to be ruled by evil men."
mark212 5 minutes ago 0 replies      
You'll forgive me if I don't put reading someone's email on the same moral plane as the premeditated murder of 12 million people during the Holocaust.
nl 4 hours ago 1 reply      
I think this is a very powerful & well reasoned piece.

I have a feeling that many of those who should read it will be unduly distracted by the gender issues around Manning.

anandabits 42 minutes ago 0 replies      
It's nice to see discussion in mainstream media applying Arendt to the policies and practices of the United States. I've been talking about this for some time now.

Spreading awareness of how institutional behavior can lead to evil actions is extremely important. We have learned a lot about power, evil, oppression, etc since the structure of the modern democratic state was created. We can and need to do much better.

DanielBMarkham 3 hours ago 6 replies      
You have to be very careful here about the argument that you're making.

If you're effectively saying that any individual has free reign to do whatever they desire with trade secrets, sensitive diplomatic information, and whatnot because of a moral injury they may feel the system is giving them, then you've effectively destroyed any form of organized human activity that involves trust or secrets.

Here's why: people get morally offended at all kinds of bullshit. It's totally dependent on the individual as to what pushes their buttons.

So yes, good people in bad systems do really bad things. Lots of Nazis were working boring jobs as part of the system that exterminated millions of people. But as a society we generally do not hold these people accountable for such actions. After WWII most of those folks kept right on working boring jobs, this time rebuilding the country instead of operating concentration camps.

Whether or not those people are supposed to feel guilt or revulsion at their own actions is a moral question -- a question between each of them and their own standard of what the universe expects of them. Confusing personal decisions with public ones is a good way to muddle your thinking.

twoodfin 5 hours ago 4 replies      
Notably missing from this piece: An argument that valid responses to perceived abuses include massive, indiscriminate data dumps, repeatedly bypassing MIT's network access controls and/or taking laptops full of classified information to Moscow.
Chilling legal memo from Obama DOJ justifies assassination of US citizens theguardian.com
261 points by devx  10 hours ago   131 comments top 17
grey-area 8 hours ago 3 replies      
Let's consider a specific example:


The missile killed him, his teenage cousin and at least five other civilians on Oct. 14, 2011, while the boys were eating dinner at an open-air restaurant in southern Yemen...The attorney general, Eric H. Holder Jr., said only that Abdulrahman was not specifically targeted, raising more questions than he answered.

The people killed in this attack were either killed by mistake, or because they were nearby someone considered a target, eating at a restaurant. Because the reasons for killing were secret, if the president decided to include some of his enemies or political enemies of allies in Yemen, made a mistake, or was given false information, it would never be known, because the list is secret. We don't know why or even who was targeted.

In war we accept assassinations, murder without trial, and mass murder, because people are fighting for survival. But even in war only enemy fighters should be targeted, and civilians should not. We have a whole list of rules of war which are being ignored, and this is not even a formal war - war has not been declared, uniforms are not worn, so the rules of war do not apply, but if they did, they are being broken.

We find ourselves in a very murky area where the US is at war with an undefined and secret enemy, who may be anywhere in the world, and lives amongst the civilian population. The reaction of the Obama administration has been to order assassinations from a secret list, also killing any civilians nearby. There is no trial, no charge, and no suspicion, just a decision to kill and an attack, wherever the target may be. This means the president and his advisers have arrogated the power to decide on life or death for anyone on the planet, without limitation in time or space, and without justification or warning, and also killing civilians nearby.

The implications of this are that this war will never end, the targets are everywhere, and the list of enemies will continue to expand in secret. Nobody is safe, because anyone might be standing next to someone on Obama's list at some point, and the general terror and hate instilled by these methods will continually generate new enemies. The Obama administration has adopted terror as a method of war - they have become what they set out to fight.

miles 10 hours ago 4 replies      
For those who regularly ask why these stories appear on HN:

The president's underlings compile their proposed lists of who should be executed, and the president - at a charming weekly event dubbed by White House aides as "Terror Tuesday" - then chooses from "baseball cards" and decrees in total secrecy who should die. The power of accuser, prosecutor, judge, jury, and executioner are all consolidated in this one man, and those powers are exercised in the dark.

This should be daily news everywhere until it is addressed and we start scaling back the War on Humanity. This is simply not how America is supposed to work.

alexeisadeski3 10 hours ago 7 replies      
In the US, laws against assassination and extrajudicial killing make no distinction between American citizens and others: Foreigners have the exact same protections as citizens. This goes for the Bill of Rights as well. (Aside, this explains why the NSA is only "supposed" to spy outside of the US. Wether the target is a citizen or not is technically irrelevant on this particular point)

If you accept that the US is in a war with Al Qaeda, then it is in no way surprising that the US government would then attempt to kill members of that organization. And, again, whether the members are American or not is quite literally irrelevant.

However, if the targeted individual is physically located within the US, then the US government is generally supposed to arrest them instead of assassinate them - and again this protects foreigners and US citizens alike.

aurelius83 9 hours ago 3 replies      
The other day several american muslims strapped a bomb onto themselves and killed themselves and many innocent people in a suicide attack in Kenya.

If there were actual legal mechanisms built into the US constitution or laws created that dealt with fighting an asymmetrical war with people like this then I really doubt the President would go through this process, but that's not the case.

I'm not really sure how we should handle this but this isn't some evil plan to grab more power by the Obama administration, it's an ad hoc solution to a really difficult problem.

adamnemecek 9 hours ago 1 reply      
Feels like some sort of line has been crossed.
ck2 10 hours ago 1 reply      
It's legal when WE do it - The Government
shortcj 44 minutes ago 0 replies      
The sad fact is that 99% of people just don't understand the concept of 'rule of law.' They think it means 'rule of the law man.'
_s 9 hours ago 0 replies      
What can a non-US citizen do? What can a US citizen do?

I don't mean this in a sarcastic or confrontational manner at all, but it is a genuine enquiry - other than raising awareness of such issues to the voting public and donating to foundations such as the EFF - what more can an average Joe do to prevent / reel back these reaches and abuses of power?

MysticFear 5 hours ago 0 replies      
> (2) capture is infeasible

I am not sure how they can even justify how any capture can be infeasible. Since, the US clearly found capturing Osama Bin Laden to be feasible even within an allied country.

Mordor 2 hours ago 0 replies      
They are so fond of telling us, "If you've got nothing to hide, you've got nothing to fear."

What does Obama fear?

hrasyid 9 hours ago 4 replies      
How to respond to this kind of argument: We don't need to give "due process" to enemy soldiers before we kill them. How are al-Qaeda members different?
jeroen94704 3 hours ago 0 replies      
Yes, this is bad, as everybody has a right to a fair trial.

However, I think it is _far_ worse that it is EVER, in any way, shape or form, deemed acceptable that innocent bystanders get killed in order to get rid of a single individual, no matter how horrible their acts may have been.

It is frankly appalling that people get all upset about the fact that the target in question was a US citizen, and blatantly ignore the addition that "at least five other civilians" were killed in the same attack.

CmonDev 2 hours ago 0 replies      
It's funny how they used "US citizens" instead of "people".
maxcan 9 hours ago 0 replies      
"A government is a body of people, usually notably ungoverned." - Malcolm Reynolds, Firefly
devx 9 hours ago 0 replies      
What bothers me most about what the government has been doing lately (for the past decade or so), is that they seem to have total disregard for the spirit of the law. All they do nowadays is try to find legal loopholes and mind-bending justifications for doing anything they want and pretending that anything is fair game and in the "legal limits".

I'm not sure what even the Courts can do against this, because this trend from the government and authorities is so overwhelming and they're doing it so much, that the Courts would really be fighting a very tough uphill battle, while the government gets away with so many things they pretend are "legal" for many years.

ad80 4 hours ago 0 replies      
And he got a Nobel price... it sounds like an terrible joke.
Fuxy 5 hours ago 0 replies      
Heil Obama!
iMessage for Android play.google.com
255 points by robbiet480  11 hours ago   179 comments top 46
saurik 9 hours ago 6 replies      
I believe that this application actually does connect to Apple's servers from the phone, but it doesn't then interpret the protocol on the device. Instead, it ferries the data to the third-party developer's server, parses everything remotely, figures out what to do with the data, and sends everything back to the client decoded along with responses to send back to Apple.

Doing it this way means that Apple can't just block them by IP address, it avoids them having to distribute their "secret sauce" (understanding the iMessage protocol is clearly very valuable), and it potentially allows them to use actual Apple code on their servers (in case they haven't spent the time to fully break the fairplay obfuscation that Apple is using for some of their keys).

Here's what I'm seeing: every time I send it a message, I get a packet from Apple, and then immediately the app sends a packet of almost exactly the same size to (which is listed in this application's APK as "ServerIp"). It then gets back two packets from the Chinese server, the first of which I'm presuming is the decoded result and the second packet being a response to send Apple (as immediately a packet is sent back to Apple with about the same size).

Additionally, if you read the reviews of this application, the author is making some very weird responses to people with login issues: he's asking for their Apple ID, as apparently that's enough for him to debug their issue. That shouldn't be possible if the application is just directly talking to Apple the entire time.

[edit: The more I stare at this, the more confident I am in this analysis; specifically, the packets that are "about" and "almost exactly" the same size are very deterministic: the packets to/from Apple are precisely 7 bytes larger than the corresponding packets to/from the Chinese server.]

[edit: It also occurred to me to verify the other direction: in fact, if you go to send a message, first the client sends something to the developer's server, which then returns a packet which, along with again the exactly 7 extra bytes, is sent to Apple's server.]

antirez 8 hours ago 6 replies      
This remembers me how an interoperability fiasco iMessage is. Just for the interoperability issue many iOS users are slowly switching to Whatsapp: you start using it to message your Android buddies at first, then eventually you want to just use a single app... the limiting factor for iMessage to be dismissed completely by some user is the fact that there is no way to message iPad users from Whatsapp, something they should fix IMHO.
lawnchair_larry 5 hours ago 2 replies      
The prejudice here is amazing. Has no one here ever made a free app? Has anyone heard of Linux? Is it possible that out of all the people in China, at least one talented developer just thought that this would be a fun project that they could contribute?

I still don't recommend allowing your conversation to be MITM'd, but the assertions that China = steal your password and charge your CC are a bit crazy. Propaganda works I see!

dcope 10 hours ago 7 replies      
This is actually talking directly to the iMessage service. It's hitting https://service.ess.apple.com:443 (and https://service2.ess.apple.com:443 when authenticating) and not being proxied through any third-party servers. That being said, it does look like the app reports basic analytics but nothing sensitive.

This is truly impressive!

anologwintermut 9 hours ago 2 replies      
Does this mean someone actually RE'd the entire iMessage cryptographic protocol. I know of several people who have wanted to analyze it.

If so, if they or someone could put up the source or even a protocol spec, that would be amazing.

ChikkaChiChi 1 hour ago 0 replies      
Fellow Americans, take your snakeskin boots off your redwood desk, adjust the brim of your stetson hat, and shift the piece of grass you are chewing to the other side of your mouth; what I'm about to say is important:

Classifying and stereotyping (even in a passive-agressive sense) is a relic of the past you need to get over.

aaronpk 10 hours ago 1 reply      
This is going to get shut down so fast from Apple, which is kind of sad given the amount of work that must have gone into this!
matthew-wegner 10 hours ago 0 replies      
As a hackintosh user, I hope the blast radius on Apple's response doesn't kill iMessage here too...
plg 8 minutes ago 0 replies      
at what point does Apple deploy their lawyers
jessedhillon 7 hours ago 0 replies      
Somewhat unrelated -- SMS seriously needs to die.

Any phone carrier call center employee can check your inbox, supposedly that's an audited procedure but having worked in a call center I would tell you that I'd believe that nobody's watching anything. Just like email, SMS is a poor protocol/medium that has been contorted to doing way more than anyone ever intended originally.

But there is definitely a need for a commodity, cross-platform secure messaging protocol that can be implemented by anyone. It hardly seems like there's anyone incentivized to do that though -- why would Apple, for example, want to ferry traffic to/from non Apple phones. And why would they want to step aside and let someone else replace their seamless, secure-ish messaging experience with something else? None of the other messaging apps can achieve the level of integration with the rest of the phone that iMessage can.

The mere facts that iMessage is a) so good (integrated so well into the OS by way of unfair advantage) and b) closed, are probably sufficient to make sure that there won't ever be a common, secure messaging platform. It couldn't penetrate far enough into the iOS user base even if every Android user installed it.

nl 10 hours ago 1 reply      
Funny how a small app like that can destroy all the hopes a multi-billion dollar company like Blackberry put in their stay relevant by rolling out BB Messenger to iOS and Android plan.

Assuming Apple doesn't kill it of course... There are some good reasons why Apple shouldn't kill it (network effect work both ways) but who knows what they will do.

37prime 10 hours ago 2 replies      
Sounds great, but Im still worried because this App might hijack the Apple ID and password. If I remember it correctly, Apple does not publish their Apple ID API outside of iOS SDK.
NamTaf 10 hours ago 2 replies      
Is this actually running on Apple's iMessage protocol or is it just duplicating/imitating it? That is to say, if you 'iMessage' to an Apple device, does it come up as an iMessage on that device?
buzzedword 1 hour ago 0 replies      
Has anybody else here forgotten you're passing on your Apple ID and password here in cleartext? There's a lot of information you can grab with that, and let's just assume that this guy also puts an app out for IOS-- and buys it with your account.

Seriously? Not to mention all the data that can be mined from your associated messages. And for argument's sake, since, again the passwords are in cleartext, let's just say that a small percentage of users also use the same email and password for their Facebook or their Gmail (or whatever else email they have) -- let's just brute force some bank accounts, send a forgot password request, then scour their facebook for the security question. Nightmare scenario, but considering you're passing some random guy in china all this information, not entirely infeasible.

aufreak3 2 hours ago 0 replies      
At first, when I read the post's title, I thought Apple had created iMessage for Android and put it up on the Play store. Now, that would be a really big deal because that would mean that Apple finally gets that communication is between people and not one family of computers. The current Apple attitude to communication and sharing (like PhotoStream) is akin to a telco saying you can only call other users on their network, or Google saying you can only send and receive emails from other gmail users. Apple finally getting communication would be a really big deal.

I saw, to my great disappointment, that the program was not Apple's.

habosa 9 hours ago 0 replies      
This is really awesome. They should release the method, although obviously there is some value in their not doing so. I'm sure Apple will change the iMessage endpoint to kill this, but that's a cat-and-mouse game they'll lose with the dev community in the long run. If this is a true reverse engineering of the iMessage protocol, this will be very hard to shut down.
tuananh 10 hours ago 0 replies      
I don't dare to try an app like this!

Good work on reverse engineering the protocol though.

unknownian 10 hours ago 0 replies      
It would definitely seem less shady if the dev didn't copy iOS UI and icons. Still I downloaded it and hope to test it.
zarify 10 hours ago 0 replies      
Regardless of whether it'll disappear from the Play store quickly or not this is kinda cool. Hopefully it means there'll be a FOSS implementation of this at some point and we can get other Linuxy stuff talking to iDevices.

(If there already is one I'd love to be pointed at it, I've done some searching previously trying to get a nice solution for getting scripts at home communicating with me - I eventually settled on using push notifications with Prowl http://www.prowlapp.com/)

eonil 5 hours ago 0 replies      
Before of all, using of the trademark iMessage is enough to get lawsuit from Apple lawyers.

Also, it's sure that they are intentionally copying Apple's copyrighted material.

consultutah 10 hours ago 2 replies      
Sadly this will probably be shut down by morning since it didn't come from Apple. What Apple should, but won't do, is buy it and release it for free themselves. But then Apple would have to admit that there just might be another AppStore in the universe and their reality distortion field might show a small dent.
k-mcgrady 5 hours ago 0 replies      
This will surely be pulled very quickly. For a start it's using the name iMessage. Secondly this is a big selling point for iDevices. Apple gets no benefit from it being available on other platforms.
moystard 5 hours ago 0 replies      
Even though the technical achievement is really impressive, the iOS6 design just looks out of place. It simply does not look right, it's a shame that implementing an iOS service led them to implement an iOS design, I would rather prefer a well integrated Android experience.
cupcake-unicorn 7 hours ago 1 reply      
I'm not familiar enough with Apple products, iOS, iMessage, etc. to understand why this is such an impressive feat. Can someone fill me in on why this is so amazing? It's a closed protocol I guess, but if this guy could pull this together under the radar like this how hasn't it been done before?
huluwateam 6 hours ago 3 replies      
hi everybody,i am android message developer.
jjcall 10 hours ago 1 reply      
I would love to know how they pulled this off.
ddon 9 hours ago 0 replies      
just tested it with my account, and it works! even sending and receiving images works... very impressive :) let's see how long will it work :
dariusm5 10 hours ago 1 reply      
I'm afraid to install this. Does it actually work or is it another common fake app found on the Play store?
munimkazia 8 hours ago 0 replies      
This is blowing up all over the internet right now.. It is pretty amazing that there is an app like this which works, but it is even more surprising that this has been around for a bit, and it flew relatively under the radar.

I just tried it out myself, and my boss who uses an iPhone is in total shock.

so898 8 hours ago 0 replies      
So, the magic of some Chinese companies which been used to send advertisement finally be public. Will there be more iMessage advertisements after this? Maybe it is time for Apple to change their iMessage protocol.
riobard 9 hours ago 0 replies      
This explained all the iMessage spam
NKCSS 7 hours ago 0 replies      
I hope the protocol specs leak soon... would be nice to write a Windows Phone client that can do iMessage; kik messenger sucks and whatsapp is buggy :-/
eugeneross 1 hour ago 0 replies      
Look at them one star ratings.
Sektor 10 hours ago 1 reply      
Anyone manage to sign into the app?I just get 'Password or Apple ID error' with a Chinese 'OK' button
ozh 8 hours ago 0 replies      
I'm on Android and I think the last thing I want to install is an iSomething.
zane03 53 minutes ago 0 replies      
They're dev website is unavailable which makes me question the stability of this... HA
dubrocks 8 hours ago 0 replies      
Insane. They even have a way to create an Apple ID in the app!
hamdullahshah 4 hours ago 0 replies      
Noooo, what if the Chinese server is hacked by someone.
jasonlotito 10 hours ago 0 replies      
Does this screw up the ordering of messages just like iMessages? Does it make you apart of the same conversation multiple times, so that when you send a message, you get your own reply?
mrmondo 7 hours ago 0 replies      
Now all they have to do to get people to use it is create a QR code for it ;)
mmvvaa 9 hours ago 0 replies      
Looks like someone inside the Blackberry deal, trying to demonstrate how irrelevant BBM is.
l33tfr4gg3r 5 hours ago 0 replies      
One less reason to buy an iDevice, at least until Apple issues the inevitable takedown, Cease-and-Desist, iSueYou, etc.
asenna 7 hours ago 0 replies      
How has this been up for 10 days?
jthomp 9 hours ago 0 replies      
Can confirm that it works here.
Xelom 8 hours ago 0 replies      
First screenshot. Cancle.
supadupafly 9 hours ago 1 reply      
It is such a shame and pity that it comes from China. It killed all of the buzz for me in an instant. I have nothing against Chinese people, but an app that has done something never done before with Chinglish in it - nope.
My Daughters Homework Is Killing Me theatlantic.com
254 points by e40  4 days ago   333 comments top 44
tptacek 4 days ago 13 replies      
Some quick thoughts, as the parent of a high school freshman:

* If you anticipate your child being assigned 3 hours of homework in a typical evening, it is negligent to allow them to start that work at 8:00PM. Instead of allowing his daughter to watch episodes of Portlandia on her computer all afternoon, he could consider a rule suggesting homework gets completed before electronic entertainment; that's our rule this year (for the first time) and it's working better than I thought it would. Another rule we have: complete or not, homework is done at 9:30PM.

* Japan (a) does not outperform the US (at least on PISA) when normalized for income, which normalization also normalizes for homework load, and (b) has the some of the longest school days in the world, with an abbreviated, homework-encumbered summer break to boot. Japanese students probably do not work less hard than US students, or to greater effect.

* If your daughter answers "Texas City" as the state capital of Texas, the discussion of how she's struggling academically might range farther than homework load, eh? Neither my son in high school nor my daughter in middle school has ever to my knowledge had state capitals homework, and neither would give that answer.

* If your daughter has spent middle school staying up until 1:00AM completing homework, so much so that you are in open conflict with the school over that load, why oh why would you go out of your way to enroll the kid in a highly selective public school that is virtually assured to maintain or increase that load? We had homework-intensive school options for the boy, too, and (sanely) decided not to avail ourselves of them. Is this a status obsession thing? Because if the end goal is a push to get your kid into an Ivy, stop bitching about workload. You're choosing to make your kid compete.

Minus the cannabis (I substituted Unix exploit development), I had a similar high school experience to this author. I'm not generally in favor of homework and would if asked by any of my kid's teachers --- who do actually coordinate to even out the workload --- vote for less of it. But I think the parent in this article is suffering from a couple problems of his own creation, and has probably not come up with an indictment of the US school system.

Never once has either of my kids had a middle school workload that kept them up late at night.

acabal 4 days ago 5 replies      
What stood out for me from this article wasn't the homework load, which only seems slightly more than what I remember from my own youth, but rather that:

1) a teacher can accuse a parent of "cyberbullying" for an email sent in purported confidentiality to others, and that the claim can be taken seriously. Obviously I didn't read the email, but the author seems well-read and reasonable, so I'm inclined to conjecture that whatever he sent wasn't outrageous. If I as a parent were "called in to the vice principal's office" and accused of cyberbullying a teacher, I'd laugh in their face. Is this teacher teaching middle school, or in middle school?

2) that the parent is having constant meetings with school officials, and seemingly-frequent interaction with other parents via email. Granted in my days (mid-90's or so) email wasn't a big thing, but my parents typically took the hands-off stand of "did the teacher say so? then do it", plus the occasional PTA meeting. (They did help when asked, but I can probably count all the face-to-face meetings they had with school faculty on one hand). And that's a stance I can very much appreciate. I don't know what parent-teacher relationships are like today, but it sure sounds like the teachers are hearing almost as much from the parents as they are from the students.

Which isn't to say the system can't be improved. But honestly I remember nearly as much homework from my days, and those points stuck out more to me as a sign of the times.

mcphilip 4 days ago 5 replies      
I was homeschooled K-12. My days consisted largely of 1-2 hours of bible study with my 3 brothers followed by a few hours on my own working through a set number of pages in math, science, literature, etc textbooks. I'd usually get done by 2 and then play Nintendo until friends got home from school.

I was never tested in homeschool. There were no grades or report cards. The only accountability was mom checking that the assignments were done. My first real test was the PSAT. As part of applying to college, my mom had to make up high school grades for the transcript.

I scored decently on the SAT and got accepted into a university. College was relatively a breeze since I had spent all my grade school years teaching things to myself - college was just an extension of this method of learning.

While there are plenty of good arguments against homeschooling, I feel lucky to have been brought up in an environment where education did not have a competitive aspect requiring 8-12 hours of work a day.

GotAnyMegadeth 4 days ago 6 replies      
The Author and his daughter haven't learnt the tricks of the trade. I was set 3+hrs of HW a day, but I certainly didn't do that much.

First, they need to assess which teachers "Don't mind" if you don't do the homework. This could mean they stand you up in front of the whole class and shout at you, but if they don't give you an after school detention, don't do it. Getting in the teachers good books previously helps with this.

Second, if you've got a joke subject before one with homework due, do the homework then. Geography before Maths for example.

Third, have a homework team where you take it in turns to do the easily copied homework (Maths, DT, Science) and then copy each other in the mornings before school. Of course you need to cover your tracks.

Fourth, always cut corners. No calculator? Lol, use a calculator, but purposely get a few wrong. Use Google for everything (I didn't have a computer until yr8). Never read a book when you can read a synopsis/ watch the film whilst playing Pokmon.

Fifth, work as a team at home. The parent will have to remember things from their childhood, where as older siblings only need to remember from the year before. I used to do my middle brother's compulsory homework, whilst he did my littlest brother's, and my mum did mine.

Other tricks:Try leaving all of you books related to that subject at home one day and claim you thought it was Thursday.

Miss out a question at the bottom of a page, they might not even notice.

Pretend you are/were ill.


Hand in last weeks homework again. This one only buys you time, but works well on a Friday.

Tell your teacher you'll hand it in tomorrow, then the next day tell them you handed it in yesterday and they've lost it.

Band together with the other kids in your class and tell the teacher they said the homework was due for next week, or that they didn't even set it.

If you are asked to hand something in on lined paper, just don't do a whole sheets worth. More convincing if both sheets start/end in the middle of a sentence. I've done this before and they didn't even comment, I suspect they felt guilty they'd lost it.

Note: I successfully used all these tricks on several occasions. I would say that it definitely had no impact on my education (Got a AAAB at A level, 1st Class degree in Electronic Engineering w/ Hons), and a very significant positive impact on my life as a whole.

vacri 4 days ago 3 replies      
There are some concepts at odds here. "The measurements included numbers like 7813/64, and all this multiplying and dividing was to be done without a calculator." is not 'rote learning'/'memorisation without rationalisation'. It's directly exercising an ability. I've had a university-level experience reach for her calculator to multiply 0.2 by 3, and when I forbade her from using it, she just stared dumbly at me. That someone of that age can't do that multiplication 'automatically' was quite a surprise, especially given that it was a science course.

Similarly, finding the distances between state capitals exercises research and application skills, and gives a feeling for geographical distances. Doing it in miles and kilometers is helping to get people accustomed to using the Standard International set of units alongside the archaic Imperial units. Likewise, a journalist finding scientific mathematical notation 'unintuitive' doesn't mean it has no merit.

The workload is ridiculous, absolutely, but the content of the homework doesn't sound as useless as the article makes it out to be.

rayiner 4 days ago 0 replies      
The entirety of K-12 is a basically a crock. Very little of this stuff is important. Who cares how crystal structures are defined? Memorizing that trivia won't improve your thinking skills, and you won't remember it after the exam anyway. Even if you go on to major in chemistry, you'll have to relearn all of that anyway because colleges don't trust the K-12 system to teach any of it correctly.

My wife recently told me she wants to send our daughter to an expensive private school for 4th-12th grade. My wife and I both attended public school until graduate school, so I wasn't warm to the idea. But I couldn't argue with her reasoning: many private schools are exempt from NCLB (because they don't take federal money under the Act), and as such can dispense with a lot of that ridiculousness. They teach the important skills (reading, writing, logical reasoning, math), but otherwise go easy on kids, inflate their grades, and have old connections to top colleges so they don't have to define themselves based on the "rigor" of their programs the way public magnet schools do.

I went to a highly-competitive public magnet school for high school, and it was a huge waste of time. I sorely regret all those hours I spent learning about earth science or ancient china. My wife went to a very progressive public school in Oregon and loved it. They had mostly electives, and one of her classes in high school was a whole class on James Joyce. They didn't assign a ton of homework, but instead let kids explore their interests them go home at the end of the day.

belorn 4 days ago 3 replies      
> But when I ask her what the verb tener means (to have, if I recall), she repeats, Memorization, not rationalization.

I wonder where she got that from, or if it was something she figured out by herself. It just sound so soul crushing that the goal for children is not learning, but to memorize something until the test is done.

Memorization should never be used when rationalization could do better. Sure, there exist a few rare cases where memorization is the only option (such as remembering names), but those are exceptions. Languages are almost without exception best learned by actually using the language in communication or by consuming media (books, movies, and so on).

Al-Khwarizmi 4 days ago 2 replies      
Wow. Everyone in the thread seems to have gotten lots of homework in their youth. In my case, I went to both a private and a public school (in Spain) and the homework load was probably like half an hour a day, in both cases. In high school it was a bit more, maybe 45 minutes, the main difference was that in high school studying the day before the exam was usually not enough.

I remember that my mother used to be worried that I would have problems at university, because there I would have to work a lot of hours per day, and I wasn't getting used to that at school. Well, I did have to work a lot of hours per day at university, but I did perfectly fine. And I'm grateful that I had time during my school and high school years to write stories, make drawings, learn C and C++, write games, compose some music, etc... unlike the poor girl in the article!

haldujai 4 days ago 4 replies      
The mode of homework time appears to be 3 hours a night during weekdays, this is considered unbearable/a lot? Growing up this was the norm for me. The school in question runs from 8:00 AM to 2:20 PM with a 45 minute lunch break, recesses and homeroom included. With 3 hours of studying that brings you to a total of 9 hours - breaks (I couldn't find a schedule). Assuming 8 hours of sleep, 1 hour for dinner, 2 hours of miscellaneous daily activities and 1 hour to get ready and eat breakfast in the morning you're left with 3 hours of your day left. As a 13 year old with parents that take care of a lot of your responsibilities that's not bad at all. Especially when you consider that this is a school that advertises academic rigor and not intended for your average student.

The only thing I agree with is that this school isn't doing a good job of educating if the student says "Memorization, not rationalization". While the homework appears to be monotonous my understanding was that this is because she is 13, it is important to build the foundation (i.e. comfort with numbers and reading dense literature) that will allow her to pursue more intellectually challenging courses in the future.

The only criticism I have of this system is that the author suggests none of the courses promote critical thinking and creativity. If this is the case then this is a problem, I would think at least 1/5 courses should do that. One of the biggest criticisms of the education system in China (I don't know if this is true but I hear it a lot) is that it promotes rote memorization (with exceptions), and this school appears to be doing the same.

Edit: All of this is predicated on the assumption that this student is academically capable of succeeding at this school. While it takes her 3 hours every night (5 hours max) this may not be the case for the average student, we don't know where she lies on the curve. Anecdotal evidence from some parents is obviously not enough to draw any conclusions.

rwallace 4 days ago 1 reply      
There comes a point when an institution becomes so badly broken that the only rational course of action is to get the hell out, and look elsewhere for a solution to your problems. It looks pretty clear from this article that the US school system is well past that point.
tudorw 4 days ago 3 replies      
Six and a half hours sleep, this is way too low, Millpond Childrens Sleep Clinic recommends over nine for a 13yr old. http://www.nhs.uk/Livewell/Childrenssleep/Pages/howmuchsleep...
Fuxy 4 days ago 0 replies      
Holy st people how can you allow teachers to torture your kids like that.

I'm young and I never had this kind of work load hell if i did i would have either gone insane or just said fk it and ignored all that homework.

Yes I'm not from America I'm from Easter Europe. I would never allow this to my children. If this is the state of education I can do a better job.

"If Esmee masters the material covered in her classes, she will emerge as a well-rounded, socially aware citizen, a serious reader with good reasoning capabilities and a decent knowledge of the universe she lives in. What more can I ask of her school?"

No she will emerge as a well informed drone with good reading skill but no desire to do so because she is reminded of the amount of reading forced upon her and very weak reasoning and deductive skills.

Memorization, not rationalization.

What the point of that? If you don't understand what you have memorized it is useless not to mention a lot harder to remember.

Cyberbullying really? Is that person a complete idiot? Why would i ever let my child learn from a person who would attempt to threaten me with some ridiculous accusation in order to make me back off from my opinion.

It is manipulative and instead of addressing my concerns they are trying to make me go away.

From what they are telling the parents the teachers are just a bunch of drones following instructions sent by a higher power.

Exactly what they are teaching the students to become.

Where's the critical thinking where the opinion and power of the teachers to teach in a manner that they see fit?

ygra 4 days ago 4 replies      
I don't recall similar homework loads (Germany, school being 1020 years ago), but that might be due to laziness on my part or simply the fact that it wasn't a good time for me anyway. By the later grades (11th and onwards) it definitely wasn't as much.

I liked what our math teacher said regarding his homework: It's for practice and not strictly needed and thus voluntary. If we feel confident doing the homework ad-hoc on the blackboard in class then we don't need to do it at home. While this won't work for every class (e.g. I guess languages don't really work that way), it was definitely nicer than having to unconditionally do the homework (as well as all the rest).

> Ive often suspected that teachers dont have any idea about the> cumulative amount of homework the kids are assigned when> they are taking five academic classes. There is little to no> coordination among teachers in most schools when it comes> to assignments and test dates.

This is something my mother (a teacher) can confirm as well. Many teachers just assume that they're the only ones giving homework and thus don't really see why it can be so much. That was a problem in uni as well sometimes in the earlier years (and anecdotally the norm by now that we have the Bachelor/Master system, depending on your major).

ctdonath 4 days ago 1 reply      
The Montessori method: take each child at his own pace thru sensory-grounded material, giving enough familiarity with material until it is internalized and the child abstracts it himself - THEN move on to the next step, at individual pace. Therein lies understanding. Not doing this leads to contempt for the material and rote memorization (which the article starts out noting is the plain conclusion) devoid of understanding.
AmiiJewels 4 days ago 4 replies      
I do not understand the authors conclusion: 'The more immersed I become in Esmees homework, the more reassured I am that the teachers, principals, and school-board members who are coming up with this curriculum are earnest about their work.' when his own Daughter's strategy boils down to :"Memorization, not rationalization" - She isn't learning, she isn't becoming "well rounded", she is memorizing information that will be useless past her next year of schooling.

Some of the things detailed sound horrible, A C because there was no answer column etc. The school sounds broken.

mistercow 4 days ago 0 replies      
The answer, of course, is to tell your daughter she just doesn't have to do this shit. It's middle school. It doesn't matter. When she gets to high school, if teachers try to put her in non-honors classes (where she obviously doesn't belong), you sign a waiver and put her in the right classes.

Of course, if you by any means have the time or the money, the real answer is not to send your kids to these idiotic institutions at all, and to teach them yourself, or higher tutors. Hire college students; they can use the money.

pnathan 4 days ago 1 reply      
This is the official guideline from my local school district on average homework times:

K Occasional

1-2 15 minutes (M-Th)

3-5 30-60 minutes (M-Th)

6-8 30-90 minutes (M-Th)

9-12 60-120 minutes (M-S)

kalleboo 4 days ago 0 replies      
This has turned into a circumcision/spanking debate. "Let me tell you what MY parents/school imposed on me and why that's the best way, and as anecdotal evidence, I present myself, who as you can see turned out to be a perfect individual." I can read those on Reddit, Hacker News readers have no particular insight here. In fact, Reddit readers are probably better suited to this debate as there are more students and teachers posting there.

Haven't there been any actual studies on this? The article mentions how on a international scale there's no correlation between homework load and results. Have there been any studies on a smaller scale (such as intra-class, using the same teachers/assignments)?

graeme 4 days ago 1 reply      
I teach the SAT. My impression is that children are too busy to learn.

I learned a LOT from reading random things outside of school. Students have no time for that these days. And when they do need to learn something new, such as math on the SAT, they have no time to learn it.

The schools also don't seem to be focussed on learning. The emphasis is on covering 'the curriculum'. So I'm dealing students studying trigonometry who can't multiply 7 * 6 without a calculator.

Needless to say, they don't actually understand trigonometry either. Memorize, not rationalize is sadly very true.

nicholassmith 4 days ago 0 replies      
With the education system pushing for rote memorisation over comprehension it's going to grind the enthusiasm to learn out of kids before they even have chance to start enjoying education. I hated doing homework that was just memorisation and didn't have a component where you had to either comprehend or be able to rationalise as it felt like all I was doing was trying to avoid looking something up in a book. If you're just training memorisation you may as well play a memory game.
aidos 4 days ago 2 replies      
OT but early on there's a quote from the homework:

    "its [sic] significance"
Why is the sic in there? Is that not the correct use of 'its' in this context?

code_duck 4 days ago 1 reply      
My high school in Connecticut declared that you should spend 1 hour doing homework for each academic class every day, which adds up to 12 hours each day focused on attending school, or more. I have no idea why this sounds reasonable to administrators and teachers.

The idea of 'memorization' as learning has always bothered me... The most reliable long-term way to recall things is to learn and comprehend them.

imperio59 4 days ago 3 replies      
She is not learning about what she is studying, she is learning to become a well trained parrot. Society has no use for parrots.

These kids need to be taught to look up the words they don't know in a dictionary appropriate to their age and gain an understanding of the new words they come across as they are studying.That is the only way to understand any subject one is studying. No amount of "guessing" or "memorizing" will replace an actual understanding of the words one is reading.

marcuspovey 4 days ago 1 reply      
I find the phrase "Memorisation not rationalisation" deeply sinister.
segmondy 3 days ago 0 replies      
"When I get home, Esmee tells me she got a C on her math homework from the night before because she hadnt made an answer column. Her correct answers were there, at the end of each neatly written-out equation, yet they werent segregated into a separate column on the right side of each page. Im amazed that the pettiness of this doesnt seem to bother her. School is training her well for the inanities of adult life."


forrestthewoods 4 days ago 0 replies      
I am eternally grateful that I went to dumb kid rural high school with a 50% drop out rate. I only did homework or studied for a test a couple of times per semester. I has more than enough time for sports, friends, and video games. Much, much better than laborious studying no matter how useful or not useful it may be.
NemesorZandrak 4 days ago 2 replies      
When I was at school and that is not USA but Poland. We used to have 6-8 different subjects per day from biology, chemistry, geography, maths and history as examples. Everyone of this subjects converted to at least an hour of homework. What I learned as a kid is that it is impossible to learn all this things at home and I have to filter what is needed the most. Sometimes approximate and sometimes simply take the risk and just read rapidly the book and count on luck. This what most valuable lesson if learned at school. Some of the kids managed to do this 8 hour drill some like me had to adjust and focus on important stuff learn to filter. This gave me ability to play games and program.
retrogradeorbit 4 days ago 0 replies      
Some of John Taylor Gatto's writings on the education system shed some light on all of this.


loup-vaillant 4 days ago 0 replies      
> Esmee [] got a C on her math homework from the night before because she hadnt made an answer column. Her correct answers were there, at the end of each neatly written-out equation, yet they werent segregated into a separate column on the right side of each page.

I almost snapped my pen in half.

auggierose 4 days ago 0 replies      
"for example, converting 0.00009621 to scientific notation is tricky (its 9.621 x 105, which makes no intuitive sense to me)"

Are math skills out there really THAT bad?

anigbrowl 4 days ago 3 replies      
So much whining. These tasks represent actual problems you might be tasked with finding out in the real world; not all of them are directly relevant to students or their utility immediately apparent, but the mothodologies are solid. Growing up in Ireland and going to high school int he 80s, I was doing 3-4 hours/night of homework from the equivalent of your grade 7, and I still found time to watch TV and read for pleasure each evening.

I laughed out loud at the author's complaint that math homework involved doing a lot of calculation without the aid of a calculator. Well yes, that is how you develop math feel. Using a calculator is great, and appropriate in later math classes, but training in mechanistic tasks is important too, for the same reason that athletic exercise involves a good deal of repetition and practice.

It's the same reason musicians play scales every day - it's not because they don't care about the theoretical underpinnings, it's because performance depends on practice. Likewise, understanding the mechanics of a tennis ball hitting a racket won't make you into a good tennis player, and understanding how to punch something into a calculator won't help you develop your mental math skills.

What I am interested in is what my daughter is doing during those nightly hours between 8 oclock and midnight

Why are you letting her wait until 8pm to start homework? Start at 6, done by 9.

I dont remember how much homework was assigned to me in eighth grade. I do know that I didnt do very much of it and that what little I did, I did badly. My study habits were atrocious. After school I often went to friends houses, where I sometimes smoked marijuana, and then I returned home for dinner; after lying to my parents about not having homework that night, I might have caught an hour or two of television.

And look at the results: simple problems like calculating the area and perimeter of complex shapes just seem too, too hard for your poor brain. Instead you have the mental equivalent of a beer gut.

grandalf 4 days ago 0 replies      
The trend toward memorization homework is part of the larger view of education as social assimilation training and obedience training.

If the homework required "rationalization, not memorization" then the brightest students would easily coast through in minutes the same material that would take the dimmer students hours. With memorization, the curve is flattened significantly and grades are much more closely tied to effort than to innate ability.

All this is intentional and has the desired outcome -- colleges offer many classes where the student who is used to drudgery and memorization can simply thrive by putting in the hours with flashcards, and can then go on to a career where obedience and compliance with drudgery are highly valued traits.

The problem with this is that it misses the more important point, which is that abstract reasoning skills can be taught too, they are just often taught very poorly and so kids who have a small leg up (largely by accident) get a big unfair advantage and in a non-memorization world reap significant benefits.

I'd be extremely concerned if my child were being asked to memorize material that was not strictly necessary for some kind of reasoning exercise.

Zigurd 4 days ago 1 reply      
His daughter is in a high-pressure selective school that appears to market this workload as a feature. It might be the right thing for kids who breeze through their school material and then get bored for lack of any challenge. It probably isn't the right thing for everyone.

His daughter seems like the victim of needing to get into some college prep program where choices are limited, waiting lists are common, and many private school prices are out of reach. I did not see where she was asked about a choice of schools.

Middle school seems way too early for a program this intensive. What is the retention for all this material when the students are high school juniors? The only purpose for the homework grind appears to be to get students that they don't want in this school to self-select out of it.

It seems like what the author is wishing for is a good free normal public school in New York City. Ha! The bottom line is that he can't actually afford to live where he lives unless he sacrifices his daughter's childhood this way.

gambiting 4 days ago 0 replies      
But it can be done better. My sister attends a private boarding school in the UK and they only have 2 hours set per day for homework(always between 7pm and 9pm). Teachers coordinate between each other to make sure the work never takes more than these two hours,but also that it doesn't take any less. So my sister spends two solid hours each day working on her homework,and it doesn't cut into her sleep pattern - they need to be in bed by 10.15pm after all.

Obviously a non-boarding student doesn't necessarily have the regime at home to solidly sit down for 2 hours and work without access to their phone/ipad/computer/playstation for that period like at a boarding school, but I believe that if the system was better teachers really could coordinate between themselves and arrange homework that was manageable.

joelhooks 3 days ago 0 replies      
We homeschool and our kids do 2-4 hours of academics per day, generally. Frees up a lot of time for things like "being a kid" and "enjoying life". Some days they don't do any and spend the day building things in minecraft or drawing pictures.

It's awesome, and I highly recommend it to anybody interested in non-institutionalized kids.

fcatalan 4 days ago 1 reply      
When I was a kid the situation was clear for me: Homework made me struggle for hours while the drill sergeant act next day would last for mere seconds. So I did the bare minimum that would keep me from getting in serious trouble and accepted punishment for the rest as a good deal.

My own kids are now growing and should show up with homework quite soon. I dread the day.

egwor 4 days ago 1 reply      
Welcome to the educated new world; where education matters. One thing to consider; perhaps the child shouldn't be in that class/level or school? Perhaps their previous school didn't cover the material so this is all base stuff for everyone else?

If it takes you 3-5hrs to do something and you want to sleep before midnight, start earlier. Perhaps when less tired it would be quicker.

I used to have homework that could take me between 30 mins and 2.5 hrs each day (7 days a week). I started when I came in from school and had a break for some tv and then finished to have time to do other things.You learn how to be faster at the homework. When I was 16-18 I most probably spent longer still

I used to have enough time to walk home from school, watch tv, play sport, play trumpet and do that work. Also, at lunch time there is usually time to do some work. We used to collaborate on some stuff too.

grandalf 4 days ago 0 replies      
This article reminds me of being in school (some high school and surprisingly many college classes). I simply didn't do the memorization homework. I turned out OK but my GPA was definitely lower than it would have been if I'd spent all those extra hours memorizing.
modfodder 4 days ago 0 replies      
One subject I don't remember learning; how to learn. Maybe it was just taught so early that I don't remember, but although I was always a good student that breezed through school for the most part, I take horrendous notes and feel really inefficient when it comes to learning.
wintersFright 4 days ago 1 reply      
I'm surprised he is so open about the weed. Especially since his daughter will read that. I thought the USA was all gung ho on the war on drugs?
alexeisadeski3 3 days ago 0 replies      
Why would he read 79 pages in one night if all he had to do was find three quotable sentences? Read three pages picked at random from that 79 page section and move on.

This isn't rocket science.

anaphor 4 days ago 0 replies      
I'm in an honours program at university and I get orders of magnitude less homework. Of course the work requires much more thought and maybe more reading, but the people designing public school curriculums really need to learn how people actually learn.
vickytnz 4 days ago 0 replies      
An aside: I've been reading Mr Penumbra's 24 Hour Book Store. Good, breezy, semi-techy read.
Grue3 4 days ago 0 replies      
So the guy is too stupid to do his child's homework and somehow sees this as a bad thing? Like, he wants his daughter to end up as dumb as him? That's what I get from this article.
Artillery is building a hardcore RTS with HTML5 and WebGL artillery.com
250 points by statico  4 days ago   146 comments top 26
monsterix 4 days ago 6 replies      
Wow! This is mesmerizing.

These posts on HTML5 stuff that pop-up on HN from time to time hint on what is to come on the web in the near term. I think HTML5 is a huge Tsunami gathering energy and steam out there! It will and should beat all these "I-am-the-best" closed systems (already does in some areas) sometime soon, and be on the top.

System agnostic, immersive, inclusive, what not. Love it.

Mikeb85 4 days ago 5 replies      
This is impressive and cool, but I think web-based gaming will never catch on with the 'hardcore' for a few reasons.

For one, C++ and the native toolchain is still more efficient. But it mostly comes down to perception and convenience. The perception of web-based games is that they're casual and cheap. And most hardcore gamers like to have a copy of the game on their computer - they paid for it, they want a copy that they can keep (and at least store on their hard drive) for years. They don't want to stop playing a game because the dev decided to end its life...

This is why platforms like Steam, Xbox, HumbleBundle, etc..., still rule for distributing games (both AAA and indie).

codexon 4 days ago 7 replies      
I think Javascript is too slow for 3d gaming.

If you look at this HTML5/WebGL minecraft engine, it stutters even without any other players or bots in the environment.


Meanwhile Minecraft running in Java is smooth on even the slowest machines.

Benchmarks indicate that Javascript is 4x slower than Java.


The alternatives like ASM.js and PNACL are far from usable. ASM.js has no support for threads and PNACL is unlikely to be supported outside of Chrome. They also have no debugging support.

Pxtl 4 days ago 2 replies      
I will be exceedingly impressed if they pull this off. RTS is probably the gaming genre that offers the most "interesting" problems in programming, and thus is the one that needs the most computing power beyond simply showing stuff on the screen.

Pathfinding is Hard. Maintaining sync is Hard. Unit AI is Hard. And keeping those performant is doubly so, especially using JS.

So yeah, I'll be impressed if they get anything playable out of this.

IsTom 4 days ago 1 reply      
Many people trying to make "classic" RTSes miss critical points about feel and gameplay which makes the games very unsatisfactory to play for somebody who tried SC2 with its polished engine. Partnership with Day[9] might be just the thing that they need. Graphics are passable, but it's enough. Many players play SC2 on low graphics for readability of screen already.
TimJRobinson 4 days ago 1 reply      
Are you looking to make this run well on mobile too?

There are 2 main advantages of web over native games. The first is being able to quickly jump in and play with a friend. The second is being cross platform including all mobile devices.

These 2 reasons are why I'm building my multiplayer tower defense game http://www.towerstorm.com in javascript. I'd be interested in trying out your engine if you're looking to make it run fast on mobile along with PC.

civilian 4 days ago 3 replies      
Does anyone know how they're going to lock the cursor into the browser window?

A common feature required for RTS games is being able to just push your cursor to the edge of the screen to move your viewport. (Since it's played full-screen.) It seems like a browser game would be missing this key feature.

kkshin 4 days ago 1 reply      
Whoa, that looks really sweet. I especially liked how simple the dev tools looked, is that in the browser as well?
mercurial 4 days ago 1 reply      
Who is "Artillery"? By the headline, it sounds like that's a company I should know.
justina1 4 days ago 0 replies      
It's been a while since I've played games like this, but if I could just point my modern browser to a URL, subscribe for a few bucks a month, and start playing, I might just start again.
ebbv 4 days ago 1 reply      
This looks really great. I just think the claims of "console quality" or "AAA quality" (which I heard associated with Day[9]'s announcement) are a bit disingenuous.

I'm excited that you guys are pushing browser gaming, and what you've done so far looks great. Just please don't fall into the trap of over hyping and then disappointing customers.

oconnor0 4 days ago 2 replies      
What does being a "hardcore RTS" mean?
catshirt 4 days ago 0 replies      
this is awesome. and wow they have been busy. devotees will remember the bomberman clone 'powderkeg' that was on the front page about a year ago. i'm even more impressed by the progress than the tech.

new favorite platform, and hopefully new favorite RTS.

DigitalSea 4 days ago 1 reply      
Wow. I wish I had even just half the talent of HTML/CSS/Javascript to pull something off of this calibre. I am really impressed, I can't wait to get my hands on this and deconstruct how they did it the best I can and play it too.
Sami_Lehtinen 4 days ago 0 replies      
Looks good. I personally really really hate installing any crap on my computer or phone (apps). If it works just as regular web-site using browser only, it's just perfect.
bhouston 4 days ago 0 replies      
Whoa awesome and very well funded it seems.

I think Artillery.com would be a natural partner for our WebGL-based 3D content creation platform. They should check it out at http://clara.io Similar to how Unity3D is a natural partner to the desktop 3D content creations tools like Max/Maya.

joshuacc 4 days ago 1 reply      
Interestingly, the demo video hints that they are using CoffeeScript (see the `./publish.coffee` command in terminal toward the end). Can anyone comment about whether this is actually the case?
Kiro 4 days ago 1 reply      
How does real-time multiplayer work in the browser when there's no support for UDP?
sledmonkey 4 days ago 0 replies      
This looks incredible, well done. Maybe I can end my search for a modern Myth?
runarb 4 days ago 0 replies      
The music in that video was quite catchy. Anyone know what its name is?
tharshan09 4 days ago 0 replies      
This is what I have been waiting for...
Cakez0r 4 days ago 0 replies      
Are you going to sell your engine and toolchain too?
dmead 4 days ago 1 reply      
isnt this the project day9 is an adviser for?
natmaster 4 days ago 0 replies      
Congratz Ian! GL;HF
lorenzfx 4 days ago 2 replies      
What is it with these militaristic company names? Artillery, Firebase, etc. Or is it just my European mindset?
waterlion 4 days ago 1 reply      
Nowhere does it explain what "RTS" stands for.
Joe Armstrong on Programmer Productivity groups.google.com
251 points by mdevilliers  5 days ago   89 comments top 16
tom_b 5 days ago 4 replies      
FTA (favorite part for me)

Most time isn't spent programming anyway - programmer time is spent:

    a) fixing broken stuff that should not be broken    b) trying to figure out what problem the customer actually wants solving    c) writing experimental code to test some idea    d) googling for some obscure fact that is needed to solve a) or b)    e) writing and testing production code
e) is actually pretty easy once a) - d) are fixed. But most measurements of productivity only measurelines of code in e) and man hours.

For me, b) is a bottleneck. c) is far and away my favorite part. Nothing like green-fielding . . .

lkrubner 4 days ago 4 replies      
This one sentence sums up the sociological and psychological problems that retard progress in the tech industry:

"Experiments that show that Erlang is N times better than "something else" won't be believed ifN is too high."

That is exactly it. I've had those arguments where I was forced to tell a manager about another project I did for another company, a similar project where things went quickly and smoothly, using technology the manager was not familiar with. And every word I spoke was met with disbelief.

metabrew 4 days ago 2 replies      
I rewrote a (~10k lines) C++ app to erlang back when I was learning erlang, and saw a ~75% reduction in lines of code.


I expect the 'N' value varies wildly depending on what you are building, and whichever language you are comparing against.

scotch_drinker 5 days ago 3 replies      
The corollary to a) that I deal with all the time is third party integrations that are poorly documented and that after some time X start magically working even though the third party changed nothing on their side (according to them). Management always thinks "We've integrated things with this vendor before, it will be a snap to do again on a totally different endpoint" and this is never the case.
gruseom 4 days ago 4 replies      
There's a problem with language productivity comparisons that Armstrong mentions: it's impossible to write the same program in two different languages. If you have the same team write it, their second try will benefit from everything they learned the first time, and that is so huge a part of programming that it is sure to distort the outcome and may even dwarf any language effects. But if you use different teams instead, you've traded one confounding variable for anotherthe effect of switching teamswhich is also hugely influential. Thus it's impossible to do an apples-to-apples comparison, and most such experiments deserve high skepticism. It's too easy to consciously or unconsicously engineer the outcome you expect, which is presumably why we nearly always hear that the experimenter's pet language won the day. Has the experimenter's pet language ever not won the day?

That makes me think of a more modest way to do these experiments that might return more reliable results: use the same team twice, but have them solve the problem in their favorite language first. That is, if A is the pet language and you want to compare A to B, write the program first in A and then in B. This biases the test in B's favour, because A will get penalized for all the time it took to learn about the problem while B will get all that benefit for free. Since there's already a major bias in favor of A, this levels the playing field some.

Here's why I think this might be more reliable. If you run the experiment this way and A comes out much better, you now have an answer to the charge that the second time was easier: all that benefit went to B and B still lost. Conversely, if A doesn't come out much better, you now have evidence that the language effect isn't so great once you account for the learning effect.

lifeisstillgood 4 days ago 7 replies      
this is partly why I advocate a slow code movement similar to the slow food movement. instead of sprinting I would like to walk to the destination, avoid the pains of broken ankles and repairing shoes whilst running in them.

I would like to explore to find a sane and reasonable approach and not be driven by artificial deadlines guessed at three months ago but by todays business need.

i would like to actually be measured on business value generated, not lines of code written.

I would like to improve and simplify, deliver real value and savour the joy of actually creating.

this may of course explain why I feel totally unproductive at times

jeffdavis 4 days ago 6 replies      
I've often wondered what the software development world would be like if we used prototypes. Experimental hacking seems like a cut-down version of this concept.

But what if we actually built things that we already agree in advance to throw away? Maybe even start from two or three different plausible designs, and push on each one for a while until one seems to be winning? Then rewrite it, learning from the other contenders and from the prototype itself, all before shipping.

The obvious answer is that it would take too long. But I'm not so sure. They say designing software takes too long, also, but when I spend a few weeks designing, the implementation ends up going smoothly and hitting the target. Usually the features that are designed thoroughly at the start of the release hit the target, and other "quick" features that are added in later, sans design, take longer than the designed features and end up pushing the release out. Any overruns or missteps in the implementation of the well-designed features seem insignificant in comparison to things that skimped on design work.

beat 4 days ago 1 reply      
I'm not sure the growth in the amount of software in the environment (contributor to A) is really that much of a problem. After all, he says we might have "thousands" of times more software, but we certainly aren't spending thousands of times more fixing it. That's because today's software is significantly less broken than the software of yore.

We're standing on the shoulders of giants. Underlying most of our environments is Unix (or Linux, same diff), which is basically the same as it was 20, 30 years ago. We're also running on http, an astoundingly good design. There are lots of other basics, none of which are all that complex, and all of which are finely tuned.

More to the point, a) represents a practical limit. If our environments get too flaky due to poorly understood configuration or bugs, we ultimately can't get programming done. But not pushing to where it hurts some means not using the latest, greatest tools that can amplify our power as programmers - the same tools that let us have thousands of times more software than we used to, without losing any more time to configuration/bugs than we did decades ago.

And beyond that, a lot of the business opportunity in the industry lies with running along just behind the bleeding edge, being firstest-with-mostest to the new and powerful technologies. So unless you're in a safe business relatively independent of new tech, you're going to bleed a bit.

ricardobeat 4 days ago 1 reply      
> 30 years ago there was far less software, but the software there was usually worked without any problems - the code was a lot smaller and consequently easier to understand

Pardon the intermission, but this is one of the areas where node.js shines IMO. I can read the complete source code for a very complex application, or at least know that each module has a reasonably-sized source and is readable if the need arises. Very small modules and using composition is encouraged, not restricted to a fringe community, and you also get to share tooling and libraries with the browser. All that on top of a friendly, functional language. It really feels like a step forward.

zwieback 4 days ago 0 replies      
Nice post although I disagree that 30 years ago stuff mostly worked. That's not how I remember it but I guess his main point was that there was a lot less software then.
6ren 4 days ago 0 replies      

  The problem is we don't do similar things over and over again. Each new unsolved  problem is precisely that, a new unsolved problem.
And if tasks are similar, and they can be made mechanical (or at least, commonalities can be factored out), it should be turned over to the machine itself.

perfunctory 4 days ago 0 replies      
> I've been in this game for many years now, and I have the impression that a) is taking a larger andlarger percentage of my time.

Have the same feeling.

jezclaremurugan 4 days ago 1 reply      
And it also depends on the editors, debuggers and other tools they use/know to use.
brucehauman 4 days ago 0 replies      
Investments in complexity bring fewer and fewer benefits, until maintenance alone consumes all resources. http://t.co/CL87QjJNjg
avty 4 days ago 0 replies      
Nothing kills programmer productivity faster than management.
sgustard 4 days ago 1 reply      
How about the perspective of Joe Armstrong (Green Day)?
FreeBSD 10s New Technologies and Features freebsdnews.net
239 points by radimm  4 days ago   124 comments top 18
emaste 4 days ago 1 reply      
A few corrections:

LLVM/CLANG: GCC is still in the base FreeBSD source tree, and is still used for CPU architectures where Clang support is not sufficiently mature. In addition, the article claims that GCC will remain "for a time" in the ports tree. GCC isn't going to be removed from the ports tree.

Tickless kernel: There's a spurious reference to "atomic close-on-exec" here.

PF: PF itself was ported from OpenBSD, while the SMP improvements were developed in FreeBSD.

Netmap: Netmap is a very high performance _Layer 2_ Ethernet packet interface; the reference to "65536 routing tables" is not applicable.

There are also a few items on here which are either works in progress or brainstorming ideas, and are not likely to be available in FreeBSD 10.0 (but may arrive in a later 10 point release): Variable symlinks, full UEFI, PCI hot-plug, Thunderbolt.

windexh8er 3 days ago 3 replies      
I loved FreeBSD all through the late 90s / early 2000s in high school and college. I was working for a small ISP that ran 100% FreeBSD and cut my teeth on *nix in general on the platform. My first foray into Linux (Debian) felt sloppy and discombobulated comparatively. Why? FreeBSD is an entire OS, not a menagerie of tools wrapped around a common kernel. FreeBSD always felt much more polished, complete and predictable. Unfortunately our team made the choice to migrate to Debian for ease of upgrades and security patches (no more building world). Back in the day the limited resources from a processing perspective made those upgrades much longer than an apt-get upgrade.

I love Linux (Arch / Debian), but I still have a soft spot for FreeBSD. I have flashbacks to the network install via a floppy that remind me of the simpler time of the Internet. I need to re-engage with 10. Lots of great platforms I use are still based on it - FreeNAS and PFSense.

If you've never tried it, I encourage you to learn the system.

tete 4 days ago 1 reply      
We recently switched from a Debian and Cloud hybrid to FreeBSD. Result: We have recent, stable software (Ports rock!), we are overall more stable than we were on the cloud, we have no more need to work around limitations of clouds and we have more resources while only paying a fraction, compared to our cloud service. Because of this we can have way more systems, which means we can use that for HA and are always set up for a sudden increase of users. With FreeBSD's jails we have a perfect cloud-like separation of services.

I used to be a huge fan of cloud computing, but what I really dislike these days is that while it makes it easier and way cheaper for companies it actually brings close to zero benefits to users, even being more expensive and connected with more limitations. A lot of the time people seem to use cloud hosting, because everyone else does so and because it is a hype right now.

harrytuttle 4 days ago 1 reply      

I may actually consider dumping Debian for FreeBSD 10.

I've never been totally happy with Linux after moving off "proper" UNIX machines. I had a FreeBSD 4.4 machine floating around for years which I was rather happy with but drifted off to Linux-land primarily due to convenience when it came to Flash and audio.

So many compelling reasons to switch back to FreeBSD now.

parennoob 4 days ago 11 replies      
Have never used FreeBSD, and am curious about using it on my laptop -- so an honest and perhaps naive question for people who do use it as their main system:

Does it JustWork on the majority of average-user things, like connecting to your Wi-Fi access point, displaying your desktop at its maximum resolution without crying, playing your multimedia files, etc? Ubuntu gets this just right, providing a perfect balance between core technologies for developers, and ease of software installation for common activities like, say, watching a Youtube video.

Support for 500 virtualisation technologies and no easy support for, say, playing mp4 files is going to make me not want to use it on my laptop. Then again, the average user might not exactly be who FreeBSD is targeting for their software.

TheSwordsman 4 days ago 1 reply      
I've really wanted to give FreeBSD a 100% solid shot. With this release I may try uploading my own FreeBSD image to a Xen VPS provider (probably Linode).

With that being said, I feel like I may be a spoiled little GNU user. There's plenty of times where I end up on a BSD system, and I try to use some sort of GNU-idiom in a command-line utility and I end up really really confused and unsure of how to bend it to my will. I think GNU sed is one of the first ones to come to mind, but there are definitely other utilities where the flags don't match up or don't even exist.

chris_wot 4 days ago 1 reply      
So no qualms about backdoors in RDRAND? Will they be doing the same as Linux with their random number generator and add additional sources of entropy?
mcfist 3 days ago 0 replies      
Just right now happen to help old $work with their 4.11-STABLE FreeBSD station, not touched since 2005 .. amazing technology, love it!. Still working, and while compiling ancient stuff from ports tree, am writing this comment from Konqueror 3.3.2 from 2004 . Thank you FreeBSD people!
MichaelMoser123 3 days ago 1 reply      
Does anybody know how RDRAND is being used in FreeBSD 10 ?is RDRAND somehow mandated so that it must be used, I mean why are both Linux and BSD both thinking that this is such a swell feature that must be implemented ?

Theodore Tso - the author of Linux /dev/random thinks that using it is a bad idea https://plus.google.com/117091380454742934025/posts/SDcoemc9...

Ixiaus 4 days ago 1 reply      
I love this operating system.
checker659 3 days ago 2 replies      
Anyone know what happened to Capsicum? Can't find any mention of it anywhere.
lawnchair_larry 3 days ago 2 replies      
Unfortunately FreeBSD is still in the 90s with security technology, making it completely unsuitable for hosting anything important.
jff 3 days ago 2 replies      
Does pkgng actually have any packages on it these days? The last few times I've checked, nothing's been available because of a security breach a year ago or whatever.
tsahyt 3 days ago 0 replies      
Is there any reason for switching to LLVM/CLANG from GCC other than the licensing?
Apocryphon 3 days ago 0 replies      
Will *BSD projects eventually try appealing to the mainstream the same way Ubuntu and Mint have been over the last decade?
Nux 3 days ago 1 reply      
I guess this is not the year FreeBSD gets a decent package manager (for binaries).. :(Maybe next year.
jacobwcarlson 3 days ago 0 replies      
The replacement of BIND is quite the landmark.
AsymetricCom 3 days ago 0 replies      
11. backdoor in sshd, compliments of NSA
Einstein and the Great Fed Robbery nanex.net
239 points by mcphilip  4 days ago   103 comments top 15
jstalin 3 days ago 4 replies      
When you combine this article with others, like the fact that JP Morgan had zero days of trading losses over an entire quarter, you realize that the market is clearly rigged by the big guys: http://www.zerohedge.com/news/2013-05-08/jp-morgan-has-zero-...
mcphilip 4 days ago 0 replies      
This research is done by the same guys at nanex that broke a story earlier this year about another early release of prominent data, ultimately leading to Reuters acknowledging that it was responsible for the leak:


moultano 3 days ago 6 replies      
Below a certain time accuracy, all trading is zero sum. The only reason to be able to trade in milliseconds is to beat someone else. No value is created.

Suppose instead that exchanges buffered all orders for, say, 1 hour. At the end of the hour they perform a stable matching algorithm to pair up bids and asks, and execute those trades simultaneously.

Are there any downsides to this? It seems like it would eliminate all of this zero sum behavior, and at the same time, increase liquidity, particularly for people who aren't on a fiber line one block from the exchange. You could additionally require all material information to be released at the top of the hour, to ensure a full hour of analysis before any trades are executed.

Eliezer 3 days ago 0 replies      
The question which occurs to me is who took the other side of this trade. You would think market actors would know enough to say, "If somebody suddenly wants to buy my stock right around 2pm and I haven't yet integrated the Fed info, it means my stock is more valuable and I should not sell."
yock 4 days ago 0 replies      
When I first started reading the story I was afraid I wouldn't understand it. Nanex took great care in explaining the phenomenon here with very accessible language. The charts are still mostly indecipherable to me, but the story makes it clear. If the situation really is as straight-forward as they make it out to be, someone has some explaining to do.
CrunchyJams 4 days ago 3 replies      
Awesome analysis. Keep in mind that while it tells a very compelling story, that it isn't necessarily proof that there was a leak.

All it would take is for one major player to take a view on what was going to happen without hearing the fed data in an attempt to beat the market. Other algos then see that and act on it, playing the other players instead of the data, as algos are known to do frequently. All of this could happen in the time it takes for the actual data to get there.

There were tons of people who expected yesterday's announcement to turn out just as it did. I'm not saying that's what happened, just that it's a possibility to keep in mind before jumping to conclusions.

bcoates 3 days ago 1 reply      
The Fed announcement may or may not have been known, but the fact that there would be an announcement at a given time was known. The market always jumps one way or another at the last moment before an announcement, because it's the last chance to place your bets in what is essentially gambling. There was no information propagation delay because there was no information. Sometimes the blind consensus guesses right, sometimes wrong.

If you actually had leaked information there's no reason you'd need to wait until the very last moment, that's when people who know nothing place their bets and their actions would be more likely to mess up your scam than cover up for it.

beefman 3 days ago 1 reply      
"Therefore, when the information was officially released in Washington, New York should see it 2 milliseconds later, and Chicago should see it 7 milliseconds later."

At which millisecond was the information "officially released"? Which of Bernanke's phonemes were decisive? Or do we know to the millisecond when the Fed's site was updated?

I suppose the coincidence between Chicago and New York is still a thing. Everyone receiving the leak agreed to fire at a particular time, and nobody jumped the gun?

fluidcruft 4 days ago 4 replies      
Is the time-keeping precision at the multiple sites accurate enough that local drifts can be excluded as a factor in the differentials?
minimax 3 days ago 1 reply      
It would be nice to hear a little bit more about how the FOMC results get into the electronic news feed. If anything, it seems more fair to release the news simultaneously in NY and Chicago so that traders in NY couldn't pick-off market makers in Chicago and vice versa.
rektide 3 days ago 0 replies      
Ole Roemer, a Danish astronomer, proved suspicions of many such as Empedocles (490-435 B.C.) that light has a speed. 1676. C/o Speed of Light: Case History. http://www.is.wayne.edu/MNISSANI/A&S/light.htm Ug easy sensationalism via namedropping.

Now, in another 50 years, I look forward to fingerprint analysis of a scale 1/1000th as fine: we caught you obeying the the speed of light, but you forgot to compensate for relativistic drift in X fashion. GUILTY!

strongvigilance 3 days ago 0 replies      
As far as I'm aware, the exact time of release of the FOMC statement can vary by a few seconds. Nanex seem to have assumed that the release comes from Washington, but I would guess that one of the agencies that receives the embargoed data has permission to distribute it at multiple locations simultaneously. That seems like the simplest explanation for Chicago and New York reacting at the same time.
schainks 3 days ago 1 reply      
The ironic thing to me is the NSA is clearly in a position to present evidence for this - unless 'insider' conversations are happening in an analog medium.
aba_sababa 2 days ago 0 replies      
Well, how do we know the Fed's clock was canonical?
wprl 3 days ago 0 replies      
These graphs are crazy.
Edward C++Hands bartoszmilewski.com
236 points by T-zex  4 days ago   225 comments top 28
copx 4 days ago 6 replies      
The H.264 encoder I use is written in a mixture of C and ASM. It is damn fast and maxes out all cores.

I dare you to write a full-featured, functional H.264 encoder in Haskell with equal or superior performance. Once such a thing exist I will start believing the hype.

Until then I reserve the right to consider the current Haskell/FP craze the biggest amount of bullshit since the Java/OOP craze.

Sorry people, I already know that magic language/paradigm which solves all problems of software engineering. Which allows me to write 4 times less code, said code being robust and maintainable practically by default, yet as fast as C/C++ if not faster, all that thanks to this great new model of software engineering! It is the (only) future!

Yes, the Java/OOP/design patterns/UML crowd made exactly the same bullshit claims back then. Nobody talks like that about Java/OOP anymore because the bullshit eventually hit the fan known as reality.

Oh and before Sun's viral marketing campaign there were the Lisp weenies. Again, same bullshit. We already have a "30x less code" language which comes bundled with an insufferable sense of intellectual superiority not backed by practical results.

Oh, and I almost forgot the Python/Ruby "dynamic" and "human" craze. "Programming for human beings" - it's the (only) future!Back then the snake oil addicts paraded around dynamic typing and code which read like plain English as the salvation of the programmer. Nowadays they claim dynamic typing is the software engineering equivalent of the Holocaust and that good code must look like math!

I am so tired of it..

chetanahuja 4 days ago 12 replies      
Every time I read a "scathing" attack on C/C++ for being the worst language the author ever heard of, I hear Jack Sparrow's reply in my head "Ahh... but you have heard of me".

Somehow despite the litany of crippling deficiencies, C/C++ have managed to be the foundation of every piece of technology a consumer or a computer professional will ever touch in their daily life. But yeah, other than that, we should all be using.. oh, I don't know, scala or haskell or something like that.

hvs 4 days ago 3 replies      
Every time I look to use C++ for something, I come away with the knowledge that I will never know the right way to do it in C++. At least with C I know where I stand.
CCs 4 days ago 7 replies      
Not an easy read for C++ fans like me, especially since it is coming from Bartosz Milewski.

I did try out several other languages and I keep coming back to C++11 for anything that requires scalability and raw performance, like APIs. The same basic server that gets 400 req/sec when implemented in C# ASP.NET achieves 7900 req/sec using C++.

So far I could not find a programming language that does not have similar (or worse) scissors. It's more like "pick your poison" type of choice.

After I learned Scala, my C++ code started to look like functional programming. According to Bartosz that's a good thing, and I did not have to dive into Haskell (yet). :)

wwweston 4 days ago 0 replies      
"Ask any C++ guru and they will tell you: avoid mutation, avoid side effects, dont use loops, avoid class hierarchies and inheritance. But you will need strict discipline and total control over your collaborators to pull that off because C++ is so permissive.

"Haskell is not permissive, it wont let you or your coworkers write unsafe code. Yes, initially youll be scratching your head trying to implement something in Haskell that you could hack in C++ in 10 minutes. If youre lucky, and you work for Sean Parent or other exceptional programmer, he will code review your hacks and show you how not to program in C++."

For those who aren't familiar with Parent, watch this talk:


which introduced me to Stepanov's "Elements of Programming" and the idea that I could be working with better/more reliable/provable abstractions in C++.

That said... after a few weeks of shallowly digesting the material, I started thinking pretty much like Milewski says above: it's great if I can learn to write better C++, but if what I really want is to escape from its specific dangers and general common programming pitfalls, something like Haskell seems like a better bet.

zvrba 4 days ago 0 replies      
> But you will need strict discipline and total control over your collaborators to pull that off because C++ is so permissive.

Except it's not. The key is proper encapsulation into classes and generous use of private instance variables.

The real problem is social: people want to get something done quickly, so instead of talking to the original author[1], they put a new method in the class (or declare a friend) and happily continue hacking, without thinking of far-reaching consequences of whether unrestricted (that's what public is) use of the newly introduced method violates class invariants in some way.

[1] I'm aware that the original author might not be there anymore. Which makes a good case for documenting design and intent of the code. A QA matter.

How does Haskell solve the social problem (directly hacking something into a module you don't own or fully understand)?

> What you dont realize is that it will take you 10 years, if youre lucky, to discover the right way of programming in C++

IMO, only novices and beginners look for "THE right way". Advanced people realize that the "right" way depends on the broad context and look for (the) best compromise solution among a spectrum of solutions.

I believe this holds for other computing-related things (designing a LAN, database tables, etc.), as well as real life (sports, martial arts, even everyday things like sitting and walking as any person who has had a lower back problem will tell you).

The problem is again social: novices and beginners who refuse to "grow up" and who know just enough to be dangerous: they can produce working but messy code, and refuse to learn other ways of doing the same thing in an appropriate context. (E.g. when to use while vs for, or why copy-pasting large chunks of code between different functions is generally "bad".)

Somehow I'm not convinced that Haskell is the magic bullet which solves the underlying social/human issues.

> Haskell is not permissive, it wont let you or your coworkers write unsafe code.

He never defines what "unsafe" is. Mutation is not unsafe per se.

> Dont be fooled: accessing atomic variables is expensive.

I've seen recent slides where the measured cost of an uncontended locked cmpxchg on Haswell was ~20 cycles vs ~5 cycles unlocked. This is NOT expensive, unless unnecessarily you replace all memory accesses with their atomic equivalents.

> Most importantly though, threads are not a good abstraction for parallel programming

No, but they are an essential building block.

> Haskell is way ahead of the curve with respect to parallelism

First, a computation can be abstraceted into a data dependency graph.

Now, the reason that most of today's applications don't benefit a lot from the vast number of processors available is not that the underlying programming is somehow unsuited for parallelism.It is because that there IS NO parallelism available in these applications: data dependency graph is mostly serial, and if parallelism is available, it is on such a small scale that superscalar CPUs already make use of the large part of it.Also, with overly fine-grained parallelism you WILL end up in a situation where the overhead of atomic operations becomes non-negligible, even if it is only ~20 cycles.

I believe that if people more often thought about their designs in message-passing terms, the dependency graph would also emerge, and they would see that there often is very little parallelism to extract through explicit parallelization. (Note that writing to a shared variable is just an extremely simple and efficient method of sending a message).

This was also remarked on by Knuth: During the past 50 years, Ive written well over a thousand programs, many of which have substantial size. I cant think of even five of those programs that would have been enhanced noticeably by parallelism or multithreading. [http://www.informit.com/articles/article.aspx?p=1193856]

So, IMO, easier coding for shared-memory parallelism is one of the worst reasons to switch programming languages.

That's why I personally prefer Erlang-style concurrency (actors). Communication patterns and parallelism granularity is explicit, and communication cannot be decoupled from synchronization. [With shared variables, these two are decoupled.]

lelandbatey 4 days ago 2 replies      
Big side note, but C++ for me is just... too much. I come to C++ from Python, and they are just so far from each other it hurts. One of the fundamental things about Python that I loved was:

    "There should be one-- and preferably only one --obvious way to do it."
Meanwhile, the sage wisdom I heard learning C++ is:

    "C++ is wonderful because there are so many ways to do anything."
These two methods of thought fly right in the face of each other, and it's very hard to reconcile. With Python, I felt like I truly was learning a language, a language of action where doing any one thing was consistently defined. With C++ I feel like I'm in an ocean of choice and ambiguity, having to carry around this huge load of tribal knowledge to get anything done.

Not saying it's a bad language, just sharing my feelings on it.

seanalltogether 4 days ago 0 replies      
John Carmack wrote a very interesting post about this same topic. http://www.altdevblogaday.com/2012/04/26/functional-programm... To sum it up, he's still writing code in C++, but it has become less and less like C++. His code has become less OOP and more functional.
austinz 4 days ago 0 replies      
Regarding his assertion about reference counting: Apple's implementation of ARC for Objective-C doesn't handle cycles (it requires the engineer to reason about weak and strong references in order to prevent memory leaks), but it is certainly a "serious" implementation. The fact that it doesn't have facilities for detecting and releasing cyclic references makes it definitely not the "other side" of the GC coin.

That being said, ARC-style reference counting is more limited in terms of what developers can do with their code, and it may not be a general enough solution for a language like C++ (which strives to be all things to all people). Weak pointers in Objective-C also require runtime support, which could probably not be appropriate for high-performance applications in many cases.

millstone 4 days ago 1 reply      
> The power of multicore processors, vector units, and GPUs is being squandered by the industry because of an obsolete programming paradigm.

Its worth addressing these in turn. In reverse order:

I dispute that the C paradigm squanders GPUs. OpenCL and CUDA are the two most prominent languages written with GPUs in mind, and both have a lot more in common with C than with Haskell. In particular they eschew functional mainstays like recursion, linked lists, and garbage collection. So for GPUs, it seems like the ideal paradigm is closer to C than Haskell.

For vector units, theres some recent excitement about auto-vectorization in Haskell. But Im skeptical about the potential of auto-vectorization in general, since it only seems to apply to simple loops, and cant take advantage of all instructions. Most effectively vectorized code uses either compiler intrinsics or outright assembly, and I dont see that changing any time soon (Id love to be proven wrong on this though).

Lastly, multicore processors. C++11 more or less standardized the creaky POSIX threading model, with some additions like thread locals - hardly state of the art. I wonder if the author is familiar with other approaches, like libdispatch, which provide a much improved model.

One last observation. Parallelism is not a goal! Improved performance is the goal, and parallelism is one mechanism to improved performance. If your Haskell program runs at half the speed of a C++ program, but scales to twice as many cores so as to make the overall time equal, thats not a wash: its a significant win for C++, which did the same thing with half the resources (think battery drain, heat, other processes, etc.) Horse in front of cart.

Gupie 4 days ago 0 replies      
> C++ solved the problem of redundant casting and error- > prone size calculations by replacing malloc and free with > new and delete. The corrected C++ version of the code> above would be:> > struct Pod {> int count;> int * counters;> };> > int n = 10;> Pod * pod = new Pod;> pod->count = n;> pod->counters = new int [n];> ...> delete [] pod->counters;> delete pod;

The 'corrected C++ version of the code' is actually:

std:vector< int > pod( 10 );...

I didn't bother reading any further.

roel_v 4 days ago 1 reply      
I'd consider myself a 'C++ programmer' - I've used it for years, it works very well for me for what I do with it, etc. However, what I find most frustrating is that nothing is intuitive. And there is always a reason for why it is like that, I know. My favorite example is the erase/remove idiom.

Anyway, here is a question about C++. Last week I tried to implement a parser for a subset of CSV - one-byte-per-character, fields separated by comma, no quoting, fixed line ending. The only requirement was speed. So I started with a simple C++-style implementation, read one line at a time with std::getline, split with boost tokenizer, copy into vector of vector of string. But it was too slow, so I reimplemented it C-style - boom, first try, 30 times faster. Through some micro-optimisations I got it 30% faster still - copying less, adding some const left and right, caching a pointer. So if anyone is so inclined, how would I make the following more C++-ish and still get the same speed? Using fopen and raw char* to iterate over the memory buffer are what I'd consider the non-C++ aspects of it, but feel free to point out other idiom violations...

    bool CsvParser::OpenCStyle(boost::filesystem::path path)    {      FILE* fh = NULL;      ::fopen_s(&fh, path.string().c_str(), "rb");      if (fh == NULL) {        return false;      }      const int BUFSIZE = 1024 * 256;      char buf[BUFSIZE];      m_Records.reserve(m_EstimatedRecordCount);      bool at_end_of_file = false;      std::string carryover_field_data;      std::vector<std::string>* current_line = NULL;      bool at_new_line = true;      const char separator = m_Separator;      while (!feof(fh)) {        size_t size_read = ::fread(buf, sizeof(char), BUFSIZE, fh);        char* start_of_field = buf;        size_t i = 0;        for (i = 0 ; i < BUFSIZE && i < size_read ; i++) {          if (at_new_line) {            m_Records.push_back(std::vector<std::string>());            current_line = &m_Records.back();            at_new_line = false;          }          if (buf[i] == separator || (at_new_line = (buf[i] == '\n'))) {            current_line->push_back(std::string());            if (carryover_field_data.size() != 0) {              std::string field(start_of_field, &buf[i] - start_of_field);              m_Records.back().push_back(carryover_field_data + field);              carryover_field_data = "";            } else {              current_line->back().assign(start_of_field, &buf[i] - start_of_field);            }            start_of_field = &buf[i + 1];          }        }        carryover_field_data = std::string(start_of_field, &buf[i] - start_of_field);      }      fclose(fh);      return true;    }

njharman 4 days ago 1 reply      
I looked at the banner and could think of nothing but "Hello. My name is Inigo Montoya. You killed my father. Prepare to die."

I'm sorry and deserve to be downvoted.

sanskritabelt 4 days ago 1 reply      
Whenever I see people comparing C to assembly I automatically assume they don't know anything about (a) C or (b) any kind of assembly.
outside1234 4 days ago 1 reply      
codex 4 days ago 1 reply      
The author now works for a Haskell company; perhaps this helps explain his changing attitudes towards C++. Or it could be a result of them.
JanneVee 4 days ago 1 reply      
> Yes, initially youll be scratching your head trying to implement something in Haskell that you could hack in C++ in 10 minutes. If youre lucky, and you work for Sean Parent or other exceptional programmer, he will code review your hacks and show you how not to program in C++.

Don't underestimate "instant gratification" even when it comes to programming languages. Yes you might code yourself into a mess further down the line, but most of us are in the business of shipping software not worrying about its correctness.

rob05c 4 days ago 0 replies      
C++: an octopus made by nailing extra legs onto a dog. Steve Taylor


dsego 4 days ago 0 replies      
C++, the language programmers love to hate :)If you'd like to read some more C++ bashing: http://yosefk.com/c++fqa/
MichaelMoser123 4 days ago 0 replies      
Haskell is creating a new value for every parameter / function return value; That means that even for trivial tasks it is churning over non trivial amounts of RAM; the footprint of a Haskell program is therefore rather large; I guess that makes it rather impractical for real systems.

But of course, this one is an interesting observation:"If nature were as serious about backward compatibility as C++ is, humans would still have tails, gills, flippers, antennae, and external skeletons on top of internal ones they all made sense at some point in the evolution."

I guess C++ is like Perl: for many things there is more than one way to do a thing; Don't like exceptions? Disable during compilation and code as in C with error codes; That's what makes the whole thing malleable; the right kind of flexibility is a winning feature.

static_typed 4 days ago 0 replies      
The problem is not that C++ is hard, it's that Haskell doesn't solve the same kind of problems.

We would all love programming to be easier, for the compiler or interpreter to just know what we really meant, rather than what we actually typed, but sometimes the tools are sharp, are a bit more manual, exactly because they offer more control.

The constant sell of Haskell or Go as the panacea for all programming problems is like someone else telling us all to adopt socks made of rubber - a few make like that, may even blog and evangelise about it, but the rest of us find it uncomfortable and annoying.

eonil 4 days ago 3 replies      
"Its a common but false belief that reference counting (using shared pointers in particular) is better than garbage collection. There is actual research showing that the two approaches are just two sides of the same coin."

Yeah. But RC is at least deterministic and controllable side. Also, RC is just one of options of C++, while you can implement GC yourself in C++ without any overhead unlike any memory management method on GC.

xerophtye 4 days ago 1 reply      
C++ Novice Question: Why are for loops bad? (as mentioned in the article). What's the alternative?
detrino 4 days ago 3 replies      
His entire rant about resource management is misplaced. It's not that new/delete/pointers are "bad" or retained only for backwards compatibility, they are primitives from which other abstractions are built. I don't think its too much to ask professionals understand simple concepts such as RAII, which renders his entire example trivial.
mtdewcmu 3 days ago 0 replies      
"...avoid class hierarchies and inheritance..."

I love hearing this from OOP insiders. Virtual functions are particularly awful to track down, and are probably worse than GOTO ever was. At least GOTOs only went to one place.

general_failure 4 days ago 1 reply      
Brilliant, just brilliant. I found myself laughing and nodding all the way.

The sad situation is we have no worthy competitor. Go?

AsymetricCom 4 days ago 1 reply      
I'd rather Edward than Samuel Boxingglovehands
fleitz 4 days ago 3 replies      
Fucking backwards compatibility, let shitty code keep using shitty compilers while the rest of us move forward.

There comes a time when no one uses a feature anymore so it might as well be dropped. How many of you still have floppies on your computer?

Fairfax strikes $4.7-billion deal to buy BlackBerry theglobeandmail.com
231 points by sbarre  21 hours ago   109 comments top 24
cs702 21 hours ago 13 replies      
Fairfax Financial is run by Prem Watsa, a cautious, methodical, "value" investor who has compounded Fairfax's book value by nearly 23%/year over the past 27 years.[1] (Fairfax's stock price has gained 19%/year over the same three-decade period.) His approach and track record are similar to those of Warren Buffett earlier in his career -- i.e., not someone one should normally bet against.

If Fairfax is offering to pay $4.7 billion to acquire RIM, Mr. Watsa somehow must have convinced himself that the value of RIM's business exceeds $4.7 billion by a large margin.

However, to me Blackberry looks like a dying platform suffering from anti-network effects (that is, fewer and fewer people use it, so fewer and fewer people want or need to use it). I don't understand how he gets comfortable with that number.


[1] See page 8 of Fairfax's last annual letter to shareholders: http://www.fairfax.ca/files/Letter%20to%20Shareholders%20fro...

JumpCrisscross 20 hours ago 0 replies      
Fairfax Financial Holdings (TSX: FFH) is an $8.3 billion property and casualty insurance company. They are an acquisitive bunch, having spent $4.7 billion on deals since 2011 (37% of their enterprise value as of 30 June 2013 or 57% of their market capitalisation as of today). All their acquisitions since 1997 have been in the banking, insurance or shipping/transportation spaces, with the exceptions of EFI Global (environmental services).

Their CEO, Prem Watsa, is a value investor. Fairfax's IRR is around 20% - this means Blackberry needs to yield about $840 million in cash a year to tread water. That seems unlikely. Instead, I think we will see a spin-off of the handset business and patent portfolio with a retention of the cash-flow generating service business.

What's the service business worth? It made $3.2 billion annualised the last quarter (Q2 FY 2014), $3.9 billion in FY 2013, and $4.1 billion in FY 2012. Let's assume it keeps declining at 8% a year. Let's further assume it can return at least the entire company's FY 2013 40% gross margin. Guess what 40% of $2.9 billion declining at 8% annually and discounted at 20% is worth over the next 10 years? $4.7 billion. Thus, if decline can be maintained at no more than 8% while margins are maintained at 40% and the cost of capital capped at 20%, the handset business, patent portfolio, and any terminal value after 2023 are freebies.

chollida1 19 hours ago 1 reply      
I worked at another Canadian company called Corel back in 2002 that went through a similar takeover. Company with a large cash position relative to the take over price, taken private by a Fund with the intention of being taken public again in a few years after costs were under control.

If that experience was any indication of whats to come then life at BBRY is about to become atlot less fun.

When a fund comes in they have a window for which they want to see a return( ie go public again or sell). In such cases any expense that can't be directly traced to adding to the bottom line will be mercilessly cut.

Good by Friday afternoon beers, employee sports teams, Christmas parties, bonuses, T-Shirts, etc.

The MO for takeovers like this is similar to a house flipper, they aren't looking to do the right thing for the long term, they'd rather do what can be done to make things look good for the next 2-3 years.

They understand( or believe) that employees will stick around in the short term( and put up with this stuff) if they believe an IPO is only a few years away.

As someone who sits on the other side of the table now at a fund, I've seen it happen from both sides now.

antr 21 hours ago 1 reply      
"Tentatively sold" is the worst description ever for what is really happening.

BB has just received an offer, the board has now approved this, but needs to advise shareholders if this is a fair or not offer, dd is pending, and shareholders have to decide yes/nor by tendering their shares... add to that to the possibility of more offers being made, making this entire thing last months (a la Dell et al).

Source: http://press.blackberry.com/press/2013/blackberry-enters-int...

mililani 20 hours ago 2 replies      
Ugh. I know Fairfax VERY well. Prem Watsa is often called Warren Buffett of the North, and he may very well be. He's a great investor, and has done VERY well in investing the float of their insurance business. But, BUT, I think he's way in over his head here. Buffett himself will not touch technology companies, or businesses he doesn't understand. He has also said the technology world is way too competitive, and that there is hardly a "moat" that can protect a business from competition, etc... I don't understand why Prem is going after Blackberry. It is clearly in one of the most competitive spaces in technology, and there is no good crystal ball to see what the future holds. I mean, for every Apple, there are lots of companies like US Robotics.

It is why I shy away from technology companies with my investments.

mindstab 20 hours ago 2 replies      
sooo... it seems partly for emotional reasons

Were trying to make sure it remains in whole in Canada"

that is not a business reason

"we have every confidence it will be successful again,

based on?

"There are no strategic players, or other technology firms, in the consortium."

so... a bunch of non technical players want to try and save a dying tech company for emotional reasons?

unless I'm missing something it might seem like a good idea to run away from that deal and fairfax at a pretty good speed.

i mean blackbeerry just announced hilarious losses for q2, dropped 4500 staff and just announced "pulling out of the consumer market to focus on enterprise"... it seems they are deeply failing to learn from the lessons of the iphone 7 years ago now. they always were a more enterprise phone and that was still not enough to save them from being cannibalized first from iphone and now android. hell even now windows phones makes better sense because it will tie in with your windows outlook, etc infrastructure better in your standard microsoft office.

am I missing something? thoughts?

runako 21 hours ago 5 replies      
In context: Apple likely made more than $4.7B in revenue from its weekend iPhone launch.
runarb 20 hours ago 2 replies      
The bid is US$9 per share, but it traded at $10.50 around the announcement?[0] Are they really going to get away with paying below last marked price...

0: https://www.google.com/finance?q=BlackBerry&ei=64NAUpDFA8OXw...

lambersley 21 hours ago 1 reply      
Its a(nother) sad day in tech-Canada. You don't have to like their products to appreciate how they change the mobile landscape.
lesbaker 21 hours ago 0 replies      
Hopefully this means that BlackBerry will survive in some form and have a future. Their recent phones and version 10 OS have a lot of merit, and I enjoy using and developing for them.
steveplace 19 hours ago 0 replies      
Back in 2012 I figured that the total value of cash + patents got us a share price of around 8 bucks, so I guess that seems about right.


yalogin 20 hours ago 1 reply      
I really hope this is not a front for a patent troll. I know 4.7B is a lot for a patent troll to spend but the most valuable assets BB holds right now are its patents. A tech player is not going to (rather should not) buy BB because a negative momentum is much more dangerous than a non-existent one.
canistr 20 hours ago 0 replies      
Let's be clear, Fairfax 'buying' BlackBerry given Prem Watsa was on BB's board is akin to saying Dell was 'sold' to Michael Dell.
Pxtl 18 hours ago 0 replies      
Crap. I was hoping for an investor that actually had some kind of real plan, some technical synergy they could offer... Facebook or Sony or Canonical or something.
lmg643 21 hours ago 0 replies      
very interesting move. i currently have both a blackberry for personal and work (yeah, one of those guys). i am converting the personal blackberry to an iphone, and the work to the q10. the iphone arrives tomorrow. i've been waiting a month for the q10. i still have high hopes for the q10 device but the only thing i get out of blackberry is the keyboard, and cloud synching of notes from the device on an enterprise account. i don't think it's enough.
denzil_correa 17 hours ago 0 replies      
The deal is not done as yet - there are "terms" to be discussed as well as 6 weeks of time. It only has a letter of intent from Fairfax in which shareholders would receive $9 per share in cash.
mpg33 20 hours ago 0 replies      
Irregardless of this deal...I'm still skeptical of where BlackBerry goes from here. They said they are out of the consumer handset market yet the consumer handsets were what gave BlackBerry those huge revenues/profits.

The corporate-only strategy I read about seems like if even successful would be much smaller in scope. There seems to be no real idea of what BlackBerry has to offer anymore??

rdl 19 hours ago 0 replies      
I hope this doesn't cause them to patent-troll with the Certicom ECC patents.
bond 18 hours ago 0 replies      
Time to put Android on those phones...
GavinAnderegg 20 hours ago 0 replies      
I hope this works out well for everyone involved. I also hope that Fairfax leaves Blackberry alone if the deal goes through. I say this judging ONLY by the state of Fairfax's website: http://www.fairfax.ca/
xbeta 20 hours ago 1 reply      
On a side story of the same article, I saw this :BlackBerry bought private jet months before layoffshttp://www.cnbc.com/id/101053908
gremlinsinc 17 hours ago 1 reply      
why not use their resources to help build the new Ubuntu Mobile phone that was on kick starter it would be a huge in demand project with a lot of buzz...Ubuntu knows software blackberry hardware could be An interesting marriage.
xux 20 hours ago 1 reply      
Just wondering, why would an Insurance company buy BlackBerry? What are they planning to do with it?
rocky1138 21 hours ago 3 replies      
OK, let's start guessing who Fairfax is :)
Less is exponentially more (2012) commandcenter.blogspot.de
228 points by MrBuddyCasino  4 days ago   273 comments top 50
Wilya 4 days ago 13 replies      
I find it amusing that there isn't a single word about runtime performance in the whole essay.

In the end, when I code in C++, it's because I believe my code will run faster and generally use less resources, and I'm ready to accept the sacrifices it takes (in terms of my own time) to get there. Does it make me someone for whom software is about "doing it in a certain way" ? Probably. If that certain way is "performance" for problems where it matters, I'm even proud of it.

C++ programmers don't come to Go because it turns out Go doesn't shine on problems where C++ was the answer. Simple as that, and there's nothing wrong with that, as long as Go found its niche and solves some problems relevant to him. I'm not sure I see why Rob Pike needs to be so dismissive.

krosaen 4 days ago 8 replies      
"C++ programmers don't come to Go because they have fought hard to gain exquisite control of their programming domain, and don't want to surrender any of it. To them, software isn't just about getting the job done, it's about doing it a certain way.

The issue, then, is that Go's success would contradict their world view."

This, "they can't handle how awesome it is" is kind of a fun rationale and strikes me as plausible, but it would be more interesting to me to hear from some of the stellar c++ programmers at google as to why they aren't interested in switching.

C++ was the first language I really invested in mastering during and after college - it was like, "all I need to do is read these 5 books about how to avoid the pitfalls and use all the powerful tools, and it's amazing!" What really changed my mind was trying other languages (first python) and seeing how immediately productive I could be without so much as skimming through the "dive into python" website. So specifically, I'd be interested in hearing something from an expert C++ programmer who has really given go a try and decided it's not their cup of tea.

tinco 4 days ago 3 replies      
If C++ programmers were attracted to making their language more elegant and safe yet more powerful at the same time they would have switched to any of the statically compiled, typesafe, managed languages years ago.

If Rob Pike was doing things in C++ that Go could also solve, that means he could've done them in C# or in Haskell too, which means he shouldn't have been doing them in C++ in the first place. (Strousup explains why in his recent GN keynote if you doubt that)

Of course solving that problem by inventing a new interesting language without any of the (psychologic) baggage those other languages is awesome. It seems to be rather succeful, but it's naieve to think that it would attract C++ programmers, there's just nothing in there for them. The C++ programmers who are looking for change have more to hope for in for example Rust.

lnanek2 4 days ago 2 replies      
Well, he admits he was never very at ease with C++, so I guess he can be forgiven for not understanding very few C++ programmers are going to jump into a garbage collected language. If they were, they would have moved long ago. Most of the times you need C++ nowadays are because a GC language simply won't do.

Kind of silly he drew up his language based on one Google need and thinks everyone using C++ should just jump aboard, though. He acts like he studied why people were writing in C++ and took their use cases into account instead of just his own. Kind of a stereotypical engineer who writes an app for themselves that utterly fails in the consumer market because it is written by coders for coders with weird controls.

simias 4 days ago 2 replies      
There is one feature of go that prevents me for considering it when I want to write "low level" code: garbage collection.

It's probably very silly but in my mind that puts it next to Java, above C and C++ in the "grand scale of programming languages".

Oh, and also I don't like garbage collection, so there's that. I'm sure some day someone will explain to me what's the point of it because I still don't get it.

epi8 4 days ago 1 reply      
"C++ programmers don't come to Go because they have fought hard to gain exquisite control of their programming domain, and don't want to surrender any of it....The issue, then, is that Go's success would contradict their world view."

No it won't! I'm excited about Go. What I've read about it makes it look like a language I would love to work in, some day. However, I don't think the problems I'm solving now are the problems Go is good at solving. The programs I'm writing run on one machine with restricted memory, and they need to be highly, highly performant. The execution time is measured in tens of milliseconds, and during that time we do a lot mathematics and processing. SIMD is our close, beloved friend. In that context, I don't think Go is an appropriate language, due to its garbage collector, its lack of precise control over where objects go in memory, and the overhead of method calls. But if I ever write code similar to that written by Google, C++ would be a terrible choice.

I was all on board with what he was saying until that last little jab. I'm not migrating to Go because I have problems that Go doesn't set out to solve, but I'm not threatened by Go, because it's just another tool. Having more high-quality, carefully-designed tools is never a bad thing, and I can't imagine ever being threatened by a new tool's success.

Honestly, this smacks of more divisive bullshit. Pythonistas vs Rubyists, VIM vs Emacs, and now, Go vs C++. Blurgh.

mietek 3 days ago 2 replies      
Once again, Rob Pike speaks about generics and types in terms of C++ and Java, without acknowledging any other languages with static type systems, some of which are more expressive, less verbose, or both.

Surely Rob Pike is not ignorant of ML (1973), Ada (1980), Eiffel (1986), Oberon (1986), Haskell (1990), OCaml (1996), C# (2000), and F# (2005)?

See also the comments on http://research.swtch.com/generic

Mikeb85 4 days ago 2 replies      
C++ programmers don't go to Go because Go occupies the space otherwise taken by Java.

The only real, modern alternative to C++ is Rust, but it's not at 1.0 yet, meanwhile C++ is still getting new features, all the while preserving compatibility.

canthonytucci 4 days ago 1 reply      
For those who don't know who Rob Pike is, he's pretty awesome, helped create UTF-8 among other things, and now works on Go.


He has given some really great Go talks which are available on youtube, about an hour each:

Origins of Go Concurrency Style - http://www.youtube.com/watch?v=3DtUzH3zoFo

Lexical Scanning in Go - http://www.youtube.com/watch?v=HxaD_trXwRE

Go Concurrency Patterns (One of my favorites) - http://www.youtube.com/watch?v=f6kdp27TYZs

jacques_chester 4 days ago 1 reply      
Most programmers aren't in the latest-language bubble. Hell, my main earning language right now is PL/SQL, which limped out of the shadow of Ada, minus all the interesting bits, clutching hideous licence fees.

The reason Ruby and Python programmers have embraced Go is because they tend to be in the latest-language bubble.

The actual properties of the language are probably nearly totally inconsequential, except as bright lights that attract a certain sort of mind to it.

nimrody 4 days ago 0 replies      
We are all waiting for Mozilla's rust to mature. Rust seems more in-line with C++'s "you only pay for features you use" and more general purpose.

I wouldn't use go for numerical simulations but it certainly shines for writing network servers.

nikic 4 days ago 0 replies      
Imho the main thing C++ offers are cheap abstractions. In C++ you can easily build abstractions that do not have any runtime overhead at all. You can write beautiful and general code and still not sacrifice a single cycle for it. Go doesn't offer that, not in the least. As such I think that Go and C++ simple have a very small intersection when it comes to use-cases.
nfoz 4 days ago 1 reply      
Actually I've looked at Go and it seems like a really shoddy step forward (as opposed to say D), but thanks for being so condescending about it.
nly 4 days ago 0 replies      
Less is more, but my ideal 'less' probably isn't your ideal 'less'. That's why we need more... so we can all have less.

C++ covers many domains and programming styles really well. Just because it doesn't cover some as well as some other language, it doesn't mean C++ as a whole is a lost cause. This is true no matter how many domain experts and language advocates attack it. It's C++s huge scope that opens it up to attacks from every corner in the first place.

Frankly I'm getting tired of reading articles from people who think they can proclaim "what C++ is about" any more than I can proclaim "what Go is about" or "what Python is about". Even Bjarne himself admits he doesn't know all the ways in which people use C++, and that's how he likes it.

penguindev 4 days ago 2 replies      
What really gets me about go is that it's lame, manual error handling sucks, causing it to be smack dab in a middle area between my current languages of c++ and python. If you don't believe me, note that golang.org's home page example lacks error handling (huge fail).

In c++, I like the predictable destructor model of memory cleanup, and am willing to pay the manual error checking price (too scared to write exception safe code in c++). But I like to put as much complex logic in python code, due to its nice exception handling and GC.

If GO had a more flexible exception model, which by the way does not require forward jumping try/catch constructs, making it easier for people to write 'crash only' error handling without boiler plate, I might consider it. But for me, it's currently typecast as a firmly middle of the road feature set.

debacle 4 days ago 0 replies      
I think a lot of programmers don't come to Go for the same reason that I don't see myself ever using the language - it's far enough from a C-like language in syntax and ideology that it's not easy to move from the C family to it, and it has some "features" that I do not consider features. Those features make it taste like an academic language, what isn't what I'm looking for in a programming language.

Rust seems very different in that regard, and I look forward to being able to use it in production when the time is right.

jlarocco 3 days ago 2 replies      
I've tried Go for some small stuff and read through "Programming in Go". I want to like it, but it just doesn't work for me. It's at an awkward position half way between C++ and Python. Knowing both C++ and Python, I don't see a convincing reason to use Go.

IMO, part of the reason C++ programmers aren't interested in Go is that C++ is, arguably, the most difficult language to learn. If you're really good with C++ you'll figure out most other languages fairly easy, and probably already know a few languages before going to C++. So I would expect most C++ programmers already have a "go to" scripting/interpreted, high level language that they know and like. And in that case Go just doesn't offer anything they don't already have.

rachelbythebay 4 days ago 0 replies      
In a corporate environment (particularly that corporate environment), the option of enforcing "we don't have to use the whole buffalo" exists. That is, you can say "these parts of C++ are off-limits for this code base", and be reasonably sure it will stick. See also: exceptions.

You could do that. Or you could go write a new language and further scatter the masses.

pfortuny 4 days ago 0 replies      
So it seems that C++ programmers are a bunch of silly self-centered people who cannot think as good engineers because somehow they have all been brainwashed (probably by Stroustrup). That is how I read it.

Ah, by the way, did anyone mention garbage collection?

akkartik 4 days ago 2 replies      
bloodorange 4 days ago 1 reply      
"Less is More" works when you have fewer components but you can assemble them together in various combinations to do everything you could otherwise do with more components.

However, when you have fewer components which can't be combined to achieve certain things that you could do earlier, it is hard to see how you can then say "Less is More".

Coming from game development RAII is a blessing. Not having control of memory deallocation is will not sell. This is definitely not a case of "Less is More", it's a case of "Less is Less".

qznc 3 days ago 1 reply      
Rob Pike did not aim to replace "C++", but "C++ as he used it at Google". Looks like he succeeded at that. For those problems garbage collection is a good idea (did the C++ guys try Boehm?) and compilation time is critical. From the article: "We weren't trying to design a better C++, or even a better C. It was to be a better language overall for the kind of software we cared about."

I agree with most of what Pike says until the end,where he derides C++ programmers:

"C++ programmers don't come to Go because they have fought hard to gain exquisite control of their programming domain, and don't want to surrender any of it. To them, software isn't just about getting the job done, it's about doing it a certain way. The issue, then, is that Go's success would contradict their world view."

This is just wrong. They do not come, because Go simply does not fit the requirements. Go is more opinionated and targets a smaller niche than C++. Nothing wrong with that. If Go and C++ both fit your requirements, Go is probably the better choice.

The only language I know, which explicitly targets C++ is D, but it is not there yet completely. Though, depending on your needs it might enough and it is an improvement over C++.

programminggeek 3 days ago 0 replies      
I'm not a C++ guy, but I will say the most interesting thing about Go to me is that it's a smallish, clean, staticly-typed language that gives a great day-to-day development experience. It also comes with a lot of nice tools for formatting code, documentation, dependency management, etc.

Switching from Ruby or PHP is pretty easy because you get the same (or better) developer experience with excellent performance and nice built-in libs. For writing web services, Go is pretty much ready to roll out of the box.

I think writing Go is fun. I'm not sure that it matters why other programmers do or don't like Go. I think it's great.

skriticos2 4 days ago 0 replies      
Somehow I miss the biggest advantage of C++ here: you can still maintain a 20 year old code-base without a complete rewrite.
static_typed 4 days ago 1 reply      
Simple answer - if we wanted something slower than C++, then we already have Java. If we wanted some more dynamic we have Python. If we wanted something more Brogrammer style, we have Ruby, so what fit is Go good for?
dbcfd 4 days ago 0 replies      
I'm a serious C++ programmer, and I'm also in the Rust boat, rather than the Go boat. I've tried Go. More than once. And each time, I feel really restricted. I feel like I have to solve problems a certain way, rather than the way that fits the problem. With C++, I have multiple approaches to solve a problem, and can choose the one that offers the best trade off of performance and maintainability.

For now, if I'm really wanting concurrency, and don't feel like C++ is doing what I need, I'll grab Java/Scala with Akka. They allow me to create a solution tailored to a problem, rather than tailoring a problem to a solution.

luikore 3 days ago 0 replies      
A language which had aimed for system programing but not fast compared with C++, now aims for web programing but still harder to use than script languages, static typing but no generic types, forces boilerplate in several aspects (exception, assertion) but no meta programing ability to help fix it, weird design decisions dictated by personal experience, has Google helped marketing but still not widely accepted.
Keyframe 3 days ago 1 reply      
Sometimes I feel like I'm the only guy that likes and works in C. Then I see TIOBE index and alike and see C on top always. Are we, C programmers, not vocal or are those metrics skewed in favor of 'legacy' and existing code?
kps 4 days ago 0 replies      
I have similar minimalist sympathies, taking as an ideal Antoine de St Exupery's remark on aeronautical engineering, Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.

The problem with Pike's work, as I see it, is that what it calls 'simple' I see as unnecessary burdens layered on top. A text editor that makes you take your hands off the keyboard? No thanks. I want to edit text, not pictures of text.

FigBug 4 days ago 1 reply      
I still use C++ since there still doesn't seem to be a better option for creating cross platform GUI apps than C++ with Qt. Desktop Apps are no longer 'cool' and other than Qt there doesn't seem to be much happening in the Desktop space. For scripting I use lua since it's a lot easier to embed than Python.
hsmyers 3 days ago 0 replies      
I don't see this as an 'anti' C or C++ article. I see it as an effort to explain (initially to himself) why the phenomena exists. Not sure I agree with all of it but being a C/C++ programmer on micro-computers from the very beginning, much of what is said resonates. I've pretty much be multi-lingual from my start with IBM360 BAL (the programmers version of 'been down so long everything looks like up :) ) That said when I was able to use C (actually a C subset called BDS C [yes BDS does stand for Brain Dead Software]) I immediately set aside PL1, Fortran, Pascal etc. Because I had found a HLA (High Level Assembler) and was as happy as a pig in mud (how happy is that?). That was in the beginning days of the S100 bus and therefore long ago. Since then I accumulated many languages, somethimes for the hell of it (it looked interested), sometimes because the client wished it and sometimes because it was clearly the right choice. The one pattern I've maintained over all of this time is to learn and test the language by writing a parser in it. Not a random one, but a particular problem I was deeply familiar with. The parsing of chess games. It usually winds up a middling tiny sized work of about a 1000 lines and when done I've a reasonable idea of the workings of the language and more importantly how hard it is to write parsers in. Why parsers? Because to paraphrase the wisdom of turtles, 'It's parsers all of the way down...'

This winds up being a windy version of 'I suppose I'll have to try go to see what's what'

raverbashing 3 days ago 0 replies      
C++ (and Java in a sense) are kind of a "local optimum" in terms of languages. Go breaks from that, an it's good. It's not necessarily faster (or slower), it's a different way of seeing things.

So C++ programmers think they need "all the speed" of C++ (ignoring all the cases where it's being slower because of the added complexity that C++ programs end up having) and convincing themselves that's the "only true way"

In some aspects that's true, you really shouldn't go for something outside of C/C++ in the embedded world usually (even though embedded systems are getting faster, but there are several specialist systems slower than your smartphone)

But for most apps today? Thanks, but I would try alternatives first.

eonil 4 days ago 0 replies      
Less is more. No data mutation. No ordered execution.Go Haskell.
geertj 3 days ago 0 replies      
Hopping on my soap box here.. I'd think that the word "exponentially" is used incorrectly in the title. The trend to use cool math terms in everyday language is a something that has been going on over the last few years. It can be very expressive, but it's annoying when it's done in the wrong way.

Something cannot be "exponentially more" than something else. Something can be a factor more than something else (if you have a measure). In this case, if you want to use a cool math term, then you could say something is an order of magnitude more than something else.

The correct way to use the adverb exponentially would be to apply it to a development or a progression. For example, "Moore's law predicts that we'll have exponentially more CPU power in the future", or "This problem gets exponentially harder if the input size increases linearly". It applies to something that changes with an ever increasing rate, not to any specific values in time.

bjoernbu 4 days ago 0 replies      
I'm currently a C++ programmer that does not intend to change to go because I want to have exquisit control.

However, this is not because of my views or something like that but because I'm only a C++ programmer at the moment, because I need that kind of control for my current work. If I want to publish a paper or argue on specifics of algorithms and data structues, e.g., like cache efficiency, it is highly convenient to know as much as possible about what your code does in detail and to have the opportunity to force a particular behavior.

The next time I'll be asked to get a complex problem solved somewhat efficiently (I did write a lot of java code before starting to dive into C++ 3 years ago), I might look into go. But as long as the specifics of my solution are "the job", I can still focus on getting the job done but choose C++ over Go.

New C++ features are always nice, because I don't have to use them all and can cherry-pick whatever is more convenient to achieve what I want

aurelius 4 days ago 0 replies      
TL;DR - Rob finally realized Go is a flop, and nobody wants to use it for serious programming work. So, he whines about it, and blames C++.
RogerL 3 days ago 0 replies      
Performance is important in another way (I'm referencing the C++ vs go performance discussions here, more than the OP). The more performant you are, the fewer watts you burn. This means phone batteries last longer, and google data centers require fewer power substations. It's a nontrivial concern at any scale. I find blithe 'throw more cores at it' statements rather questionable ecologically.
saosebastiao 3 days ago 0 replies      
Sometimes you need complexity or extreme performance, and sometimes you need it to stay out of your way. Go sacrifices the latter value for the former value. D and Rust have far more potential to woo C++ programmers.
detrino 3 days ago 0 replies      
"C++ programmers don't come to Go because they have fought hard to gain exquisite control of their programming domain, and don't want to surrender any of it. To them, software isn't just about getting the job done, it's about doing it a certain way."

Nobody can speak for all C++ programmers, but I think the biggest drawback of a transition from C++ to Go is a lack of abstraction power. Not having Generics/Exceptions/RAII is just painful.

CmonDev 3 days ago 0 replies      
"I believe that's a preposterous way to think about programming. What matters isn't the ancestor relations between things but what they can do for you."

Similarly I can say: "What matters isn't the composition of things but what they can do for you."

Also C++ and Java guys might be coming to Scala instead. Which is not owned by Google.

What is the killer feature of Go that makes it significantly different than C#/Scala or some other popular modern language?

craigyk 3 days ago 0 replies      
What bugs me most about Go is that it is already filled with internal inconsistencies, and since it practically demands idiomatic usage, these aren't easily avoided. In C++ one can at least avoid using "bad" parts and patterns.
asdasf 3 days ago 0 replies      
>Go is, I believe, more expressive than C or C++

Really? Why does it always seem like everything he says about go is designed to make people question his grasp on reality? There is no way to reasonably argue that go is more expressive than C++. You might very well feel that the huge increase in complexity that comes with C++ is not worth the comparatively smaller increase in expressiveness, but pretending go is more expressive is simply absurd.

mseepgood 3 days ago 0 replies      
Didn't we discuss this already last year?https://news.ycombinator.com/item?id=4159703
jamesmiller5 3 days ago 0 replies      
There is cgo which allows one to call into C controlled code. That to me is best of both worlds, working in Go when I need to and memory control when needed as well.
sigzero 4 days ago 1 reply      
"It seems almost paradoxical that other C++ programmers don't seem to care."

It probably doesn't scratch their itch.

bliti 3 days ago 0 replies      
You cannot expect people to replace a language developed and polished over decades with one that barely hit version 1.0. Go is fun to write, has some good ideas, and is a little more readable (in idiomatic form) than C++. But it is new. Once Go has the necessary libraries, and has been thorough tested, then more people will look into it.
transfire 3 days ago 0 replies      
"We didn't figure it all out right away. For instance, it took us over a year to figure out arrays and slices."

And that might be how long it takes me to fully understand the difference.

api 4 days ago 1 reply      
For me it's not about the language. It's about pragmatics.

With C++ I can write code that builds natively using standard tool chains and libraries on Linux, Mac, Windows, iOS, Android, and dozens of other less common platforms.

With C++ I can write something once and then ship it on all those things without worrying (much) about the availability of tooling. If I write it using portable programming techniques (mostly acquired through hard experience) I will not have to do very much porting, and the #ifdef mechanism provides an acceptable way to accomplish alternate code paths on different platforms without compromising cleanliness of the build or performance.

C++ has its uglies, but it's not too bad if one knows it well and avoids various also-learned-through-experience antipatterns.

Go is in fact better than C++, but it's not better enough to justify the hassle or the impact in my ability to ship across umpteen platforms.

This is why everyone still does systems programming in C/C++. Write (a bit painfully) once, ship everywhere.

Other languages like Go, Ruby, Python, Rust, server-side JavaScript, various functional dialects, D, whatever, always achieve success in two areas: specific ecosystems/platforms (e.g. ObjC on Apple, Haskell in the world of high-speed algorithmic trading), and server-side coding. With server-side coding who cares if you can ship, cause you don't. But all the world is not a server, and sometimes you want to hit multiple user bases. For that, only C will do.

I actually think a Go (or any other language) compiler that builds to cross-platform C code with a configure script and a Windows build script would be a worthy development. I know many people hate language-to-language compilers, but this would enable one to write in nifty new language X, build intermediate code, then build that intermediate code with the native tooling of every other damn thing.

The other alternative would be for Google -- if it really wants to push Go -- to put a lot of effort behind porting it to offer good high-quality native tooling for everything and everyone's toaster oven. But Google thinks all the world's a server or a browser (and it is for Google for the most part) so that doesn't seem to be a priority for them.

solomatov 4 days ago 0 replies      
I personally don't like go, because it doesn't have language features, which must be included in any new programming language, I mean generics and exceptions.
EugeneOZ 2 days ago 0 replies      
I'm very dissapointed in Go philosophy... Edpecially about RAII...
BackgroundCheck kennethcachia.com
223 points by zzzsh  2 days ago   29 comments top 17
MarcScott 1 day ago 1 reply      
I'll start by saying that I think this is pretty cool and clever, and pretty useful for text. It works great on Safari.

I should however add, that while moving the elements over the picture, I didn't once lose sight of my cursor, as it is black with a white outline, which seems to be a much simpler solution to the problem.

andrewvc 1 day ago 6 replies      
This is a nice step, but not good enough for practical use. Put the text half on the black lamp, half off, and you get 1/2 invisible text. While interesting, it's not reliably accurate enough to use in any sort of automated fashion.
matthuggins 1 day ago 0 replies      
Didn't seem to do anything. I'm on Chrome 29.0.1547.65.

Edit: I tried again, this time releasing the elements. It sounded like it should be live updating as I'm dragging in the description, but it's only when you DROP the elements, not DRAG the elements.

angersock 1 day ago 0 replies      
So, I'd propose a modification to handle text:

Color is part of the battle, but the real killer is having things of roughly the same frequency behind the text--that is to say, having fine lines and detail of about the same resolution as the letters of the text. That seems to be what makes it harder to pick out words.

So, if you could maybe do a 2D FFT or DCT on the area the text would take up, and if the frequencies you find are beyond a certain threshold, add a background color for the text, maybe opacity based on how close in frequency or harmonics the image is to the text.

reginaldjcooper 1 day ago 0 replies      
This is cool but I think the best general solution is bordered text. You can see some edge cases where this solution fails for half the text, like the edge between dark and light on the tub.
DigitalSea 1 day ago 0 replies      
It appears this script uses the Canvas element to determine the colour to make the overlaying text or element. It might be worth noting in the README that for images to work being loaded from a CDN like Amazon Cloudfront or Amazon S3 that the header access-control-allow-origin needs to be set to . So like-so: access-control-allow-origin: otherwise your Canvas is tainted and you can't get the image data out of it due to security restrictions...
joshfraser 1 day ago 0 replies      
This reminds me of Kevin Hale's post on Calculating Color Contrast for Legible Text:


MarkHarmon 1 day ago 0 replies      
This is cool, but I found a small defect. If you drag the dot over the images while they are loading, the color change doesn't take place. It might be necessary to call your function after images have been loaded on your demo page.
crb002 1 day ago 0 replies      
I would do it in RGB space. Run kmeans to get a set of Voronoi cell centroids, 5-6 should be good. Then take the Delaunay triangulation of that and pick a color midpoint between Voronoi neighbors that maximizes the distance sum from all the Voronoi generator points.

[1] http://en.wikipedia.org/wiki/File:Delaunay_Voronoi.svg

[2] http://people.sc.fsu.edu/~jburkardt/isu/reu_2001/voronoi_pap...

NKCSS 1 day ago 0 replies      
Fun idea, but poor execution. Why would you sample an area 4x or more unrelated to the data at hand? You should calculate the tightest bounding-box for your object and then apply the code, or just hit-test the non-transparant part of the current element, because you can still overlay items white on white, as long as the parts around it are dark enough.
gbog 1 day ago 0 replies      
Hehe, nice. I tried to put the small dot on the big one, both had the same dark hue, so I guess it works only on background, not on other placed elements, right?
woah 1 day ago 0 replies      
Your demo does not work at all on mobile. I suggest you try pep.JS for drag and drop.
jogzden 1 day ago 0 replies      
This is a pretty cool concept, but it still needs a bit of work. While I agree with black borders around the text, I think it seems to meme-like. Maybe work on getting a shadow around the text when it is over multiple colours (e.g. the third picture near the concentration of lights). Other than that, it's a great concept, and I'd love to use it.
joeframbach 1 day ago 0 replies      
http://imgur.com/pQjoQ White text with black outline can be read on any color.
sureshgv 1 day ago 0 replies      
Its good. I kept small drop overlapped on big drop on first picture. Finally, I saw on black drop only. Is should show black drop with white drop at center right?
RobotCaleb 1 day ago 0 replies      
Elements don't drag from where I click. They seem to snap.
Emass12 1 day ago 2 replies      
Elements won't drag Firefox 23.0.1
       cached 24 September 2013 15:11:01 GMT