HNHacker News
TopNewBestAskShowJobs

AngryParsley

2,886 karma · joined September 14, 2009

This account is obolete. Since I can't change my username, I created a new account. See https://news.ycombinator.com/user?id=ggreer for new activity.

My name is Geoff. I write code. I live in San Francisco.

I co-founded https://floobits.com/

Floobits is a real-time collaborative editor (like Etherpad), but with plugins for popular text editors. It's still very much a work in progress.

Personal site: http://geoff.greer.fm/

GitHub: https://github.com/ggreer/

submissionscomments
AngryParsley··on Typing the λ (lambda) character with the compose key on Xorg
After reading the post, I was curious how to do the same thing on OS X.

I knew there was a menu for special characters built into all text inputs, so I searched help for "characters." The first result was Edit->Special Characters, which showed a shortcut of ⌘+⎇+T. I searched the special characters for "lamda" and selected the first result. After that, I figured out how to easily type λ often. You can add a string substitution in System Prefs -> Language & Text -> Text.

No googling. No config files. No restarting X. ♥ My biggest issue was finding the ⌘ symbol, which is classified as "place of interest sign" in the technical symbols category.

AngryParsley··on Swap Your Laptop for an iPad + Linode
First of all, kudos to this guy. He's happy with his set-up. It works for him and it works for a lot of other people.

That said, I feel the need to warn others who are considering switching to a cloud-based development environment. There are some significant disadvantages to doing development on a remote machine. The biggest issue is that you are dependent on Internet connectivity. If your connection is down, you are dead in the water. If it's slow, you'll get frustrated. Connectivity is only going to get better, but the occasions when you're offline can be very memorable. Additionally, your choice of editors is rather limited. Whatever you use, it has to be terminal-based. A GUI editor like Xcode, Sublime Text 2, or Coda is right-out.

Now let's take a look at the advantages. Cost is mentioned. An iPad is $500-800. A cloud server is $20/month. A maxxed-out 11" MacBook Air is just under $1800. If you throw it away after 2 years (instead of selling it), that's $75/month. In the same time, you'd spend $40-55/month for the iPad/cloud combo. Assuming normal bay area wages, the cost difference isn't worth caring about.

The iPad/cloud setup has one big advantage: battery life. An iPad will last 10 hours. Most laptops can barely do half that. But that's pretty much its only advantage. The laptop beats it in performance, capabilities (you can run VMs and test other OSes/browsers), ergonomics, and expandability. Laptops can also output to larger monitors.

After considering all these things, the best solution is whatever you're most productive using. If you find yourself away from power often, the iPad is your best bet. If you often have slow/nonexistent Internet connectivity or you like to plug into external displays, go with a laptop.

My most productive times are when I'm offline, so my weapon of choice is the 11" MacBook Air. I load it up with the right documentation and virtual machines beforehand. Then I spend the next 5-7 hours writing prodigious amounts of code. At that point both myself and the Air's battery are spent.

Again, I don't mean to imply that the author is mistaken. I simply want to manage expectations for anyone considering following him.

AngryParsley··on Farewell, USS Enterprise (the aircraft carrier)
We're building supercarriers faster than we're getting new presidents. Either we go back to cool names or we'll read about airstrikes conducted by the USS Chester A. Arthur.
AngryParsley··on NASA Probe Finds Ice and Organics on Mercury
What? A one-way trip to Mercury takes three times as much energy as a trip to LEO and back. If you need energy to produce goods, building power plants on Earth or Moon make much more sense.

Your ideas belong in a soft sci-fi story. The economics and orbital mechanics simply do not work out in favor of a Mercury colony.

AngryParsley··on NASA Probe Finds Ice and Organics on Mercury
Thrust may be more efficient, but you need a lot more of it to get out of the gravity well. Delta-v from LEO to Mercury is around 18km/s. That's LEO, not the Earth's surface. If you want to travel from the ground, you'll need another 9-10km/s. Getting there and back would take enormous amounts of fuel. To put it another way: from the Earth, escaping the sun's gravity completely (going interstellar) takes less delta-v than a one-way trip to or from Mercury.

It's more cost-effective to build bigger collectors closer to Earth.

