HNHacker News
TopNewBestAskShowJobs

z2amiller

329 karma · joined July 26, 2010

Contact email: z2amiller@gmail.com
submissionscomments
z2amiller··on How a Norco case killed 13TB of our data
These haunted servers were actually supermicro barebones chassis.

It has been a (long) while since I have seen the inside of an e450 but iirc there were a bunch of fans in trays in there. So it is certainly possible that the vibration did bad things. I still carry one of the e450 era keys on my keychain as a momento.

z2amiller··on How a Norco case killed 13TB of our data
So 10 years and a few employers ago, we had a case of a few "haunted" server chassis. Hard drives would fail on these chassis very frequently, and when a fresh drive was swapped in, it would take many days to rebuild the RAID, if it ever rebuilt at all.

Putting the RAID set in a new machine, it would rebuild fine. But in the original machine, we swapped out the raid controller, CPU's, even the whole motherboard, and the RAID sets still would not rebuild.

Long story short, each of these "haunted" servers had a bad fan that was causing a lot of vibration within the chassis - enough physical vibration happening that the hard drives were essentially rendered inoperable.

The moral of the story is to make sure you have good vibration dampening on your fans, and to use the sensors monitoring to alert you if the fans are going bad. (Even this is not perfect, since sometimes the fan gets off-kilter but is still happily spinning at 10K RPM. The first thing we did if we got an alert for a disk failure was to replace the fans and attempt a RAID rebuild before touching the "bad" disk)

z2amiller··on Nori Lights - Bicycle Illumination System
In the "updates" section, he shows that there is a new system to attach some phosphorescent plastic between the spokes next to the rim. It isn't clear if these are included with the standard backer price, but it does allow the system to be used on bikes with brakes. Hopefully he updates the front page to make this more apparent, since it was my first question also.
z2amiller··on Why Don’t Smartphones Have A “Guest Mode”?
I was thinking of something related to this earlier today. One thing I'd really like from the emergency call screen is to allow me to tag several of my contacts as emergency contacts. That way if my phone is stolen, or I am hurt in an accident, the list of proper people to notify is very apparent.
z2amiller··on How To Optimize Your Site With HTTP Caching
The best way I've seen for dealing with cache expiry, which the article does not talk about, is to use version numbers on assets. We found this to be especially important with javascript, css, etc -- if all of that stuff doesn't expire at the same time, it can hose the layout of your site.

Also there are may be many layers of caching between you and the user; not only HTTP caching in the browser, but you have to take into consideration any CDN's (Akamai, etc) and sometimes even caching reverse proxies in corporations.

At my previous job, we handled the versioning with deployment-time rewriting of the assets included in the base page to include the version number (As tagged by the build software with branch name + build number).

That said, enabling browser side caching was a huge win for page speed on the site.

z2amiller··on How Doctors Die
Is there a good way to phrase (i.e. "Doctor Speak") for something like "No Code unless a probably positive outcome with intervention"?
z2amiller··on Programmers' salaries at Google $250k (and up)
Also think for a minute about what "you should be ok" means in this context. Sure, if you are developing something in your spare time that kinda-mostly-doesn't-compete with what your employer is doing, and they find out, maybe they can't legally go after you.

But that doesn't mean that they're obligated to keep sending you a paycheck, either. California is an at-will employment state, and violating your employment contract tends to remove the "will" to employ you.

z2amiller··on Why We Moved Off The Cloud
I've always thought the "Drive to the datacentre" argument was BS. If you're writing your app for the cloud, you have to deal with spurious instances going away, degrading, etc. It is no different in the datacenter. If you're driving to the datacenter in the middle of the night to replace a disk or a fan, you're doing it just as wrong as if getting evicted from an EC2 instance causes you to have to scramble oncall resources.

In my experience, the highest operational cost with running services is managing the application itself - deployment, scaling, and troubleshooting. None of that goes away with the cloud.

z2amiller··on Whither Netflix?
Access to live sports is the only thing keeping me from cutting the cord. Everything else we watch is readily available from other sources 'a la carte' which would be much less expensive than buying a giant package of cable channels I never watch.
z2amiller··on [dead]
About 10 years ago during a minor earthquake in the California Bay Area, I happened to be on the phone with my girlfriend at the time who was in Mountain View, I was in San Jose. The conversation went something like:

GF: "Oh! There's an earthquake!"

Me: "What, no there isn-- Oh wow, there's an earthquake!"

(few seconds of shaking)

GF: "Okay, it's over"

Me: "No it isn't, I stil feel-- Oh yeah, it's over!"

I'd estimate the delay to have been ~2-3 seconds over ~20 miles -- but I don't remember where the epicenter was, or how deep the quake was.

z2amiller··on I'm a phony. Are you?
I am reminded of this post:

http://gadgetopia.com/post/6819

I think your thoughts of being a talentless nobody have more to do with gaining experience than it does having access to more information and seeing more products. You have crossed the "Humility threshold" where "What you think you know" < "What you actually know".

