Log in

No account? Create an account
SPUG talk - brad's life — LiveJournal [entries|archive|friends|userinfo]
Brad Fitzpatrick

[ website | bradfitz.com ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

SPUG talk [Jun. 16th, 2004|10:33 am]
Brad Fitzpatrick
[Tags|, ]

My SPUG talk went good. I got told a bunch I was going too fast, but I didn't want to bore anybody.

I talked about Perlbal, load balancing problems in general, epoll, IO::Sendfile, perl's sycall, the "fields" pragma in perl, Linux::AIO, and LJ's architecture.

I was surprised that Brian Ingerson (the Inline.pm guy) knew about fields, but didn't know the coolest part: typing scalars so hash lookups are compiled to array lookups. For example:

my Classname $foo = new Classname;
$foo->{'bar'} = 3434;

That $foo->{'bar'} is actually $foo->[3] or something behind the scenes.

And if you did $foo->{'illegal_member'} it's a compile-time error.

So if I taught Ingy something, I consider my talk a success.

In addition to beer at the meeting, we went to an Irish pub afterwards where I had pre-dinner (Guiness) and later went to Minnie's for a omelette.

It was nice hanging out with Perl geeks. I met ydna, saw jope again, and talked to a bunch of cool people.

Today I'm working with lisa before she jets off to Europe for 12 days. I'm tempted to stay in Seattle to be near the LJ servers, but I'll head back tonight. There are two people here that could potentially cover us in a problem.

[User Picture]From: xaosenkosmos
2004-06-16 10:39 am (UTC)


Did you use any slides? I'd be curious to see the gist of your presentation, if it's crystalized into a set of pretty pictures anywhere.
(Reply) (Thread)
[User Picture]From: brad
2004-06-16 11:11 am (UTC)

Re: Slides?

Kinda, but they were a 5 minute job. I'd just go read the POD docs for the modules I referenced.
(Reply) (Parent) (Thread)
[User Picture]From: erik
2004-06-16 10:50 am (UTC)
I hope you didn't use "____ went good" in your talk. Poor, poor English. My server-guy co-worker makes that grammatical mistake all the time.
(Reply) (Thread)
[User Picture]From: bostonsteamer
2004-06-16 11:50 am (UTC)
Look who's talking, Mr. "2 spaces after periods"!!!
(Reply) (Parent) (Thread)
[User Picture]From: erik
2004-06-16 12:52 pm (UTC)
Oh, it's on now.
(Reply) (Parent) (Thread)
[User Picture]From: bostonsteamer
2004-06-16 01:15 pm (UTC)
Bring it, grammar boy.
(Reply) (Parent) (Thread)
[User Picture]From: ydna
2004-06-16 10:54 am (UTC)
...I didn't want to bore anybody.

There was no danger of that. Remember that when browsing through your own code (and jumping screenfulls at a time) that you kinda of know what to expect on the screen. But other people are trying to parse what they're seeing for the first time. I think most of us fall victim to it; blasting through the code because we feel, from our own perspective, that we plodding along so slowly. I suspect this is why Damian Conway puts such an amazing amount of work into his slides that illustrate line-by-line what the code is doing. (Granted, your presentation last night didn't really call for that level of preparation.) Damian thinks he's a slow typer. He only uses two fingers to do all his typing. But it's still friggin' fast if you're trying to absorb some of his witchcraft. Something to consider if you're going to show any code at OSCON.
(Reply) (Thread)
[User Picture]From: feignedapathy
2004-06-16 11:29 am (UTC)
It figures I had something to do last night. I keep wanting to go to SPUG, but I feel like I'm going to crash a party every time I think about going. :)

Congrats on the talk. I would be interesting in seeing any materials you had.
(Reply) (Thread)
[User Picture]From: bostonsteamer
2004-06-16 11:51 am (UTC)
Got dinner plans? Not sure when you're heading back to PDX, but I'll be in the U-district for a lecture at 7, if you wanna get dinner (or "pre-dinner") beforehand.
(Reply) (Thread)
[User Picture]From: brad
2004-06-16 01:09 pm (UTC)
My train leaves at 5:25p and I have to get there a bit early to load my bike, as well as bike there, so that puts me out of here at like 4:15-ish.

I'll probably be up again soon, though, if I end up working here while Lisa's out of town and need to do some server work.
(Reply) (Parent) (Thread)
[User Picture]From: bostonsteamer
2004-06-16 01:17 pm (UTC)
Bummer. Well, next time.
(Reply) (Parent) (Thread)
From: ex_tawneelyn258
2004-06-16 12:55 pm (UTC)
Glad you had an awesome time in Seattle... maybe I can offer you a cup of chai when you return. I am grateful for those that keep these servers alive...

(Reply) (Thread)
[User Picture]From: dakus
2004-06-17 12:52 am (UTC)
Guiness...that part I understood.
(Reply) (Thread)
[User Picture]From: torgo_x
2004-06-21 03:14 am (UTC)

Typing scalars

typing scalars so hash lookups are compiled to array lookups

I'm not terribly up on Perl internals, but I think that that feature may be no more, or may be deprecated. It's because that depends on pseudohashes, which didn't live up to the speed gain that was expected of them. (I.e., they actually reduced efficiency.) This was a while ago, but I think I'm remembering this right.

BTW, you should come hang with us in irc.infobot.org #perl some time. You'll see me, and Ingy, and dozens more, and a demented channel bot that talks about dicks all the time.

(Reply) (Thread)
[User Picture]From: brad
2004-06-21 09:18 am (UTC)

Re: Typing scalars

$ perldoc fields

They're implemented with pseudohashes on older perls, and a new method on 5.8+. The fields interface itself is consistent, though.

They are faster, though. (you can verify with a little Benchmark.pm work)

Thanks for the IRC reference. I didn't know where the cool kids hung out.
(Reply) (Parent) (Thread)