AngryParsley··on GNU grep is 10x faster than Mac grep
Yes, there are a few edge cases, but hardly anyone uses those features. In fact, 90% of the time, most people seem to use literal string matching.
AngryParsley··on GNU grep is 10x faster than Mac grep
Since I added pthreads, there's no chance that it builds on Windows anymore. I don't have a Windows machine or VM to test stuff out on. Patches welcome, though!
AngryParsley··on GNU grep is 10x faster than Mac grep
Ag supports the same regexes as Ack. I use the PCRE library. I only call pcre_study once, and I use the new PCRE-JIT[1] on systems where it's available. These tweaks add up to a 3-5x speedup over Ack when regex-matching.

1. http://sljit.sourceforge.net/pcre.html

AngryParsley··on GNU grep is 10x faster than Mac grep
I wrote a mostly-clone of Ack in C: https://github.com/ggreer/the_silver_searcher . Output format and most flags are the same. Besides the speed, most users won't notice a difference.

I spared no effort in optimizing. Pthreads, mmap(), boyer-moore-horspool strstr, it's all there. Searching my ~/code (5.2GB of stuff), I get this:

    ag blahblahblah  1.93s user 3.54s system 313% cpu 1.749 total

    ack blahblahblah  9.75s user 2.79s system 98% cpu 12.690 total
Both programs ignore a lot of extraneous files by default (hidden files, binary files, stuff in .gitignore, etc). The real amount of data searched is closer to 500MB.
AngryParsley··on $49 Personal Genome at 23andme (incognito windows until you get the best price)
The Genetic Information Nondiscrimination Act[1] was passed 4 years ago. It makes it illegal for insurance companies and employers to discriminate based on genetic information.

In the long-term, it's unlikely that you'll be able hide your genome. Sequencing technology is only going to get cheaper and more advanced. People slough off cells like crazy. You'll have to live in a spacesuit if you want to avoid leaving your genetic information everywhere.

1. http://en.wikipedia.org/wiki/Genetic_Information_Nondiscrimi...

AngryParsley··on The Anatomy of an Entrepreneur (2009)
"this should come as no surprise"? To me, the 60% figure seems like an invertible fact.[1]

Imagine the article said, "75% of successful entrepreneurs are single." People would post comments similar to yours, but with other rationalizations for why the fact is true. "This isn't surprising. Single people have more free time." "This shouldn't come as a surprise. Single people don't have to worry about providing for a family." "This doesn't surprise me. Single people can take more risks."

We like to project an unsurprised, unperturbed, and confident attitude. But thinking "I knew it all along" can be dangerous.

The number of hindsight-biased comments do surprise me a little. I expect more from our community. The world is complicated, and our minds can't model it accurately all the time. Paradoxically, we should expect to be surprised.

1. See http://lesswrong.com/lw/im/hindsight_devalues_science/

AngryParsley··on Chinese government blocks Google.com, Gmail, Google+, Maps, Docs and more
You forgot to mention that many nonviolent crimes in China carry sentences we would consider extreme. Depending on the quantity, rather harmless drugs such as marijuana, shrooms, and MDMA can get you executed. Civilian ownership of firearms is also restricted. Then of course there's the Internet censorship and monitoring. Don't forget the banning of various books.

If your idea of libertarian is "bars stay open all night and I can smoke anywhere" then you might want to consider Las Vegas. It's much more permissive than any place in China and you won't even have to learn a new language.

AngryParsley··on Samsung's A15 Chromebook Loaded With Ubuntu Is Crazy Fast
Given the same volume, a tablet has more space for batteries than a laptop. A laptop has to use space for the hinge, keyboard, trackpad, peripheral ports, and display. Worse, you can't fit batteries behind a laptop display without ruining the balance. On the other hand, a tablet is practically a screen with a ton of batteries behind it.

Here's some real-world data: The 3rd gen iPad has a 42 watt-hour battery. The 11" Air has a 35 watt-hour battery. The Air is 25% larger in one dimension and over 50% heavier, but it still can't fit the same amount of batteries as the iPad.

And of course tablets typically have slower processors, less memory, and less flash than laptops. Their lower specs mean tablets draw less power.

With so much going against them, I'm surprised that some laptops manage to come close to tablets in battery life.

