
Ashton’s plight, fight or flight or "self-righteous metropolitan exceptionalism" - fogus
http://cemerick.com/2010/12/11/ashtons-plight-fight-or-flight/
======
tptacek
I totally agree that there's nothing inherently wrong with working in Zeeland,
MI. It's beautiful country.

But, working dev at Herman Miller is genuinely _not_ a great role for a dev
career. It's a textbook dead-end job. It's not "exceptionalism" to point that
out.

Yes, he should have gotten in his car and headed to Chicago, instead of
hopping a plane for SF. He'd even be able to keep his car. But he was right to
leave.

~~~
cemerick
So, one can get a good software development job in the midwest only if one is
in Chicago?

I think you missed the point of the post.

~~~
tptacek
No, I get the point of the post. I disagree with part of it, and I object to
its tone.

The notion that you will do just as good with a software job in Zeeland, or
Grand Rapids, or even Ann Arbor as you will in a major metro area is simply
false. Below some threshold, you will do worse in lower-populated areas than
in larger ones, because of labor mobility issues and reduced competition.
Employers in small cities get better deals than employers in larger ones; that
is, in fact, a good reason to start a company in a smaller city.†

I cited Chicago because it's less than an hour and a half away from Zeeland.
You could do just as well in Indy, in Cleveland, Minneapolis, or Des Moines.

My tonal objection is simple: Spolsky was _dead on_ in this post. If you are a
junior developer in a back office job at Herman Miller and you are asking
questions that indicate you're trying to do career planning, you need to get
the hell out of Herman Miller and into a real software shop. They're all over
the place in the US, but, sorry, they're not so much in Grand Haven or
Davenport or Carbon County, PA.

† _Just to head off a tangential debate: if you're at a point in your career
where you're asking how to impress your boss, starting a company is probably
not your best next move._

~~~
cemerick
Well, fine, let's all move to a major metro area then; what's the population
threshold it needs to be above in order for it to be worth considering?
Sheesh.

I'm in no position at this point to debate the macroeconomic benefits or
handicaps for software industry employment in different locales, but it seems
ludicrous to state with such authoritative certainty that "real software
shops" can't be found in whatever towns and smaller cities you'd like to cite,
presumably just because they're not big enough or not renowned enough to make
the shortlist.

Regarding tone: I think Spolsky's _intended_ point was absolutely correct, but
the narrative was littered with entirely unnecessary backhand comments related
only to geography and not Ashton's prospects therein. This lines up nicely
with all sorts of "advice" doled out on the interwebs about how you've just
gotta be in one of these 12 (or whatever) blessed cities if you're in
software, and surprised and sideways derogatory comments that are made if
you're not. If it sounds like I'm somewhat pissed and sick of the drumbeat,
that's because I am.

~~~
tptacek
That's a great question. Let's try to answer it.

Grand Rapids is a moderately big city. But if you're picking cities, it's too
small to target for a software dev career.

Ann Arbor is slightly smaller than Grand Rapids with a much better ecosystem
for software developers. I had the pleasure of working there for 4 years. My
advice is, if you're picking cities, don't move to Ann Arbor unless you're
starting a company and can afford to do that serially in Ann Arbor (it's hard
to consult there!) or are prepared to move when your company fails. There are,
like, 4-5 companies within commute distance of A2 that can hire you, and they
all know it.

Don't move to Detroit. You'll be eaten by packs of wild dogs.

Milwaukee is much bigger than Ann Arbor or Grand Rapids. But you'd be hard
pressed to find someone advocating it as a good town to build a career in.
Lesson to learn: the smaller the metro area you pick, the more important it is
that the area be on an upswing and not a downswing.

Chicago is a big city. So is MSP. It's not insightful to say "go work in
Chicago" since, as your post points out, "big cities aren't a salve for your
career" (pphrase).

Madison, WI is about 3x bigger than A2 or Grand Rapids. Madison is, by
comparison to most of the major metros in the US, a small town. But it has a
great ecosystem of developers, a university culture, and lots of employers.

So let's go for cities like Madison. Madison is my threshold. There's an
answer. Feel free to debate it, but let's not handwave; I'm not making an
abstract point here.

