Zed Shaw

 

Enjoy the show.

EuroDjangoConf2009 Keynote All Over Your Twitters

I just finished my EDC2009 keynote. I wrote some python code to show the presentation with curses, and then at the same time I had another script that was streaming the same content out as a series of tweets.

I got about 1/2 way through before I was throttled. It was kinda funny really.

Rather than try to send the rest over twitter, I’ve just put it here so people can read it. Search for “TWITTER” to find the spot where it stopped on twitter.

I’ll also have an .mp3 of the keynote online so people can hear it (assuming the audio is good).

The Keynote

Thanks for inviting me to Prague.

Now I know coders, especially Pythonistas, want code.

CODE CODE CODE CODE CODE

If there isn’t a lema every two screens you feel cheated.

However, I’ve done enough of those, and nobody listens to them.

They do however listen to inspirational talks and rants.

I thought, “Why not combine them into one glorious presentation.”

Which more or less leaves no room for code.

Don’t worry though, I wrote some python to display this presentation.

Oh, and it’s also blasted out over twitter at the same time.

Let’s see how long it goes before I get shut down? :-)

I wanted to use twitter so that I could put :-) in and it’d make sense.

THE BANK JOB

I once worked at a bank named Bear Stearns.

My friends, I got out of the startup business because they couldn’t pay.

They wouldn’t listen to me, constantly disregarded my skills, talent, and experience, and never paid on time.

I figure, shit I can at least get paid on time at a Bank.

Banks never go under.

They’re worth hundreds of BILLIONS!

And then I’m at PyCon 2008 and…

BOOOOMMMM!!

No more really wealthy company. They died. Over a weekend.

B0000MMMMM!

WTF just happened?

I get back from PyCon demolished.

I basically had nothing after that. I’d told everyone in the startup world to blow me.

Living in NYC, you work for Banking, Government, or scrounge at maybe 10 startups.

I’d worked in all those industries in NYC and was done with them.

What was I going to do?

Well, JP Morgan took over Bear and basically offered me this:

JPM: “You can take a shitty job at an even bigger shitty company, OR, you can take nothing.”

I know right, tough choice, but I wasn’t going to work at JPM.

I started looking for new work, but my heart wasn’t in it.

Then I got lucky.

When the company started to tank the real leaders stepped up.

The ones who were always worthless begged me to fill out time cards so they looked good.

The real leaders started looking out for their people.

Because of this, I got a good severance package rather than a job offer from JPM.

I had a way out.

THE ENTERPRISE IS DEAD

I like to consider my past experiences not good or bad, but just experiences.

I also like to think about what I learned from these experiences.

Since really the only thing you can do when you get kicked in the nuts…

...is learn to block. :-)

What I learned from my time at Bear is the following absolute truth:

Anyone calling themselves an “Enterprise” anything is a loser.

Enterprise “programmers” are the worst in the industry.

Enterprise “architects” are Enterprise “programmers” who can’t code.

Enterprise “products” are bloated overly complicated pieces of junk.

I’m sorry if that hurts, because you identify with the Enterprise.

It’s for your own good though, because you got eclipsed.

Along the way, the non-Enterprise technology came around and kicked ass.

Technologies like Django.

Giant very profitable companies process trillions of dollars without ever touching a mainframe.

Insane amounts of money go through databases like mysql, postgresql, and memcached.

PHP processes unheard of amounts of traffic.

The tiny little bit of money that companies like Bear process is a pathetic amount.

However, the real reason the Enterprise concept needs to die is this:

The Enterprise failed the Financial world when it needed them most.

When banks were crumbling they had no way to get information they needed to survive.

They couldn’t get status, data, evidence, hell even accounting records because…

the “Enterprise Class” systems and the worthless programmers that code them couldn’t do it fast enough.

An example: Bear Stearns had a 10000% increase in the number of failed trades the 3 days before it died.

No, that’s not a typo: ten-THOUSAND percent increase. Some say it was even 20000%.

You think somebody would know right? Nope.

While Bear was dying, the CEO was off in Florida at some stupid conference.

I bet he didn’t even get an email.

Hell, nobody really knew how bad it was until after the company died.

Where was the Enterprise when Bear needed them most?

Where was the realtime updates to the CEO blackberry from key systems?

No amount of rhetoric about the “enterprise” now will convince me it is worth anything.

I now base my opinion of the quality of Enterprise products on how they failed miserably when it really counted.

Because if you go and look, every aspect of this recent economic crash was because of some crap enterprise tech.