AngryParsley··on San Diego Refuses To Answer FOIA Requests About Drones
Only if the trajectory is almost vertical and the bullet is a small caliber. People get killed by celebratory gunfire all the time: http://en.wikipedia.org/wiki/Celebratory_gunfire
AngryParsley··on San Diego Refuses To Answer FOIA Requests About Drones
I realize there are other ways to disable or destroy a drone and that you're curious about the legalities. But if you did literally shoot a drone, you'd probably go to jail. If you miss you'll send a bullet miles away, endangering others. If you hit the drone, you'll rain shrapnel on the anyone below. Even then, I doubt a hit would disappate the bullet's kinetic energy safely.
AngryParsley··on Q: “How much does an app cost?” A: “About as much as a car.”
/me checks http://news.ycombinator.com/user?id=vlokshin

> about: I love web apps and my team is amazing. http://www.darwinapps.com

/me checks http://news.ycombinator.com/submitted?id=vlokshin

All submissions but one are darwinapps.com. The exception is vladlokshin.com.

Nice marketing.

I'm not against self-promotion, but it makes me wary when someone uses their account solely for that purpose. I'd prefer that people contribute to the community instead of just submitting links they stand to gain from.

AngryParsley··on The Quiet Ones
A lot of the problem is caused by cell phones. People talking on phones are usually louder than in-person chatter. And while a conversation is distracting, half of one is worse. Also, cell phone conversations on public transit seem to be more common than talking in-person. Everyone has a phone, but not everyone takes the train with a conversation partner.

Different cultures have different rules about mobile phones. While vacationing in Japan, I noticed that nobody talks on their phone on trains. It's wonderful. As soon as I came back to the states, I was crudely reminded how horrible American cell phone etiquette is.

A few years ago, I bought a cell phone jammer. It has paid for itself many times over. If you find yourself distracted by obnoxious people on cell phones, buy one. You won't regret it.

AngryParsley··on Show HN: Instant Google Street View
Another cool one: Osaka aquarium. You go straight from the sky above the Osaka airport to staring at huge fish.
AngryParsley··on Tips for C libraries on GNU/Linux
I don't want to toot my own horn, but I only check in Makefile.am and configure.ac. Here's a simple example I made a while back: https://github.com/ggreer/fsevents-tools. To build it, just run autogen.sh.

For a "real" project, https://github.com/ggreer/the_silver_searcher, I have the same set-up: Makefile.am and configure.ac with no generated code in the repo. It works fine as long as you have pkg-config, and most people do. It builds and runs on Solaris, OS X, FreeBSD, and any Linux distro you like.

Although I use autotools the "right way", I'm not a fan of it at all. There are multiple levels of generated files. Configure is generated from configure.in which is generated from configure.ac. Makefile is generated from configure and Makefile.in. Makefile.in is generated from Makefile.am. There are other files in the mix as well. Config.h, config.h.in, aclocal.m4, and various symlinks to autotools (compile, depcomp, install-sh, and missing) get generated. It's insane.

There are other problems. Minor versions of autotools can behave completely differently. AM_SILENT_MAKE was removed between automake 1.10 and 1.11. Instead of printing out minimal text during a build, scripts using that macro crash. Another example: 1.9 requires AM_PROG_CC_C_O to compile anything useful but 1.10 doesn't. What's crazy is that 1.9 actually spits out an error message telling you to add AM_PROG_CC_C_O to your configure.ac. It makes no sense.

A system this complicated can't be pruned without breaking backwards compatibility. For autotools, that's not feasible. There are too many projects that would need to be fixed. The next-best solution is to use something else for new projects and let autotools fade gently into history.

AngryParsley··on The Most Engaging Sites on Hacker News
I'm pretty sure those numbers are the total amount of time spent by Lookmark users on the site. 11,000 seconds is 100 users reading TechCrunch for almost 2 minutes each.
AngryParsley··on How would you design a chicken?
Painless death at the hands of other chickens sounds more moral than the current situation: a life of suffering followed by painful death at the hands of a machine. Of course if all chickens are born into a persistent vegetative state (or something close to it), I don't see how fights could happen. Also, farms where chickens kill each other would probably be less profitable than farms that slaughtered their chickens at the optimal time.

Painless animals were discussed on Overcoming Bias a few years ago: http://www.overcomingbias.com/2009/09/painless-meat.html . Interestingly, vegetarians were more likely to oppose painless animals than meat-eaters.

AngryParsley··on How would you design a chicken?
On the other hand, we could drastically improve the lives of farm animals if we engineered them more. For example, we could give them CIPA[1]. We could make their brains smaller. A vegetable chicken can't suffer. These modifications may sound perverse, but I doubt we're going to stop cooping these creatures up and killing them any time soon. We might as well do our best to reduce the amount of suffering we cause them.