~~~
loumf
I think attributes of a town are more important than size. I live in a 30k
population town (Northampton, MA), but we have a college (and others in
neighboring towns) and great culture, restaurants, etc. The downtown is
extremely walkable and has a music/bar scene. I know of a few great software
companies in town or very nearby (e.g. cemerick's company). The best
developers would have no problem finding a good job here -- my company has no
problem finding great developers.

We may have fewer developers and companies, but it's the ratio that matters.
When I lived in NYC, I could identify great developers, but the competition
for them was fierce. The same went for the best jobs. It was about the same
level of difficulty in NYC as Northampton, MA for me to find a great job and
once there to recruit others.

~~~
metageek
Northampton also has the property that Boston and NYC are both within driving
distance, which means that, if you just can't find a job close to home, you
can go job hunting in either of the cities. That would make a big difference
to me if I were considering moving there.

~~~
loumf
Within driving distance, but not commuting distance. Springfield, MA and
Hartford, CT are within commuting distance though. They both have huge
insurance companies where you could get an IT job. And both have better jobs
than that as well. It's all about how good a candidate you are -- you'll have
far less competition for the best jobs.

------
jdietrich
OP is wrong, dead wrong.

In my home city there are a few software companies, even a major games studio,
but no real community - there's a Linux User Group peopled by beardy
academics, but nothing more.

In the next nearest city, there are tech events every night of the week.
There's a hacker space open and another being planned, startups sharing
offices and the general buzz of stuff happening. The networking opportunities
are absolutely immense - in any given week you could meet the founders of two
dozen startups, easily.

What do you think my odds are of getting a great job in each city?

OP is wrong, absolutely dead wrong. Yes, there are opportunities outside of
major cities, but they're much fewer and further between. There's an argument
that competition is less fierce outside of metropolitan areas, but it's a bad
argument for two reasons. First, it smacks of a poverty of ambition, a "good
enough" attitude that no young developer should sink to. The other is that it
isn't true. There is absolutely massive demand for good developers. Recession
or not, most firms are desperate for people who really can write software.

While I'm sure you _can_ build a good career in software anywhere, it's going
to be an uphill struggle if you're not surrounded by people who are doing the
same. There is a reason that companies are still spending fortunes building
skyscrapers - proximity matters.

~~~
warren_s
What have you done to improve your networking opportunities and the community
in YOUR city? I started a monthly lunch group where a bunch of us get together
and just talk tech. Some of us are devs, some are sysadmins, others designers,
we even have a couple of academics from the CS dept of the local university.

Because it's a small city, it's a diverse group, but this is a strength as
much as it's a weakness.

So before you throw your hands up and complain that there's "no real
community", at least have a go at creating one.

------
mikeryan
When I read Spolsky's story to me the "where from" and "where to" parts didn't
really mean anything.

For me its about someone smart enough to realize they are running in place and
brave enough to do something about it. So many people get stuck in a rut and
let it rule their life instead of the other way around. Ashton made the move.

Anecdotally, I've spent pretty much my whole life living between SF and Palo
Alto, and realized about 2 years ago that I had to do something different so I
quit my good job at a large software company to branch out on my own. Took a
huge pay cut the first year, but I couldn't be happier. Getting stuck can
happen anywhere.

------
kragen
Chas Emerick might be right, but my experience is very different.

I moved to Silicon Valley in 1996 to take a job as a sysadmin. My previous
job: bottling bubblebath in a bubblebath factory in Ohio. I managed to stay in
that job for the year it took to pay off my moving expenses, which is a
testament to the fact that I already knew some stuff, and moved back to
Dayton, Ohio, to be with my wife.

BAD MOVE. Ended up working at Keane on a Y2K remediation project, wrote a Perl
script that allowed us to do a text-scanning task in an hour that previously
took days with the Keane Assessment Tool (written in COBOL), got reprimanded
in writing for suggesting to a customer contact that we remove some unused and
incorrect code from their software, was yanked off the client site and sent to
their management training course where I was indoctrinated in their
explicitly-described-as-waterfall methodology, and was fired at the end of my
three-month probationary period.

At this point, Keane, despite making nearly a billion dollars a year writing
software to automate its customers' business processes, had a timesheet
process that worked as follows:

1\. Download the Excel spreadsheet from the Keane website onto the client
computer and fill in your hours.

2\. Print it out on the client's printer.

3\. Fax it to the Keane office on the client's fax machine.

4\. At the Keane office, the receptionist would type the hours from the
printed, faxed spreadsheet into the timesheet system, which I never saw.

From later 1997 to 2000 in Dayton, I worked at ERIM, a government contractor
developing software for hyperspectral image analysis. The level of competency
was higher there than at Keane, but essentially the project was to reimplement
in C++ a bunch of algorithms that were already implemented in ERDAS Imagine,
with the stated objective of improving their usability, but with no human-
factors people on the team. The real objective was to get the taxpayers to
foot the bill for a reimplementation of these algorithms whose copyright would
be held by the prime contractor, Ball Aerospace and Technologies Corporation.

At one point, our team lead (Teresa Cloud, of BATC) declared a policy against
using the C++ keyword "this", because she thought it was bad style. On another
occasion, I got reprimanded for using "assert" statements in my code — not for
creating the bug that triggered the assertion failures, which was also my
fault, you understand, but for the statements that detected it. As you can
tell from these stories, my technical and political savvy was quite limited at
the time, and my productivity was even worse.

During this time, you understand, I was hanging out in bookstores, talking to
people there, taking classes at WSU, going to Linux user groups and the Dayton
Microcomputer Association and Hamvention and Computerfest, occasionally doing
volunteer work with a computers-for-the-poor project whose name I forget now.
There are probably a dozen or more interesting high-tech companies there in
Dayton, but I never succeeded in finding them.

In 2000, I took a job at a startup in Seattle. It challenged me like nothing
ever had. After three months I visited Dayton, and I was astonished to find
that nothing had changed. It was like visiting Brigadoon. Time just moved so
much slower there.

When Kleiner funded us late that year, we moved to the SFBA, and I spent the
next six years working for a variety of interesting tech companies, in the
SFBA. In 2006, I moved to Buenos Aires, and although there's some interesting
stuff going on here, it's a pale shadow of the SFBA, despite having about the
same total population. The free software and contact improv communities here,
however, are amazing. But the environment does encourage me to get lazy and
slow down instead of staying ahead of stuff.

------
cemerick
A P.S. (to counter the acerbity of my comment in reply to tptacek):

It's a really, _really_ big world, filled with really bright people. They
can't all be in SV/NYC/Bos/Chi/Aus/whatever…and if they were, the world would
be worse off for it. There's important work to be done in every locale, and
there's no sense in implying that one is lesser because of where one sleeps.

~~~
jamesaguilar
> there's no sense in implying that one is lesser because of where one sleeps

I think the intended implication is not one of personal value, but that
aspiring engineers might have an easier time living in proximity to large
pools of talent and opportunity.

------
smalter
I sympathize with both sides of this. I'm a guy who grew up in College
Station, Texas, and couldn't wait to get out. Now I live in SF and NYC.

But most of my closest friends to this day are the ones I grew up with in
College Station who couldn't wait to get the hell out. Some of them left, and
some of them stayed (nearby). I think we're all making the right decisions for
ourselves.

I appreciate what I take as the main point of the article: there's nothing
special about you just by virtue of the fact that you're here (SF/NYC). I
think I relate well to people like myself (small town -> big city) but that
doesn't make us better than anyone else. There's beauty in staying where
you're from and making that place better and telling its story. I admire guys
like Guy Maddin, the Valley Forge, PA startup guys, etc.

------
danilocampos
I grew up in suburban, then rural New Mexico. I spent a decent chunk of my
adult life in Central Florida. I even lived in tiny, beautiful Bend, OR.

There's not a single one of these places that can hold a candle to the SF Bay
Area in terms of opportunity, smart people and great employers. As a tech hub,
it's an optimal destination for someone with technical skills.

"Bigger cities have more opportunities" isn't self-righteous. It's just common
sense.

So, yeah, you can make it happen for yourself anywhere. But why would you
struggle to extract juice from the oil shale that is nowhere, USA when
enormous wells of real opportunity have bullseyes painted right on the map?
Why make it needlessly hard?

------
grammaton
I think the author is attacking a bit of a strawman. It seems that the
discussion of "major metropolitan areas" assumes either San Francisco and the
Valley, New York, or Boston. Now it's true they're the main tech hubs, but
they are far from the only decent sized cities with a booming software market.
Here in Philadelphia, for instance, I've never had undue trouble finding a
job. However it's generally true that you'll do better in New York than you
will in Philly - and a lot better in Philly than you'd do in the middle of the
state. It's a simple fact of life that software development, by and large,
tends to cluster around the nearest large population center. You'll have an
easier time finding a job in the city for a fairly wide range of careers, for
that matter, simply because there's more employers around. That's neither
exceptionalism or arrogance - that's just how it is.

To lay my cards on the table - I grew up in a small town in boondocks, PA, and
live in Philadelphia, which is not exactly a speck on the map. So, I've had it
both ways, and I wouldn't even entertain the notion of moving back to where I
came from and still being able to have any kind of real career in development.

~~~
leviathant
Pardon my echo, but moving from York, PA to Philadelphia instantly at-least-
doubled my income, and (in 2006, when I moved), there were roughly 40x the
weekly opportunities available in the greater Philly area than there were in
Central PA (along rts 30 & 83), and immensely more variety in those
opportunities than what you can find, or even create for yourself back in
central PA.

~~~
nickpinkston
Did you look at Pittsburgh? I'm there and always wondering how it is out east.