Whether it’s the software that helped fabricate imaginary wealth with imaginary financial “derivatives”.

http://www.npr.org/templates/story/story.php?storyId=102767684

Or, the giant “bug” in Moody’s ratings software that allowed them to rate these imaginary derivatives as AAA.

The end result is that the world put their trust in programmers and software and got burned by incompetence.

I was done with this kind of programming, and this industry, which meant I probably couldn’t live in NYC anymore.

Actually, I didn’t want to code anymore at all.

I didn’t burn out, I was a victim of arson.

THE NEXT MOVE

There’s those moments in your life when you feel that swell pushing you in a certain direction.

Here I was, Mr. Rails Rant with a severance package and no desire to ever work in an enterprise situation ever again.

No desire to really write code anymore.

When Bear tanked, people actually sent me mail saying I deserved it.

Nice guys right?

Who wants to work with douchebags like that eh?

So I had a few choices:

1) Go back to work, but now with a bit of money.

2) Fuck off for as long as I could, just with a bit of money.

3) Learn to play guitar.

I felt the pull toward music, and I hadn’t felt that before.

I ended up starting to do #2, but the whole time I was thinking I could take my money, and use it to learn to play.

I’d always wanted to just spend a year studying music.

But, i was too wrapped up in programming.

I’d been playing guitar since I was 20, but not seriously at all.

Just noodle on it, fucking around.

It impressed girls, that was about it.

Well, no amount of guitar can wash the scent of nerd off me, so it mostly balanced me out and confused girls.

But now I had the chance to really study it.

The pull was there, the question was could I do it?

MILITARY TRAINING

I was in the US Army for a while.

Something I learned from the military is that you can learn anything.

You may not become a grand master of it, and you may have to work your ass off.

But you can learn to do anything with enough time and effort (and stress).

One secret to learning anything is to have a plan and take it slow.

No matter how complex a topic is, there is always a pace you can learn some simple piece at.

I wasn’t just gonna be able to stroll into some music school and start taking classes full time.

I had to audition, so I spent three months soldering electronics and playing guitar all day.

I relearned a ton of blues, practiced scales, learned other songs, and got ready.

The electronics was just something else I always wanted to do. It didn’t take long.

I kept putting off my audition. I was scared shitless.

I’d been a competent programmer for years, but I wasn’t sure if I could get in.

It was a major change I’d be going through, and that was freaking me out.

Then, one day before the deadline, I went in and just barely passed the audition.

Honestly, I knew enough scales and blues to pull it off, but I was probably seriously underqualified.

They let me join the school anyway, with not much music talent or ability, and study for a year.

I did it, and now I just had to bust my ass. A lot.

THE EXPERIENCE

I focused on mostly Jazz, but with other things considered “american” music.

I’ve been doing that now for the last year, and I’ve learned so much it’s mind boggling.

I’ve mostly learned how much I really didn’t know, and what I should study to get better.

The most important thing though, is I learned a lot about myself, and my way of learning that had to change.

If I were to break the experience down it would be into its effects on my mind, body, and soul.

BODY (TWITTER DIED HERE)

Studying music seriously isn’t a light undertaking for your physique.

Guitar is especially hard on you because it’s off center and heavy.

I was playing 8 hours a day at first, trying to catch up.

That’s hard on the body, the mind, and it forces you to evaluate yourself all the time.

My hands hurt constantly, so I had to mix things up and learn piano, vocals, ukelele, and harmonica.

Anything to keep learning about music, even if I couldn’t play the guitar all the time.

My back and arms got so tired and stressed I had to start working out to keep up.

In a way it was a very healthy change. I started doing yoga, lifting weights, and keeping fit.

However, the physical work wasn’t that difficult.

I’d had to endure harder punishment in the past.

MIND

The absolute worst thing about a sudden change in your life like that is realizing that you really are not that good at it.

My first semester I thought I was done. I could play a bit before I went in, but then I couldn’t play anything when I got out.

I was in that between stage when everything is being rebuilt.

Kind of like in Star Trek when the guy in the red uniform dies in transit on the transporter.

But then I found two books that changed everything for me.

It’ll sound retarded, but “The Inner Game Of Music” is a great book for people who are trying to learn and perform music.

For me it was important because I was very hard on myself.

From programming being self-critical is important. Constantly analyzing and criticising your programming makes it better.

For music that’s horrible because a large part of performance is confidence.

In fact, vast swaths of rock stars are horrible musicians, but they have so much confidence people love them.

The inner game of music helped me quit doing that.

Got back to what I did when I studied martial arts, or mostly anything other than coding.