1. http://en.wikipedia.org/wiki/Hereditary_sensory_and_autonomi...

AngryParsley··on [dead]
He seems like a less-crazy version of the losetheos guy. Here's a bit of advice: When asking for donations, 1. Do not call your mother evil. 2. Have a way to receive money.

Take a look at his other postings. Apparently, the main Lua mailing list is evil (http://luaos.net/pages/a-new-beginning.php). It looks like he posted that after this thread: http://lua.2524044.n2.nabble.com/Let-s-make-a-new-place-td70... The others in that thread seem to treat him respectfully even though he tried to split the Lua community.

Also, take a look at his other projects to get a better idea of his behavior. http://tinybrain.friedensrevolution.de/ has some rather unprofessional rants on it. Ditto for his own blog's news page: http://luaos.net/pages/morenews.php

I feel sorry for the guy. He seems like a talented coder, but his behavior and attitude undermines his projects.

AngryParsley··on Show HN: GitBattle – Battle two Github accounts
Thanks for this. I ran into a lucky coincidence: my GitHub account is exactly 1000 days old. It's surprising that I've been using GitHub for almost 10% of my life. (I'm 10,095 days old, so it'll be exactly 10% the week after next.)
AngryParsley··on ‘Creepy Cameraman’ pushes limits of public surveillance
I can't easily find your real name, so I doubt you're completely apathetic about privacy. (Mine is in my profile.)

In normal unrecorded life, you can make a fool of yourself and nobody will care after a couple weeks. Online, things are different. Your embarrassing mistakes are preserved forever. Google crawls and indexes them so that everyone can see you at your worst.

The same is true if you're being recorded. Would you like it if everyone you met knew about your fan fiction? What about a time you got drunk and made an ass of yourself? There are many things that are legal, but embarrassing. Privacy allows us to present a socially acceptable persona while pursuing bizarre or embarrassing interests. Until we get people to expand their idea of "socially acceptable", we need privacy. Without it, mavericks would be punished even more than they already are.

AngryParsley··on Dear Apple, stop overcharging for extra iPad memory
Truly a tragedy. When I get my 64GB iPad Mini, I'll be sure to install iViolin Nano and play Ashoken Farewell followed by the theme to Schindler's List.

It amuses me that the author was aware of his kvetching, but went ahead with the article anyway.

AngryParsley··on Why you should take your 20's seriously
Yes, it's blatant ageism. As much as we hate to admit it, our minds and bodies start to decline almost as soon as we reach maturity. Not only does raw intelligence drop as we age, but some personality traits change. Of the Big Five, openness to new experiences takes the biggest hit. See http://www.gwern.net/DNB%20FAQ#aging and http://www.rand.org/content/dam/rand/www/external/labor/agin... for the scientific evidence.

Obviously these stats don't mean that old people are stupid and close-minded. Knowledge accumulates and helps offset many of the deficiencies. Still, this evidence does suggest that young people might want to change their behavior to benefit their future selves. This doesn't just mean making the most of the time you have. Exercise, continuous learning, and a few drugs can help to slow the decline. As an analogy, think of athletes. A 50 year-old is never going to win the Boston marathon. But with proper training, nutrition, and maybe a few performance-enhancing drugs, they can beat 95% of 25 year-olds.

AngryParsley··on The Let's-Sell-Our-House-And-See-the-World Retirement
They're around 70, so depending on how much they want to leave for their offspring, losing money might not be a problem. If they sold their house for $1.2 million (not uncommon in some parts of California), they could continue their current lifestyle into their 90's without touching other assets.

Basically, their health will most likely fail before their money does. It's sad that biology currently dictates such things, but it looks like they're enjoying every minute of the time they have left.

AngryParsley··on Product fitness
I like the idea, but I'm not sure how well it would work in reality. Conspicuously absent are examples of products already reduced in size. Airplane seats immediately come to mind.
AngryParsley··on Is it better to turn up the volume in the software or on the speakers?
I am correcting you: Playing 16-bit audio with a 24-bit output device doesn't distort anything. No matter the bit depth of the audio file you're playing, CoreAudio converts it to 32-bit floating-point PCM. Then it converts down to something the output device can handle. I'm pretty sure Windows does this as well.
← PreviousPage 2 of 16Next →