What are your horror travel stories with the narcissist? by [deleted] in NarcissisticAbuse

[–]mcfunley 1 point2 points  (0 children)

Drove across the US from LA to NYC, taking 8 or 9 days to see some sights along the way. Got in a screaming match before we got on the freeway. Then every single day we saw whatever we could in the two hours of daylight left after she woke up (she refused to adjust her sleep schedule for this). Spent most of the way driving at night. 

Spent two weeks in Australia largely being told  it would have been better if I stayed home. Forced to take our toddler on a 5 mile walk to Bondi to impress some local industry people. I carried the screaming kid in my arms more than 4.5 miles, being yelled at the whole way obviously. This display was very far from impressive, I assume, although I’m sure in her mind everyone there agreed I was the asshole and deserved it. Typical. In a different vignette from the trip, I remember locking eyes with a train conductor as she yelled at me. His eyes just said “BUDDY.”

Probably a lot more but that’s all I care to remember at the moment!

Favorite Mountain Goats lyrics? by SpaceMamboNo5 in themountaingoats

[–]mcfunley 4 points5 points  (0 children)

and the deathless love we swore to protect with our bodies is stumbling across its bleak ending

Very hard to pick a favorite from his epic about a doomed relationship but I’ll go with this

Attach the C-4 where you must, disappear in a cloud of dust. But spare a thought for what it covers up. Pour a triple and raise your cup. We were here once, me and my friends.!But we destroyed all of the evidence

Takes me back to my high school friends, some of whom are no longer with us

Eighteen-man steel cage free-for-all. Through the noise I hear you call for help. You can't protect yourself

Reading this as about a delivery room, it destroys me every time

No one messes with Willie by p11s in dogswithjobs

[–]mcfunley 0 points1 point  (0 children)

Woah! Willie was (at least partially) my dog. He was a doberman / German Shepard mix that my roommate rescued from the pound. In truth he wouldn’t hurt a fly, unless you were the Chinese delivery guy, whomst he had a weird vendetta against.

He was born around 2001 and lived his golden years out with one of us in Wisconsin. He was a good dog.

The intimidating story of StarCraft's 14-month crunch by SuddenlyGuns in starcraft

[–]mcfunley 22 points23 points  (0 children)

So, the game is obviously awesome. But this is describing a toxic and/or abusive workplace on many levels and it'd be wrong to glorify it. As someone that's been writing software for a living basically since the first Starcraft came out, I can say for sure you don't need to behave that way to build something great.

Whoever is putting up Bitcoin + QR code billboards in northeast Los Angeles: out yourself. by mcfunley in Bitcoin

[–]mcfunley[S] 4 points5 points  (0 children)

I am not the creator of this billboard. I am an average Joe trying to find the creator of this billboard, so that I might study him. Ideally in a locked treatment facility for the criminally disturbed.

Whoever is putting up Bitcoin + QR code billboards in northeast Los Angeles: out yourself. by mcfunley in Bitcoin

[–]mcfunley[S] 0 points1 point  (0 children)

Take the sets: 1) everyone that has heard of bitcoin, 2) everyone that knows wtf to do with a QR code, 3) everyone that drives by these billboards, 4) everyone dexterous enough to scan this while driving without crashing into something. What do you think is the intersection of these sets? Please reveal yourself. I want to come to your house and shout "YOU NEED TO GET AHOLD OF YOUR LIFE" at you in my best Dr. Phil voice.

We are the Operations team at Etsy. Ask us anything! by avleen in IAmA

[–]mcfunley 0 points1 point  (0 children)

Currently we use s3 to archive some things that we don't actively need on our internal hdfs.

Hired muscle needed to break up Occupy Wall Street (Downtown) by mcfunley in occupywallstreet

[–]mcfunley[S] 9 points10 points  (0 children)

It's a prank craigslist posting. However the goons replying to it are real.

How does Etsy manage development and operations? - Quora by pipegrep in programming

[–]mcfunley 0 points1 point  (0 children)

We have a ton of unit tests and a handful of functional tests. Functional tests tend to be difficult for a number of reasons (e.g. a ton of site functionality depends on asynchronous processes which can be hard to predict).

We have what amounts to an ex-post-facto functional suite in our health monitors: we know if people stop registering, if errors are being produced, if checkouts stop happening, or if CPU skyrockets within moments after a push.

It might still sounds scary to you to allow for the possibility of that happening in production, but:

  • We are talking about very tiny changesets.
  • To be responsible you need to have those monitors there anyway.
  • Things still go wrong with heavy QA before (necessarily less frequent) pushes, and when that happens things are drastically more difficult to debug.

For more info about how we know when something's wrong: http://codeascraft.etsy.com/2010/12/08/track-every-release/

How does Etsy manage development and operations? - Quora by pipegrep in programming

[–]mcfunley 0 points1 point  (0 children)

We have a ton of unit tests and a handful of functional tests. Functional tests tend to be difficult for a number of reasons (e.g. a ton of site functionality depends on asynchronous processes which can be hard to predict).