Rather than being critical, just be aware of what’s going on.

Be analytical of your performance, not critical of yourself.

I now do this with my code. Rather than beat myself up, I simply critique and analyze the code.

It works much better, and removes my attachment to the work.

Another important lesson music taught me was to trust myself.

I would become paralyzed when it came time to solo, or if the other musicians were laughing at me.

I would have no idea if I could play a passage, or even blank on basic simple stuff.

Then I simply trusted myself to play, and that my training would work as expected.

A little change of perspective can turn a horrible musical experience into an inspired one.

And especially trust yourself in your musical experience.

If you get better, then that’s great. Don’t compare yourself to other people.

Because they are not you, and their experience is not your experience.

WHY ARE MUSICIANS ILLITERATE?

The other book I found was “Mickey Baker’s Complete Course In Jazz Guitar”

First off, I love books.

Books made me the man I am today.

Whether it was science fiction, or my first book on BASIC, a book is how I got my knowledge.

I’ve found though that musicians scoff when I say I learn from a book.

The really good ones don’t, but they don’t like mentioning they learn from them.

Very few full on admit and admire books. Not like programmers.

Can you imagine a programmer saying, “You learned Haskell from a BOOK? Dude that’s lame, I just code.”

Or, if they said, “Man, no book teaches the soul of Haskell? You gotta get that from life man.”

How about, “Dude you read magazines? Wow man, what’s next, cosmo? HAHAHA!”

You would think they’re morons right?

Literature is an important part of any intellectual or spiritual activity.

To have someone tell me that learning from a book is lame, or inferior was crushing and bizarre.

I almost believed them.

MICKEY’S BOOK SAVED MY LIFE

When I stumbled on Mickey Baker’s book, it was because I read an article about him.

Fascinating man, who taught himself to play at 20 and then wrote his book in the 50’s only about 6 years later.

At that time he was the #1 session guitarist in NYC.

He had played on tons of albums, and was an early adopter of electric guitars for jazz.

He hit it big with “Love Is Strange”, then got sick of the US and moved to France.

Never been back, but his book is still being sold.

And it changed my life, which sounds idiotic, but it did.

What Mickey’s book did was teach the patterns of chords and solos actually in Jazz.

Not just “here’s diatonic everything and a ton of songs. Go!”

Instead, he developed an actual Jazz method, that taught my fingers how to actually play the stuff.

Starting with simple patterns and building up.

Through this I learned about the theory of jazz harmony and found I could play more complex songs.

However, the most important change Mickey’s book brought was this:

It helped me switch from being an analytical learner to either analytical, physical, or auditory depending on the subject.

Because his book is organized as a series of progressively more complex exercises you do rote for 2 hours a day.

Doing these exercises repetitively meant turning off my brain and simply doing the work to ingrain it in my body.

That structure meant that I got out of trying to analyze each one, and instead just did them two hours a day (or more) for a week.

And when I was done, I could understand them without analyzing them to death.

Or rather, the analysis was easier, just second nature.

Before that I would desperately try to understand everything about each scale and mode and chord before I could even attempt to play.

After going through two months of these exercises, I didn’t need to do that.

I could just sit down and play things I was taught, and then by doing them and hearing them I understood them.

This shift, from having to constantly analyze things to being able to perceive from different angles is important.

I fell into the trap most programmers are in that my mind is enough to learn anything.

Yes, that’s true for programming. It’s like 90% thought already.

Once you understand code, you can do it. You don’t have to actually practice code like you do music.

You don’t sit around typing out 1000 for loops for two hours a day.

Not many other things you want to learn are like this. Most you have to actually practice.

And the goal isn’t simply understanding, it’s being able to do it without thinking.

To be able to have higher order thinking while you’re playing.

This new approach to learning and enjoying my mind is the most important thing I have now.

SOUL

This is simple: Music makes me happy.

Now, most people I tell this to say two things:

1) “Man, I wish I could do that.”

2) “Yeah, but you got lucky and got a wad of cash.”

It’s true, I did get lucky, even though that was after a string of fairly horrible luck for a couple of years.

Not everyone can just give up their day jobs and go all out with music, or art, or dance, or porn.

So yes, I got lucky, but remember I had a choice.

I could have easily just kept on coding, or got another job.

I didn’t have to go learn to play guitar.

In fact, most people were stunned that I dropped so much on something they considered “useless”.

They kept asking, “What are you going to do when you’re done? I mean, can you get a job?”

I would love to, but music is my art for now.

What I wanted though, was a new thing to be interested in.