z2amiller··on How not to design a CAPTCHA
I've seen similar systems, such as "Which one of these four images is a puppy?". I think the problem is that the set has to be small, so it ends up being a multiple choice quiz. With one correct answer out of four or five choices, it is very easy to brute force.
z2amiller··on 50 Million Myspace Profiles Now Belong to an Ad Targeting Firm
If you're not paying for it, you're the product.
z2amiller··on Linux memory overcommit (compared to airlines selling tickets)
What a nice surprise to wake up and check HN to find an article I'd written four years ago trending on the front page. :-)
z2amiller··on Gawker's Numbers Tanking
They've F-ed them up worse than that, a few months ago I got a full feed of Fleshbot in the place of my Gizmodo feed. Fortunately I closed my laptop in time, or it could have been a much more interesting meeting at work (No doubt followed by one with HR)
z2amiller··on Apple Fails When It Comes To “Basic Durable Product Design”?
I find that with the new 90 degree connector it is much more likely to be yanked in parallel to the machine. The metal mount is much more durable but I've had my laptop nearly pulled out of my hands a few times by someone tripping/yanking on the cord and pulling the machine straight back.
z2amiller··on Apple Fails When It Comes To “Basic Durable Product Design”?
With some of the first magsafe-based macs, I was buying a new power adapter every three months or so. The cord would fray at the end of the way-too-small strain relief between the magsafe connector and the cord. I had one nearly catch on fire (melted a bunch of the plastic covering) when it wore enough that it shorted. I figured that this was the recurring part of the 'Apple tax'.

To be fair though, in the last couple years the connectors have gotten much better - I think they extended the strain relief collar so that it does not get bent at as sharp of an angle. Also the new unibody macs have a 90-degree magsafe connector which eliminates a lot of the strain. (Unfortunately I think it is also a less safe design - it takes much more force to disengage the magnets at most angles where the cord would actually get pulled)

z2amiller··on Students paying to get internships?
This hits close to home for me. My wife is currently going through the process to get a one-year internship to for her psychology doctorate, which is required for graduation. Having to pay for the privilege is an understatement - her university counts this as a 'class' so the tuition cost for her to turn in some paperwork at the end of the year will be about $3000. In addition, with gas at $4/gallon, there'll be about a $200/mo commute cost for the next year. So far the internships she's looked at pay a $5000 stipend for the whole year.

Of course that pales in comparison to the cost for child care for this year; most of the child care we've looked at in the Bay Area is ~$1700/mo, so her internship is going to cost us about $20,000.

I don't see this system changing anytime soon. As it stands, there are fewer internship slots than there are students. Because it is so competitive, my wife has already been declined by two agencies which had openings directly related to her thesis. I already don't understand how more placements aren't willing to get nearly-free labor, so forcing employers to pay some kind of minimum wage for interns will only reduce the number of slots available to students. Indeed, in addition to all of the indirect costs (child care, etc) we would gladly write someone a check for her to have an internship in the area so that she can finish this year. If she is deferred because there are no placements, it is another year before she starts a "real job".