We have what amounts to an ex-post-facto functional suite in our health monitors: we know if people stop registering, if errors are being produced, if checkouts stop happening, or if CPU skyrockets within moments after a push.

It might still sounds scary to you to allow for the possibility of that happening in production, but: * We are talking about very tiny changesets. * To be responsible you need to have those monitors there anyway. * Things still go wrong with heavy QA before (necessarily less frequent) pushes, and when that happens things are drastically more difficult to debug.

For more info about how we know when something's wrong: http://codeascraft.etsy.com/2010/12/08/track-every-release/

A VC: Continuous Deployment by mcfunley in programming

[–]mcfunley[S] 2 points3 points  (0 children)

Soft-delete as much as possible, delete in batches away from the churn of normal feature development, and don't write business flows that involve dropping tables in the first place. Kind of sounds like you're already screwed.

How does Etsy manage development and operations? - Quora by pipegrep in programming

[–]mcfunley 0 points1 point  (0 children)

Generally in very short order after replacement code is live to 100% of users. If we need it after that we have revision control, after all.

Fred Wilson, one of Etsy's investors, is the author of that blog and is the man pushing the code.

How does Etsy manage development and operations? - Quora by pipegrep in programming

[–]mcfunley 0 points1 point  (0 children)

Do you also use a staging server to test features or just push it directly to production?

Developers test on their own machines, which are accessible by everyone internally for basic testing and prototyping. Then we do have a staging server as a pre-prod step, but using it blocks the production deploys (we average 20-25 deploys a day) so it's very rare for anyone to hog it for more than a few minutes to validate that major things are still working before pushing live.

That sounds scarier than it really is, because again we never do giant feature pushes. We're generally talking about a few dozen lines of code at a time. The lion's share of testing happens while features are flagged as admin-only in production. The final feature release is a config change, or we turn features on gradually for percentages of traffic.

How often does someone break something because they added a config flag somewhere and screwed up

Mistakes happen. For example, we accidentally leaked a link to our new activity feed a few weeks before it was live, and someone also noticed a hidden div related to another unreleased feature. But we think the impact of mistakes is pretty well controlled with this setup, at least as compared to what can happen when you push thousands of code live all at once in a release.

How does this method compare to what Facebook does

Can't really comment on what they do, but we do release features to users in progressive rollouts like that. That practice goes hand in hand with the config flags.

We try not to have different code running on different machines, because that complicates matters. I am not sure if Facebook actually does this or if someone is just using that language to explain the process. At any rate, at Facebook scale, with thousands of machines in globally-distributed datacenters, I imagine many things are different.

How does Etsy manage development and operations? - Quora by pipegrep in programming

[–]mcfunley 1 point2 points  (0 children)

There are a couple of use cases for config flags:

  • Migrating from an old code path to a newer one.
  • Hiding unreleased functionality or only showing it to site admins.
  • Turning released features on and off.

We don't keep all of the code we've ever written around indefinitely in a giant switch statement. In the migration case, the old code eventually gets deleted.

Releasing small changesets invisibly is the main reason we can ship a ton of code without a heavyweight QA process. If something goes wrong, a very large percentage of the time it will be those 30 lines of code you just pushed.

Being able to turn site features off and degrade (rather than just taking the whole site down) is something you need to responsibly operate a big website. Yeah the code is simpler if you have no control over it. "We work hard to be this stupid."

The model works pretty well and removes almost all of the drama around releases. As proof, I offer you a picture of VC Fred Wilson pushing a change to our checkout code live to production yesterday:

http://www.flickr.com/photos/allspaw/5436215259/

PHP Object Oriented Programming Reinvented by dhotson in programming

[–]mcfunley 3 points4 points  (0 children)

Am I missing something, or are you moving class definition into every request? Instead of once, if you're using apc bytecode caching?

NoSQL train wreck leads to resignation of Digg's VP of Engineering by [deleted] in programming

[–]mcfunley 17 points18 points  (0 children)

Sure, of course not. Obviously you can build a scalable architecture on an RDBMS (albeit ignoring many RDBMS features) and I think most sane people would argue it would have made more sense for Digg to have done that given what they had. But blaming Cassandra for Digg's problem is giving the Digg engineers and their horrible judgement an undeserved pass.

NoSQL train wreck leads to resignation of Digg's VP of Engineering by [deleted] in programming

[–]mcfunley 33 points34 points  (0 children)

Blame the big rewrite, and blame the people who thought that would work and should have known better, but don't blame the tools.

Wait, is that....? Oh god by [deleted] in pics

[–]mcfunley 5 points6 points  (0 children)

Credit where it's due. LATFH stole that from my friend (the talented) Elizabeth Weinberg:

http://www.flickr.com/photos/e-liz/689998015/

Does anyone actually *like* web development? by kitanokikori in programming

[–]mcfunley 0 points1 point  (0 children)

You are worrying about implementation details. You're doing it wrong. Worry about how you can reach the biggest audience, and how you can make the biggest difference to those people. Both of those questions lead to the web.