Programming wasn’t interesting, and I needed to change my life in some drastic way that didn’t involve more code.

When given the choice to sit at home in front of a computer killing myself slowly in a sedentary lifestyle, or go out and try to learn to play music, I went with music.

Because, while it’s not a great job, music has so much more happiness potential to it than just some damn code.

For this very simple reason:

When I am playing horribly, and can’t make anything sound right, it’s my fault. I suck and just need to work harder.

When I can’t make something on the computer work, it’s always because of some other asshole and his stupid fucking API, or OS, or HTTP knockoff.

That makes spending a year to learn music worth way more than I ever paid for it.

I’ll be able to enjoy it the rest of my life, and when code is fucking up my day with your stupid frameworks and protocols…

I now just go play the guitar and I’m satisfied.

WHY AM I TELLING YOU THIS

Yay, Zed is talking about himself again.

No, I’m talking about you, members of probably the greatest community I’ve experienced so far.

After close to two years hanging out with Python and/or Django period I haven’t found the evil.

I’m really good at finding the evil.

C++ was just born from pure evil.

I think it took me like 2 days to find the evil in Java.

Ruby took about 6 months to find the evil, but the evil there was like gazing into Satan’s anus with a telescope.

I still haven’t found any evil. You guys genuinely enjoy what you do and want to make it better.

Because of that, I really think Django and Python will be around a long time.

In fact, I think you guys have a chance to unseat the Enterprise that destroyed the banking industry.

You’ve got the right community, the right attitude, everything.

In fact, let’s do this right now. Everyone stand up, and thank the person next to for being awesome.

And, while we’re at it, let’s all give a round of applause to the people who make all the gear we use.

People who make gear, give a round to the people who use your gear and support you.

Good, and it’s alright if a bunch of felt that was cheesy and pointless.

I know there were some of you, people who get weirded out by overtly social things like that.

Well, let’s give these folks a hand as well. You’ll need them to keep you grounded.

Also it makes them uncomfortable. Painfully so.

However, I’m telling you this little story as someone who was a part of many different communities.

They all start like this, and then they all descend into evil.

I haven’t been able to figure out exactly how it happens.

Leadership starts making backroom deals, the community supports them blindly, and contrarians become “trolls”.

It doesn’t matter, everything is temporary, so just enjoy what you have now. It is very awesome what you’ve built.

While Django is probably going to be around for a long time, it really actually doesn’t matter.

My year of studying music reaffirmed my experiences during my life:

Identifying yourself with anything constrains you to be that ideal rather than a real, unique, different, person.

This is why I don’t want you to identify with “Enterprise”.

Or, “Djanog”, “Python”, “Programmer”, “Coder”,

Not even “Computer Master Ninja Black Belt Level 3”.

Because I’m level 10 so just give up.

No my friends, what I would love, is if you just quit fetishising technology and identifying with it.

I’d be ecstatic if you stopped thinking the entire world is about code, code, code.

I want you to explore this world using this unique tool of computation, not explore computation like it is the world.

CRITICAL THEORY IS RETARDED

I believe that critical theory is wrong for engineering because it only implies solutions.

Marx never laid out a blueprint for his system of government, he just said capitalism was wrong.

He implied the solution so that, if it worked he’d get credit, but if it failed he could say,

“Hey, I never said implement communism that way. I just said it should be implemented.”

It’s a neat trick, but it won’t help you actually make something.

Criticize broken software all you want, only actual code will fix it.

However, this is the best I can do on a topic like this, since I’m not you.

I’ve implied that you should be something other than a programmer.

Maybe being a programmer is the thing that makes you happiest. Good for you.

I’ve implied that we should kill the Enterprise, but I haven’t said how to do that.

Probably because I stopped giving a shit about Enterprise crap a few years ago.

Everything I’ve said is just suggestions and stories from my life.

Again, I’m not you, but let’s say I were to give advice based on my experience.

1. Find something that is completely outside your experience.

2. Set a specific goal. Mine was to study full time for one year.

3. Take it seriously enough to take courses. Self-learning won’t work.

4. Plan on practicing two hours a day, with one day for a break.

5. When you get discouraged, keep going for at least 1 more month.

6. When you get stuck, start looking for new learning strategies.

7. Don’t compete with others, only with yourself.

8. Find other people doing this and play with them.

9. I also kept track of some metric of my progress. For me it was BPM.

10. Finally, it’s alright to fail, just do what you can but a little more.

That, my friends, is the best advice I can give right now.

Thank you. :-)

Topics

Music

Twitter

  • Nothing from twitter.