z2amiller··on Cluster SSH (OSX)
Now combine that with dsh (http://www.netfort.gr.jp/~dancer/software/dsh.html.en) and authorized_keys, you can _really_ get in trouble. dsh is similar to this Cluster SSH, but is appropriate for use in scripts, cron jobs, etc.

Example:

dsh -Mg all-machines -F 20 'do something'

-M: Prepend any line of output with the machine that emitted it

-g: runs the group all-machines (just a text file in etc/dsh/group)

-F 20: forks at most 20 copies of ssh in the background so you don't overload the server you're running this from

z2amiller··on Ask HN: I'm an unemployed programmer in SF that will work for minimum wage
I don't think 6 years "trying to do a startup" is the same as a complete lack of work experience, unless you spent the entire 6 years trying to raise money and making powerpoint slides. If you did any real programming work during that time, it still counts. I've seen plenty of resumes with "sole proprietor" type jobs. Maybe you don't get a job with a large company, but someone who is versatile and used to doing whatever it takes is perfect for someone else's startup.

I don't think it is wise pitching yourselves to companies who are hiring 100K+ engineers saying you are willing to work for minimum wage. It shows a lack of confidence that you are selling yourself so far under market. Pricing is often a signal for quality. More importantly, the cost of a bad engineering hire is far greater than the salary you're being paid -- a bad engineering hire takes time to get rid of, and often produces negative work output. People end up cleaning up a mess, opportunities are lost while a bad engineer flails at what should be simple code, etc. A bad engineer could work for free and still be a worse value for a company than an engineer making market rate. This is the signal you're sending when working for minimum wage.

z2amiller··on Gizmodo RSS feed full of porn this morning?
This morning, my normally SFW "Tech News" folder in Google Reader was full of full-on explicit pornography - apparently at some point the feed URL was redirected to their Fleshbot site. Are we being encouraged to "sample" some of the other Gawker properties?
z2amiller··on Scott Adams: How to Tax the Rich
This already exists in California to some degree. The state offered a limited number of stickers to hybrid cars that allows them access to the carpool lanes with a single driver. The stickers were quickly exhausted and now cars that have the sticker sell at a significant premium. (see http://www.greencarreports.com/blog/1021405_california-hov-l...)

The value of these stickers has probably declined significantly since that article was written, as the stickers are only valid until July 1, 2011.

A few years ago, my boss (CEO) at my last company bought a Prius at a premium for this reason so he could use the carpool lanes during rush hour. The populist/progressive in me thinks that it isn't "fair" that the rich can pay for faster commutes, but the truth is that he probably created many times more wealth than the several thousand dollar sticker premium by having an extra 30-60 minutes of productive work every day.

z2amiller··on Quora Blocks Startup Search Engines
FWIW, most of the "Major Players" support the Crawl-Delay directive in robots.txt, see: http://en.wikipedia.org/wiki/Robots_exclusion_standard#Crawl...

I know at minimum GoogleBot and Yahoo! Slurp respect this value. I believe Google AdsBot (Landing page URL verification for AdWords) also supports this value, but GoogleBot and AdsBot each will crawl at the rate you specify (so if you specify a Crawl-Delay of 1, each bot will crawl at ~1qps). I don't know if it is in the spec, but fractional crawl delays appeared to be respected (Crawl-Delay: 0.25 would result in ~4qps, for example).

I too have fought with this problem - at times more than 90% of the capacity of the site I was running was devoted to serving up content for bots. I sympathize with small (and large) companies who don't want to add capacity so that new/random bot can add another <x> QPS to the daily baseline load.

z2amiller··on Peter Seebach: How I learned C
I wonder if there will be a next generation of hackers that learn this way. I had a similar story, learning "programming" by poking around inside giant dungeon crawl type games written in basic. However, any game that is interesting enough for "kids these days" won't be a text interface written in a couple thousand lines of basic. Are there languages and tools simple enough to create a game that would be interesting enough for a potentially budding hacker to bother digging in to?
z2amiller··on A table that should exist in all projects with a database
Checking the schema and upgrade scripts into source control is extremely important, and this is how I have managed it in the past. (names like table.alter.12.sql). I regret not setting this type of versioning table up from the beginning, though - when you have multiple environments (dev, QA, staging, etc) it can get very confusing in a hurry as to which schema changes have been applied to which databases. With a versioning table and maybe even some deployment time scripts to sanity check versions between the release and the DB, mismatches become immediately apparent.
z2amiller··on Ask HN: What tools do you use to monitor your LAMP server(s)?
One thing I've done in the past to help prevent 'configuration rot' of nagios configs is to hook it into the same files that drove our deployments - when the deployment changes, the nagios config changes with it. Nagios supports template-based configs so once the tests are developed it isn't too hard to write some automation that spits out a config file. This worked pretty well for a site with ~350 servers and devices (switches, APC rack PDU's) with ~3000 tests.
z2amiller··on Ask HN: Commuting on a bike
Good advice all around. If you wear a backpack or messenger bag, you'll end up with an awfully sweaty back. Getting rear panniers will help a lot, especially since you'll probably want to carry a change of close with a 15 mile commute.

Bigger tires are better - I ride on Rivendell Jack Brown tires which are ~33c. The larger tires are a smoother ride and can handle debris better. Also make sure your tires are kevlar belted. City streets, even in bike friendly cities, collect a lot of broken glass and other sharp debris along the bike lanes.

Make sure you have a good lighting system, come wintertime it will likely be pitch dark on at least one of the legs of your commute. I just got a NiteRider MiNewt 250 which is nice because it is a self contained unit and has mini-USB as its charging input (So no need to carry a specialized charger, can easily charge while at work or even in a cafe). A friend recommended the Novae Cyclone 900, less convenient but brighter than the MiNewt and cheaper. http://light-reviews.com/forum/viewtopic.php?f=29&t=897

z2amiller··on Ask HN: Good alternative to Gmail?
+1 for fastmail.fm, I've been a customer for some time and like their features. You can point your own domain's mail there, set up fairly comprehensive rules for filtering mail into folders, etc. They have a web interface and it fully supports IMAP so you can point your phone, mail client, etc at it.
z2amiller··on Ask HN: is it better to have work experience before starting a startup?
Working at a "real" company will give you some insight about "how the sausage is made", both from the business side as well as the software development side. You can gain a lot of information about what does and does not work by observing and participating in the process for a while. Stay at home or live cheap and put some of that decent salary into savings for if/when you commit to your own project full time.

Nothing wrong with developing your own product on the side or "after hours", although be aware that at many startups most positions have some kind of operational component and/or tight deadlines, which might interfere with after hours projects. (Not all startups/small companies are like this of course).

Make sure that if you are developing something on your own time that it does not compete with the company's product line, you will often have to sign a contract to that effect. Along the same lines, be sure to have a clear line between things you develop for the company and things you develop for yourself - keep a separate machine for your own code, don't use your employer's equipment or even a personal machine with your employer's code checked out on it. The same advice goes for freelance projects.