Since I'm a bit too old to go around the neighborhood asking for candy, I'm spending a lot of time working on the book today. No blog stuff.
Okay, maybe. I'll mention that AmphetaDesk 0.93.1 has been released.
So you may have read about the fact that we're thinking pretty hard about re-architecting things to use lots of XML at work. Now we're facing an interesting challenge, and I'd like to ask the blog world for advice. Surely we're not the first group to encounter this.
The problem is that we have tons of data that we need to represent in XML. Much of the data is related to stock tickers. For example, given YHOO, we have earnings information, P/E ratio, average daily volume, EPS, full company name, and so on. However, we also have some data that doesn't map to particular tickers--instead is maps to more general symbols that we use internally (industry codes, etc.).
We're trying to figure out how to create an XML Schema (or several?) that encompasses the full collection of data that we may want to publish both on-line and internally. It's hard to figure out the right approach or where to start.
Do we build one gigantic schema? If so, what problems do we run into down the road? Will we be generating new versions too often?
Should we instead build several schemas? One for us, one for those who consume our data, and others as needed?
If anyone has written about this from a practical point of view, we'd love pointers to it. (At least I would.) Theory is all well and good, but if you haven't been through this exercise before, I'm going to be skeptical about your recommendations. Why? This feels like a hard problem that looks easy on the surface.
Also, what about naming conventions for both namespaces and elements? That's likely to become a semi-religious debate quickly, but it can't hurt (too much) to ask. :-)
This is a little funny. Yahoo got slashdotted today. It was because of Michael Radwin's PHPCon 2002 talk on Yahoo adopting PHP. The funny thing is that it held up just fine--served by a single FreeBSD server running Apache. The hardware was nothing special. So, why is it that when most sites get "featured" on Slashdot, they crumble?
They generally have two fatal flaws: (1) not enough bandwidth, and (2) dynamic content. We're fortunate enough to have some excellent network connectivity, so we can handle a lot of traffic. The fact that public.yahoo.com was serving static files, no PHP or anything fancy, meant that the CPU had time to spare. During the peak of traffic, the CPU was still over 50% idle much of the time. Running a tail -f against the apache log was quite amusing. It was scrolling really, really fast.
Reading over the comments, I noticed that almost everyone suffered from a similar mental disorder: they didn't bother to read slides before commenting. It's really pathetic. Won't the Slashdot freaks ever learn?
Ah, well. I suppose that's what's so great about free speech, huh?
The latest release of mytop is now available. Various minor bugs are fixed, and I've added stats for the query cache in MySQL 4.x. The announcement should be on Freshmeat shortly too.
After the conference was officially over, I had some time to hang out with Zak and Jim (from MySQL AB), Shane from ActiveState, Scott, and a few other folks. We munched on the hotel bar's snacks, had a few drinks, and chatted about lots of geeky stuff and some not-so-geeky stuff.
But if there was any doubt as to our true nature, the truth was revealed when Zak busted out a notebook to get down-and-dirty with the source code to figure out the right way of fixing PHP's mysql_pconnect() so that it'd be less wasteful of connections.
Heh. Oh, well. Another conference over. Met lots of good people, some new and some old.
Perhaps some of them will even be at PHPCon East 2003. :-)
The conference was closed by Dirk, one of the founders of Rackspace discussing the critical role that PHP played in getting Rackspace off the ground. He focused on PHP's integration, quick development times, and flexibility.
He then threw us a bit of a curve ball by revealing that a sizable chunk of their PHP code is being replaced by Python. The silver lining in the story is that SOAP is allowing them to keep much of the customer-facing stuff in PHP and the back-end code in Python.
In chatting after his talk, I was impressed that Dirk remembered me from last year's Open Source Database Summit. He did a keynote talk there too. Apparently he remembered my first talk about Yahoo and MySQL.
On Friday afternoon, I had to spend some time with the conference staff to go over various things. In the time I had left, I bounced between Scott's PHP Security talk and George's High Performance PHP talk. Scott's was a little basic for the audience, as he notes on his weblog. George's seemed dead-on. I learned how to do things in PHP that I knew how to do with Perl--benchmarking and profiling. It's good to know that PHP has those bases covered.
I didn't get a chance to visit Shane's SOAP talk. I would have liked to sit in for a few minutes, but I got caught up in George's presentation.
On Friday morning, I sat in on Stephan Schmidt's "Introduction to XSLT with PHP" presentation. What I found interesting here was not how XSLT works (I already knew that) but the two things I learned. First, I finally got a handle on XPath syntax. I'd heard that it is powerful--a sort of "regular expressions for XML" but never spent more than 10 seconds looking at it. Now I have a much better appreciation for it.
The second thing I got out of it was an idea of how many XSLT related PHP modules are floating around out there. I expected there was just one or two. The good news is that XSLT with PHP seems to be decent now and rapidly improving.
On Friday morning, I attended Michael Radwin's Making the Case for PHP at Yahoo! talk, even though I'd seen it the day before at work. The room was packed. A lot of people were interested in what we're doing with PHP at Yahoo. And Michael's talk did a great job of explaining things.
He started with an overview of Yahoo's server-side "scripting" technology, from the early days all the way thru to today. He also spent some time discussing what makes Yahoo special and how that factors into our requirements for a scripting language.
He then discussed the selection process we went through and the benchmarking we performed. Finally, he discussed what we've learned in the 3-4 months since PHP was first deployed at Yahoo.
After all the talks were nearly done, I hooked up with George, Scott, Bryan & Tiffany (of Pyzine fame), and a few others. We headed downstairs for drinks and food in the hotel bar.
We chatted about tons of stuff. Google, Yahoo, weblogs, Dave Winer, O'Reilly's lack of PHP books, the World Series, and so on. The food wasn't terribly good (don't order the peach cobbler) but he beer was.
Other groups ventured up to San Francisco for food, dancing, and other festivities.
On Thursday evening, the last Work-in-Progress talk I attended was Philippe Lewicki's "Enterprise Application Migration to PHP/MySQL" in which he described his company's approach to migrating a typical business application to the web using PHP and MySQL. The current system runs a on a Mac server and clients on Windows. The clients can generate simple reports and graphs, as well as running standard queries and entering new data. By using Mozilla, MySQL, PHP, and some interesting PHP modules and add-ons, they've been able to provide a pretty compelling web and open source-based alternative.
Some of the things he demonstrated were really impressive. I'm starting to wish I had taken more notes. Or any notes.
On Thursday evening, I attended George Schlossnage's Work-in-Progress talk on Apache_Hooks, a project to allow PHP access the various request phases of Apache. George is actually an accomplished mod_perl and PHP hacker. So he got involved with this project (originally conceived by Rasmus) to try and level the playing field a bit between PHP and mod_perl.
To provide a bit of context, imagine being able to write an Apache authentication handler in PHP that could then let control pass on to a mod_perl content handler.
Apache_Hooks is still very experimental but it seems to work reasonably well. It's in a separate branch of the PHP CVS repository for now. Nobody know if or when it'll become mainstream, but it is very cool stuff. It sounds like a few folks were interested enough to try running it in production.
I have a copy of his presentation, but I'm sure he'll have one on-line soon. Check the PHPCon web site in a week or two. We're trying to gather all the presentation links there.
This WiP also demonstrated the power of wireless networking in an amusing way. George was having trouble with the projector because his newer TiBook doesn't have a standard VGA out plug and he forgot the adaptor for it. Nobody else had one either. We puzzled over what to do until someone realize that 5 or 6 of the 10 of us in the room all had laptops with 802.11b cards and VGA out. So we setup an ad-hoc wireless network and FTP'd the slides from George's machine.
Update: As George notes, his Apache Hooks talk is now on-line.
On Thursday afternoon, I attended Scott Johnson's Software Engineering Practices for Large-Scale PHP Projects talk. His talk was very popular (had to move to the ballroom) and very good. Scott did an excellent job of reminding us all that just because PHP is easy to code, we shouldn't take shortcuts and forget everything that software engineering stands for.
Much of the advice was very practical and often backed up with real-world examples to illustrate some of his points. Give the talk a look.
On Thursday afternoon, I gave my Scaling MySQL and PHP talk. Amusingly, I put the talk together only 1.5 days before the conference after I found out that a speaker had canceled and they needed to fill a spot.
The alternate title for the talk is "The making, breaking, and repair of remember.yahoo.com." It covers the project to build remember.yahoo.com in one week's time, the site launch, most of the problems we faced while it was on-line.
The talk was well received and I enjoyed presenting it. It's always fun to say, "look, we did some stupid things--try and learn from our mistakes."
On Thursday morning, I attended Christian Wenz's talk about Microsoft's ASP.NET, Web Services, and PHP. He began with a short introduction to Web Services and XML. Then he demonstrated building and using Web Services using Microsoft's ASP.NET and C#. Then he discussed how this relates to PHP. Is PHP dead? Can it compete?
He then discussed a few ways that you can both produce and use Web Services using various PHP modules. It's not as easy as Microsoft makes it, but it's certainly not impossible. And it's only going to get easier as time goes on.
I actually learned more from this talk about ASP.NET than I did about PHP. I feel like I understand both technologies better as a result.
On Thursday morning, Rasmus Lerdorf (now working at Yahoo) gave the opening keynote. (Expect it to appear here someday.) He covered physics, rocket science, the web problem, and a little bit of PHP along the way. One of his main points was that the web problem isn't fundamentally difficult. Unlike complex web software from various commercial vendors, PHP provides the basic tools to need to build solutions to "the web problem" without feeling like you need a degree in rocket science to get started.
There was a bit of discussion about changes to the language in PHP 4.3 and/or 5.0. The one point that came up repeatedly is that PHP will create references to object by default, rather than copying them. That may break some existing code, but it'll do What Everyone Already Expects so it's a Good Thing.
Now that I'm mostly recovered from PHPCon 2002 (still a lot of work e-mail to plow through), I'll try and recount what I remember of the keynotes, sessions, and so on.
In general, I enjoyed the conferece a lot. Met some interesting people and learned some new tricks--as always.
I was reading the comments in Brent's weblog and ran across the term "Flashturbation." I like it. It says just what I've been thinking about "web designers" who substitute flash for real design.
When I put "Jeremy Zawodny" in Googlism, here's what it told me.
jeremy zawodny is an engineer at yahoo
jeremy zawodny is an engineer in yahoo
jeremy zawodny is the executive editor of linux magazine
jeremy zawodny is the head mysql guy at yahoo
jeremy zawodny is blogging the o'reilly os x conference
jeremy zawodny is blogging from osxcon
jeremy zawodny is blogging the o'reilly mac os x conference
Had multiple meetings and work, a very long phone call, and I still have a fair amount of work to do on the PHPCon presentation for tomorrow. It's gonna be a longish night, I fear.
A presenter just cancelled, so it looks like I will be talking at PHPCon. Now all I have to do is put together a 90 minute talk. Soon. Really soon. Because the talk is Thursday afternoon.
I had a feeling that I should have prepared something "just in case" but decided to ignore it. Murphy, however, was taking careful notes that day.
My talk should be in place of Dan Cowgill's on the schedule.
Mena and Ben have setup a Trackback page for PHPCon. If you're planning to blog PHPCon, feel free to ping one of the categories. Given that it's a small conference and there's no wireless, I don't expect a lot of activity, but you never know.
Thanks to Mena and Ben, as usual. :-)
I haven't written much about work here recently. There hasn't been a lot to say--well sort of. I'm in limbo with the whole "I'm moving to Yahoo! Search sometime soon but not too soon and am waiting on other people" thing going on.
On the slightly interesting front, I've been involved in some interesting discussions about the suitability of XML/XSLT to a major revamp of a the Yahoo! Finance infrastructure. It's really fascinating in a way. This stuff all sounds great in theory. But there are so many little and not-so-little issues that come up when you're considering a major shift toward this relatively "new" technology.
The discussions aren't over yet. In fact, they're really starting to get interesting now. For a while it was a less engaging "status quo vs. PHP vs. XML/XSLT" sort of conversation. Now it's headed along the "what if we decided to adopt this in a major way?" direction. Would that better position us for internal data sharing? Separation of business logic from presentation logic? Web services? And so on...
Strangely, this is the first time in 3 years that I've really felt like many of the engineers in Y! Finance have come together to attack a common strategic problem and really re-think things. We're all so used to just working within the confines of our little sub-groups on tactical problems. There are three sub-groups, if you're curious.
Anyway, I'd write more about it (because I've been thinking a lot about it and what it means for building modern infrastructure), but I fear that it's not terribly interesting stuff to most people.
If you compile your own MySQL server on FreeBSD and link with the LinuxThreads library, make sure to compile with the -DHAVE_BROKEN_REALPATH option.
The short version is that FreeBSD's realpath() isn't thread-safe. That causes badness with LinuxThreads on FreeBSD, because MySQL uses lots of relative paths and globally shared file descriptors may end up pointing to all the wrong places. I'll explain in more detail if I get a chance.
Oh, you could just read my post to the MySQL Internals mailing list, too, I guess. Heh. Sorry I can't link to the original. The web archives are a little funky. Hmm.
Are you planning to blog PHPCon later this week? If so, let me know. I'm trying to get some sort of TrackBack site or something setup to aggregate the discussion. I'll likely link it on the PHPCon web site too.
Oh, there won't be wireless like all those fancy O'Reilly conferences have, so it'll have to be an evening activity. Sorry. It's just too expensive for a first-time conference. Maybe we'll change that at next year's PHPCon...
Oh, it might be fun to play "count the Yahoo employees" at the conference too. There will be many of us there. Heh.
I'm no longer quite sure how I came to find this, but here's a Live Journal entry that offers advice and information to would-be NYC visitors.
I mention it because (1) I've never visited NYC but would like to someday, and (2) I think it's well done for what it is intended to be.
Oh, right. I ran across it in the lengthy discussion here on Jason Kotte's weblog. You see, he's headed to NYC from San Francisco.
(I may be seeing a lot more of San Francisco in the not-too-distant future, but that's a story for another day.)
I like the name "undesign" for a weblog. It just fits.
There was also a reference in the comments to NFT, Not For Tourists and the guides they produce. If I ever get my ass up to NYC, I may find their stuff useful.
Mornings just aren't my best time. Bleary-eyed, brain dead, wishing I was still stretched out in bed. Bleah.
Yeah, I'm with you.
Yet another person I respect saying good things about Ruby:
Ruby has pretty much already got all the bits of Perl 6 I'm excited about, plus the additional bits which I was looking for subconsciously while I was messing with the croc project. I have a few gripes about it, of course, but on the most part, it does the right thing.
It's already on my list of languages to learn soon.
It's about time someone else noticed.
I like ESR, and respect him a lot; when he's talking about software or open source economics. For anything else, he's off the fucking map.
And I couldn't agree more.
Great work, guys!
He sees it and sometimes I feel it.
What to do?
Is it time for a change perhaps? Maybe a big change? Could be.
More on that later. Several interesting things are in the works...
I just noticed a ton of Mac related news. Here are the ones that caught my eye:
Things are shaping up for Mac world.
Woody Harrelson has some excellent things to say in his Guardian article. Go read it. Now.
Here are just a few bits I liked.
The history taught in our schools is scandalous. We grew up believing that Columbus actually discovered America. We still celebrate Columbus Day. Columbus was after one thing only - gold. As the natives were showering him with gifts and kindness, he wrote in his diary, "They do not bear arms ... They have no iron ... With 50 men we could subjugate them all and make them do whatever we want." Columbus is the perfect symbol of US foreign policy to this day.
Same old story. Must conquer. Modern business is the same way. Grow. Exploit. Profit. Repeat.
In a country that lauds its freedom of speech, a word of dissent can cost you your job.
Yeah, it's sad to see how many people have forgotten how to think--preferring to let the talking heads on the TV tell them what to believe.
I read in a paper here about a woman who held out the part of her taxes that would go to the war effort. Something like 17%. I like that idea, though in the US it would have to be more like 50%. If you consider money as a form of energy, then we see half our taxes and half the US government's energy focused on war and weapons of mass destruction. Over the past 30 years, this amounts to more than ten trillion dollars. Imagine that money going to preserving rainforest or contributing to a sustainable economy (as opposed to the dinosaur tit we are currently in the process of sucking dry).
Someday, somehow I hope we'll figure out how to elect someone that actually gives a shit about progress--for the whole planet, not just the bank accounts of his campaign donors.
And no, I'm not just saying that because I work there. It's because it keeps crashing. Presence and status messages are often out of sync. And my friends keep asking my why AOL is so much better than Yahoo at making this work.
Well, I don't know but I'm getting sick of it. Messenger just crashed again on me. Grr.
I hope the folks who work on messenger don't take this personally. I have no idea whose fault it is.
Update: It seems that Russ agrees.
I know this has been going on for a long time, but I generally shop for everything (except food) on-line. So I haven't had to deal with it for several years. I was just at Office Max looking for whiteboard on which I could draw diagrams (figures for my book). I found one I liked and headed to the register to pay for it.
The checkout guy asked "Can I have your zip code?"
What the fuck is with retail establishments asking for my zip code? I know why they want it, but it bugs the hell out of me. How much of their work do they expect me to do?
"No," I said, "you can not have my zip code. Can I have your home address?"
He wasn't happy. But I don't care. He insulted me, so he deserves it.
As the Macintosh clan soaks up Unix, LDAP, and first-class scripting languages, the Unix tribe is discovering AppleScript, AppleEvents, and most crucially, a refined end-user sensibility. The world has never seen, until now, a Unix computer that the average computer novice could use.
For my take on how Mac OS X relates to RedHat Linux, read the November issue of Linux Magazine.
From the Defective Yeti
I started thinking about this yesterday, when I had this hil-lare-ious idea of taking the movie poster for My Big Fat Greek Wedding, and Photoshopping it so that it contained pictures of Bill Gates and Keven Smith and whatever, and then renaming it My Big Fat Geek Wedding! Ha! But then I foolishly decided to search Google for the phrase "My Big Fat Geek Wedding" and found out that I am the last person on Earth to think of this. Stupid search engine.
Yeah, I've been there before.
So my neighbor came downstairs to bang on my front door. "Do you smell smoke?!" she asked? "Now I do!" I said, after having opened my front door.
There was a fire of some sort burning in the house attached to our building. We poked around for a minute. She ran around to their front door and tried to see if they were home. They were not. She saw flames in their back patio--right near my front door. She grabbed the hose. I prepared to call 911, as I had brought my phone out with me.
Moments later, the fire was out. It was small. The fire department arrived. Someone else must have called--probably the group across the street who were staring at us.
The verdict: They smoke. It was probably a cigarette that wasn't properly extinguished.
This bothers me not because they could have burned their house down, but because it is attached to mine, so it could have burned mine down too (as well as my upstairs neighbor).
This is just too funny. At least if you've watched much Star Trek.
If you're in the area and listen to KQED once in a while, consider doing the same--even if it's just $10. I'll be the first to admit that NPR and KQED aren't all that they could be, but they're so much better than the commercial alternatives. Heck, I probably listen to 12 hours worth of it every weekend.
When you meet a beautiful girl, have the chance to talk with her for over 4 hours, and eventually get her business card (and hope to ask her out)... check the contact information.
That's all I'm saying on the matter. For now. Maybe more later.
On a related note, I feel like Lloyd in Say Anything--right at the beginning of the movie when he says, "I want to get hurt."
Damn. I just heard that David is going to be Redwood City next month. But the show is already sold out. Damn. I'd love to go to that show. I wish there was a better way to find out about this stuff in advance. Where are the RSS feeds for upcoming shows from tickets.com, tickermatser.com, and so on.
Yeah, that'd be good. Maybe one feed per category: comedy, rock, country, and so on.
So we've been having major server problems all day. And, of course, it hit them all at once. Ugh. What a freaking mess.
According to this morning's report on KQED, Bay Area apartment rents are down to their lowest levels since 1999. However, I also recently heard that Bay Area housing prices are still on the rise. In fact, prices are up 12% from this time last year.
Does this strike anyone else as being odd? Perhaps we should start tearing down apartments and building houses...
With the recent changes in climate and stuff (cooler, darker earlier), I haven't been biking much AT ALL. And I know it's just gonna get worse as time goes on. I probably won't do any serious biking (other than afternoon rides on the weekend) until Spring. I'm starting to feel it. I'm sluggish. The scale is reading higher numbers.
The bottom line is that I need to get off my ass more. And regularly. I need something for every season. But I'm not sure what I should get into now. I've thought of using the exercise bikes in the gym at work. On the plus side: (1) I'm already at work, so it's easy. (2) It could happen in the early evening or late afternoon, which is when I always start to drag anyway. (3) I could read a book or something, since there's no steering necessary. Heck, maybe I'd even catch up on this big pile of books and magazines.
On the negative side: (1) It could get boring quickly. I suppose some headphone and good MP3s would help, though. (2) Being that it'd be less fun than "real" biking outside, it might be easier to slip out of the routine.
I'm not sure. I've never been much of a runner--not that I've ever tried. I've also never been one for (most) group sports. So you won't find me on the basketball court. Maybe volleyball, but the weather won't be right for that until Spring, too.
Any ideas? What do other guy geeks out there do?
Update: I forgot to mention that I used to go to the gym on a semi-regular basis during some of my semesters of college. It seemed to depend a lot on my schedule, the weather, and having someone to go with me. Hmm. What lessons should I have learned by now?
It's gotta be chilly up there.
Wal-Mart has opened an online DVD rental service at its Web site, confirming speculation that the market for online DVD rentals created by Netflix would attract a large, established company. Wal-Mart's offering is aimed directly at Netflix, offering similar services for $18.86 per month, versus Netflix's rate of $19.95. For each service, customers request DVDs online, and the company pays postage to ship the films. There are no due dates for either service, though subscribers are allowed only three movies at a time. Reed Hastings, chief executive of Netflix, said he is not concerned about Wal-Mart's "unimaginative" and "slavish imitation of Netflix." He said his company knows "the area better" and can beat Wal-Mart. A spokeswoman for Wal-Mart said the company would modify the service in coming months based on feedback from subscribers. She said the number of subscribers will probably be limited until the full roll-out of the service next year.
I'm so behind on blog reading. Wow. It's amazing what a few days away can do.
We drove out to the nearby orchard so I could get some Jonathon apples to eat and take back to California. I've yet to find anywhere that I could get them in or near Silicon Valley. Anyone know?
Got apples and some donuts. That was lunch.
Now I'm all packed and ready to head back to the land of expensive housing, sunny weather, traffic jams, and good Chinese food. I'll be back in Ohio around Thanksgiving time rather than Christmas this year. I may be able to avoid snow completely this year--if I'm lucky.
As noted over in reflective surface, task switching sucks. I often complain about that at work. It really, really slows me down at times.
Well, it's under 50 degrees out right now (10am Eastern). It's gonna maybe possibly freeze tonight. Then, 16 hours later, I'll be on a plane back to sunny California.
I had forgotten what it's like to have seasons other than (warm/sunny and cooler/rainy). Mental Note: Move to somewhere that has seasons one of these days.
The trip to Ohio was relatively uneventful. Flew from SJC to ORD to TOL. Jamie Farr was on the plane from ORD to TOL.
Setup the WAP11 at my parent's house. My ThinkPad and TiBook are on the network just fine. Dad's cable modem service is decent.
I got up really early to help get off California time and on to Ohio time.
I should wander the house with the notebook and test signal strength.
Blogging will be light over the weekend, as I'll be hanging out with family in Ohio.
Damn. It's gonna get chilly on Sunday. I guess I should pack some jeans with my shorts, huh?
Since it has been announced internally at work, I figure it's safe to let the few other people who might care know. In the relatively near future, I'll be leaving Y! Finance and moving to Y! Search. So, no--I'm not leaving Yahoo! I'm just going to be working on different problems with different people.
It should be quite an interesting new role.
So there. :-)
My Tivo has been picking up the Twilight Zone for the last few weeks. I have to say, I'm really enjoying it. It reminds me of the old ones. It's good to have it back on the air.
I'll be in Ohio this weekend for a family gathering, so I'll be missing Fleet Week (Google can't find a good "official site"). Damn. I've wanted to see the Blue Angles again. Wow, that site sucks. And Google couldn't find it easily by searching for "blue angles." I had to specify "navy blue angles." Yahoo, on the other hand, knew exactly what I wanted.
I did catch them flying formation over Moffett on the way to work yesterday. I believe they were preparing to land. Oh, well. Next time, I guess.
UPDATE: Uhm, yeah. I'm a moron. Just read the comments below. I could just delete this story entirely, but why bother? I'm sure I'm not the only one who has even mis-spelled a search term and then become upset with the search engine for not Doing The Right Thing. Right?
I had the distinction of being the only employee to ask a question of our executive team that required all five of them to attempt an answer. I guess that means it was a good question.
Oh, and being thanked by Filo during the discussion of remember.yahoo.com was cool too.
According to this story on Y! News, "Jay Leno has booked two men who are famous worldwide for shaping their penises into fast food icons and landmarks."
Who'd have thought...
On a Saturday the New York Times technology news page and Yahoo's technology news page are very similar in content, but could not be more different in design. The differences are telling.
I especially like the font rant.
If you like to live on the bleeding edge and play with code that's not yet ready for prime-time, good news! You can now get the MySQL 4.1 source tree. The only real difference from the 3.23 and 4.0 trees is the port number. It is 7004.
Well, there are differences in the code itself, but getting the code is just as easy:
bk clone bk://work.mysql.com:7004 mysql-4.1
And start compiling.
For the past week, I've been waiting for one of my FreeBSD servers to reproduce a problem we've been seeing with MySQL + LinuxThreads. This particular machine is running a custom build of MySQL 4.0.4 (or MySQL 404, as I like to call it). So far, no problem. Why? Probably because I'm watching... waiting... and waiting...
A week ago, I couldn't keep the server from shitting itself every 12 hours. Now it's been up for almost 5 days.
I've always love reading jwz stuff, and it's not because we both have the same first and last initials.
I think I still enjoy writing software, usually. But what I end up spending almost all of my time doing is sysadmin crap. I hate it. I have always hated it. Always. If you made a Venn diagram, there would be two non-overlapping circles, one of which was labeled, "Times when I am truly happy" and the other of which was labeled, "Times when I am logged in as root, holding a cable, or have the case open."
The defective yeti isn't fond of Culture Jam. I read it a year or so ago and joined Adbusters as a result. I liked the book, but more importantly, I liked the message. It resonated with me. A lot. Yes, there were things about the book that bugged me, but I overlooked that in light of the more important messages it contained.
If you haven't read Culture Jam, please do. It's worth reading even if you end up disagreeing with everything it says. You should also read Fast Food Nation as well.
One of these days, I'm gonna put a books category on my blog. But today is not that day. Neither will tomorrow be. Another book looms on the horizon. In fact, I need to update the crappy ass poor excuse for a web site I've got there. Perhaps I should make it more weblog-like. Maybe I'll use MovableType and spruce it up.
Yeah. Anyone want an RSS feed for progress updates on my book? Well, anyone other than my editor, that is?
Oh, you might be asking yourself why I work for a big media company if I'm a culture jamming fan. Well, I'll answer that later.
Is it just me, or is RSS really, really close to critical mass. You, know the kind where you read article in The Wall Street Journal about it. Well, Dave notes that "I just learned that RSS is being taught at a computer class at Harvard." and goes on to note that there are two article in the San Jose Mercury News: this one talk about the major RSS aggregators--both web sites and desktop/server software, and this one even mentions our little Finance News RSS test.
That second article has some other interesting tidbits.
One RSS developer said most major media companies worry about news feeds driving people away from their advertising-supported Web sites.
Uhm... DUH! But if these sites still haven't learned the "advertising lesson" yet, when will they? Ever?
Nonetheless, more mainstream sites are coming around. The BBC announced in August the availability of four news feeds. And the New York Times recently started making feeds available users of Radio UserLand software.
I have to say that the BBC rocks. They've been doing great work in streaming audio--even providing experimental Vorbis feeds. I tried those out a while back and rather impressed. Generally, the BBC seems technologically open-minded and likely to "do the right thing" or something close to it.
Here's my favorite part:
As for the future of RSS, developers are discovering new uses for the technology seemingly everyday. Yahoo is beta-testing a financial news feed. Web enthusiasts have recently figured out how to suck Amazon book titles and Google news headlines into news readers. And other developers are fiddling with ways to import calendar and weather content.
No, not because it mentions one of my projects. I've been named in the press enough recently. I like that because it's very clear about the future. The handwriting is on the wall: Provide RSS or someone will do it for you!
I hope the right folks are listening. No, not to me. Why would they. But listening to the RSS buzz. It's getting louder and louder. You can ignore it, but it is NOT going away. There's a good reason that NetNewsWire is one of the hottest applications to hit the OS X desktop this year. Part of that is because Brent rocks, but a lot of it part of a much larger shift that's taking place. And with all such shifts, you either get with the program or find yourself wondering how and why you missed it.
If you're still reading, I highly recommend reading Clay Shirky's Weblogs and the Mass Amateurization of Publishing. He has ideas that you probably haven't thought about yet.
Last week, I noticed that I was on Dave's radar. Now that I've caught up on blogging, it seems that I'm on Windley's radar too. He picked up on my FreeBSD/Linux MySQL story and that provoked an interesting discussion of "Abundance Mentality" that has continued here.
Specifically, Phil says:
Blogging requires what is called an "abundance mentality." If you don't approach it with the mental attitude that there's plenty to go around, you're less likely to share, which is at the heart of blogging. The cynical side of me wonders if this might not be blogging's fatal flaw: it requires a fair amount of altruistic behavior.
I have to admit that I never really thought about it before. But now that I do, there are parallels between blogging and Open Source.
However, when you look at the larger blogging sphere, like all the younger kids who are getting into it, things are a little less clear. But in the realm of sharing professional information, I agree so far.
As noted in the inluminent weblog there don't seem to be many bloggers at OSXCon. At least they're not blogging. That's rather disappointing. They were strong at OSCON and the Emerging Technologies Conference (damn, I wish I had the foresight to go to that one).
Check out the MT TrackBack page for OSXCon to see the few folks who are blogging. There's what, four of us? Maybe five? :-(
I realized something the other day. I've been programming in Perl for roughly seven or eight years now. Maybe nine. It's hard to remember for sure. But at some point it lost its shine. It used to be a lot of fun. I programmed for the hell of it. I loved the Perl culture and community. I didn't dream of using anything else.
Anymore, I'm really seeing Perl as just another language/tool/whatever. I feel compelled to start looking into other languages--namely Ruby and Python, just to stimulate that part of my brain and have some fun again.
I don't know when this all happened, but it has really only come to my attention recently. I suppose it's natural. I mean, how long can you program in the same language before it get a little old?
Or maybe it's part of something larger that I haven't figured out yet.
The business news of the day has long been telling us that we're in a very slow economic period. Yet I've received multiple job solicitations recently. Not random head-hunters or anything. People I know, who know me relatively well, want me to work for/with/near them.
I'm not sure what to make of it all. But one thing I've learned is that sometimes life is trying to tell you something. And it's best to try and listen. Yet other times, you're reading something into nothing. Hard to tell which is the case here, but I'm leading toward the former.
The really odd part is that I hadn't even touched my resume until the other night when someone asked me to send a copy. So I updated it a bit. No harm done. I don't know what, if anything, will come of all this.
Well, I'm not going to defend Terry. He doesn't need me to do that. It's pretty clear, things are very different at Yahoo than they were a few years ago. Or even one year ago. Semel has a lot to do with that. He sets (or should set) the tone for the company. A lot of that article is true, as far as I can tell. But I'm just a lowly engineer. I have no idea what's going on at the top or near the top. Is that, itself, a problem? Perhaps.
On the plus side, I can say that there are several things coming "soon" that will hopefully demonstrate how Terry's ties to Hollywood can finally benefit Yahoo in a big way. But only time will tell.
In the meantime, Yahoo continues the transformation from a company that changed the world to a company that's just like every other big (public) company.
On a related note, I'm still amazed that Filo and Jerry are still involved in the company. Those guys are amazing and in may ways, they're still the heart and soul of Yahoo. How many other Internet companies can say that?
This talk is not supposed to be technical or marketing, but more of a ramble. We'll see. :-)
"Living above the Curve" BB is a strange company, as they've been Mac-only are have been in business for over 10 years. Haven't gone out of bussiness, gone public, or been bought. It's very rare. They make a living doing Mac-only. So it can be done.
What are the topics: Why are they still around? Embracing the hard. World domination.
Why are they still around? Customer loyalty. They spend the money to make it all possible. And those customers help to breed other customers. Word of mouth, new features, etc. Industry changes have helped, too. BBEdit was originally a programmer's editor. But BBEdit had a plug-in interface. And HTML came along. Customers began developing HTML plug-ins. People actually bought BBEdit for the purpose of using one of those 3rd party plug-ins.
Back in 1997, things were bad. Everyone thought Apple was gonna die. Other companies began developing Windows software. And that's often more expensive. And if your Windows software is really good, Microsoft eventually buys you, puts you out of business, or otherwise squashes you.
Mac platform changes have helped too. 68k to PowerPC helped a lot. Allowed BB to adopt very quickly. The move to OS X has helped too. If you move quickly (like BB did), you can ride the wave very well.
They're careful about picking their fights very carefully.
There is always room for 3rd party software. Apple can't do it all and needs 3rd party software. They always will.
What about the move to OS X and "carbonizing" their application? OS X is brutal because it doesn't tolerate mis-behaving applications. OS 9 let things gradually degrade. OS X is WAY more stable. Cabon forced them to review their code and find latent bugs that had been around for years and years. Had to work to meet Aqua standards. Had to realize that OS X is Unix and that means a whole lot of new things they could do.
Don't limit yourself to Carbon. Use Cocoa. Use Unix functionality.
BBEdit can be run from the command-line and take command-line args. You get things file filename globbing automatically. You can pipe to it. It even has a man page! Very cool. :-)
There's a feature that acts a lot like a shell buffer in Emacs. You even get undo. You can run arbitrary Unix filters on selected text.
Java has been successful everywhere but the desktop. Or at least that's what people here. It's big on the server and that downs out the desktop news.
What else went wrong?
Microsoft's battle with Java.
For the longest time, there really has been only ONE desktop. It was the only market that mattered for developoers.
We're finally getting desktop competition from Linux and Mac OS X.
A lot of the cool things about OS X are the little things. Like closing the notebook lid.
Why use Java?
Productivity. Lots of APIs. Tools. Community. Security and reliability. End-to-end story. Portable skills. Lots more. Memory management and platform neutrality.
Swing API. It's the 747 cockpit of UI toolkits. Lots of components on jars.com, etc. Very extensible.
Swing problems. Complexity. It's easy, but finding the easy way is hard. You need to watchout for performance pitfalls too.
Good stuff. Abstract data models. Map data structures to models.
And then you've got Java2D (like Postscript/Quartz/etc), Java3D, Advanced imaging, Media, Networking, and so on.
Used NetBeans IDE to show us the source to his Java-based presentation system. (Very cool, but I note a distinct lack of comments in his code.) It does reformatting on the fly--rather quickly. Makes good use of threading.
Lots of screen shots and demos. (But very little OS X specific stuff. I'm sorta disappointed.)
Which was the better UI? Mac OS 9? Mac OS X? Windows? Nobody can agree. Tim O'Reilly didn't like Mac OS 9. He gets OS X. Traditional Mac users are a bit annoyed by OS X. They think it's a bit too much like Windows.
What about Intel hardware? Jordan can't say (of course). A lot of folks are willing to pay for the extra Mac hardware. But in the larger world, people worry about pricing, Morotola, and so on.
Existing Mac users need Quark on OS X. It's supposed to be coming someday.
An audience member asks about performance improvement. Jordan says they're still working quite hard on it. They need to catch up with Linux. Mac user's don't buy new hardware every year. They keep their boxes *forever*. So the software really does have get faster.
Jordan: "One of the benefits of going with Morotorla is that we don't assume the hardware will get faster."
Lots of laughter. :-)
Discussion about what might be tuned. How to keep the foreground processes faster. Scheduling is very tricky.
What about having X installed by default?
Jordan thinks it *could* happen someday. Or at least bundle the client libraries, etc. Or maybe put it on the developers CD if not installed by default.
Notice how Apple has made sure that normal Mac users NEVER have to open the terminal if they don't want to.
DarwinPorts stuff coming soon. Stay tuned for news. Watch DaemonNews for more info.
There are Open Source developers still don't trust Apple yet. What if their whims change? Might developers be stranded--even a concern for in-house corporate development. What can be done?
Tim says that corporations often do orphan products. That's life. But in the Open Source world, folks can pick it up and keep it alive. Might Apple give products away when they orphan them? Jordan will take it back to Apple.
OS X is a safe bet. Apple is all over it. They are being very consistent, focused, and determined. They're in it for the long-haul.
Lots of talk about iApps. Will they be more open? Plugins and scriptability? The development teams seem very responsive.
Nat brings up the "culture shock" involved in coming from the Unix world. Things like, "wow, I have to pay for all my software." What can Apple do to help ease the transition. The other is that you can' fix apps, but you can usually talk to someone who can. That can be frustrating.
Jordan stressing sending in feedback. Don't be so cynical. Apple is not Sun or IBM.
Complainers need to register as developer and FILE BUG REPORTS, just like in the Open Source world.
Linux switchers want cheaper hardware.
Someone asks Jordan what it was like as an Open Source guy at Apple. He got there late enough that he didn't have to fight a lot of battles. He got lucky.
Ack! TiBook power is low. Must submit and go off-line soon. Should have charged it last night.
Talking about his mainframe background and roots in computing. He played a lot on the big iron and sorta "missed" the PC revolution. He wasn't terribly interested in PCs for quite a while. Then he got to play with one of the very first Apple II computers. But he liked the mainframe hardware yet.
In 1980, he began working with Unix and started to understand and appreciate the design of Unix.
In the old days, your OS came from your hardware vendor. It was all about lock-in. If you let them interoperate, they might switch to another vendor. Hide the internals. Make it a bit of a pain to deal with--but not too much. The OS was specific, often designed for a particular market and task.
The hardware was very big and expensive (of course). There was no portability. They were always multi-user and the displays were dumb terminals.
Lots of talk about Unix history, AT&T, and Berkely.
Berkeley added long filenames, virtual memory, curses, vi, job control, UFS filesystem, and so on. SunOS and DEC Untrix came along. The wars started when AT&T and Sun got together. The others started the Open Software Foundation (OSF). OSF1 vs. SysV. Yuck. SysV vs. BSD too.
BSD ended up under a "legal cloud" for quite a while.
Nobody wrote portable software. Everyone was pissed at each other. They all created their own windowing/desktop systems. Intel didn't rule the CPU space yet, so the world was very fragmented on the architecture front. That's why there's so much portability and ./configure stuff floating around today.
Then came the GUI wars. Sun had NeWs, which was based on Postscript. But it lost to X. So they created OpenLook, which battled with OSF's Motif. That made Unix softwrae more expensive, and Unix lost the desktop war long ago as a result. Windows was unified but Unix was not. CDE vs. OpenView vs. ... Ugh.
Every vendor tried to differentiate themselves with desktops. So most software vendors just went to Windows.
X is the reason that Unix lost the desktop war. It was a system by engineers, for engineers. Text and font handling sucked (and still does). No printing support. No multi-media support. The APIs are all very low-level. Everyone had to write their own printing engine.
Now you know why we have Qt vs. Gtk vs. whatever. It should have been decided long ago.
Unix users are often averse to solving "big picture" problems. Unix was assumed to be user-unfriendly. The only real API, libc, was very low-level. Folks had to write their own APIs. Again, look at Qt vs. Gtk. Everyone wanted to own the standard, so nobody did.
But Unix remained alive. Why?
The underlying tool-building philosophy is a Good Idea. Open systems are very compelling. There are some very smart people in the Unix community. Unix was open to inspection and extension.
Unix has risen again. Why?
The Internet. Unix TCP/IP kicks ass. It all started on Unix and still happens first on Unix. Unix handles load, so it works on servers well. And there was always an installed based in the science and tech communities. Open Source broke the vendor lock. And Linux Torvalds as a poster child has done a great job. He beat the odds. The BSD lawsuit finally went away. BSD was freed.
Unix and BSD both made a comback. It's now a good word in the IT circles again. It became a foundation for the next layer: Perl, Apache, Python, Emacs, GCC, other GNU stuff.
But what about the desktop?
It had been lost to Microsoft. Until Apple came along and tried to fix that with OS X. Mach microkernel, threading, power management (for portables), ease of use, etc. To get the developers back, they've gotta provide great APIs. That's what Cocoa is all about. And the Java implementation works very, very well. They haven't sacrificed multimedia support either. Their internationalization support it world-class.
Quartz is cool. Finally solves the font/bitmap/display/printing problems on Unix. Makes good rendering and printing work well. It's all built-in. OpenGL for industry standard 3D and it works out of the box correctly. That's important for the game industry. Quartz Extreme unified 2D and 3D and makes good use of the GPU. (I guess that's important when your CPUs are still slower than Intel's?)
Great video support, including QuickTime 6.
Putting all that together, now Unix desktops are getting the media apps they only dreamed about before. Apple has done it *and* commoditized it too. It's not like paying SGI prices anymore.
And, if you still want X, you can get X. It's there for those who want it. The XFree86 project has done a great job.
Mac OS X can help try to win (some of) the desktop back. It is getting the critical mass necessary to get ISVs back building software for it. And the cool hardware and tools is bringing back many developers too.
And, well, it's NOT Windows. :-)
Now for the panel discussion.
Did anyone else catch the Warchalking story on Marketplace today?
I'm a bit puzzled that the approached it as a "hacking" story. They don't get it, either, I guess.
Wow. Check out Western Digital's Drivezilla. They've announced 200GB hard disks. Something tells me that I'll have my own terabyte by the end of 2003.
I had to leave the conference after the first half of the day so that I can get some stuff done at work and some work on the book.
David Pogue's keynote was excellent. He knows the Mac, Apple history, and is very funny. I highly recommend seeing him speak if you get the chance.
Tim O'Reilly's keynote was disappointing for me. If you've been paying attention to what Tim's been saying in the last year, you didn't miss anything. A lot of it has come up in his weblog and in his other presentations. He also ended up going over the alloted time and had to really cut himself short. I never really seen that happen to him before.
I attended a presentation called Automating Mac OS X by Matt Neuburg of TidBITS. It was interesting at a high level. I never realized how AppleScript and Apple Events work and what they're really capable of. He showed a bit of Real Basic and Cocoa as well as some Perl, Python, and Ruby--all on OS X, of course. It's interesting to see how many applications are "externally scriptable" on OS X and how easy it is.
He even had a demo that involved using Manila to build an on-line photo gallery. Neat stuff.
That's it for now. Sorry I can't cover more of today.
I'll be headed back tomorrow to listen to Jordan Hubbard's morning keynote about OS X and Unix. I'll also cover James Gosling's afternoon keynote on OS X and Java. An Apple exec was very happy to tell me (several months ago) that Gosling now uses OS X on his desktop and that Java is great.
I haven't completely decide which other sessions I'm going to hit, but I'm hoping to nail at least two of them. We'll see.
David Pogue is talking about Mac in the past, present, and future.
Mac market is growing. It's a small part of a very large and growing pie. So Apple isn't dead and won't die. But they'll never be the big player.
The history comes first. The two Steves. They had color first. And it was the first beige machine! Heh. Steve Jobs visits PARC and gets some ideas from them. Saw the mouse, menus, and more. Decided they belonged on his computer. (Heh, Xerox invented the brain-dead business plan. They never did anything with the ideas.) The Lisa was born.
Then comes Scully, fresh from selling sugar water. It was the reality distortion field at work. Jobs went to work on the Mac project. And MacWorld magazine was born not long after. It was all GUI all the way.
Cool. System 1 screenshots. 128k and floppy. Heh.
Scully sends Jobs away and strips his responsibility. Goes off to start Next. Scully does layoffs and Windows 1.0 comes out to compete with Apple. The first color Mac comes out, as does the Newton. It flops big time.
4,000 newton modems make for great dominos.
Then came Spindler and Amelio. More Macs came out. They were all pretty boring.
Apple bought Next and got Steve back. Then came the new Macs. Flavors, cubes, and more. Lots of OS revs. Then came OS X.
And it was good.
Talks lots about all the new features in OS X.
What about the future? What'd be nice?
Icon labels, location manager, file encyrption, ram disk, Windows "send to" menu, virtual desktop (yes! I'd love that), and so on. Networking assistant would be good too. Voice and Video conferencing.
What Windows could learn from the Mac. Taste. AppleScript. Freedom from "activation". Driver invisibility. Text-to-speach. Centralized control panel. Drag-n-drop install. And uninstall. Coherent app names. One menu for software apps. The list goes on and on.
What about OS XV and beyond?
Here are some ideas. Document aging. Icons that reflect their contents. Big docs get "taller stack" icons. Screen memorizer. Broadband software. eBay for documents (clip art, music, info, etc).
RAM growth. Disk growth. Much more powerful CPUs, of course. 55 inch monitors! :-)
Seriously, CRTs are dead. Very dead. Bluetooth is a sure thing. It's going to make a big difference. Speech recognition is not the answer. Keyboards are here to stay. Battery problems won't go away for a long time.
RAM drives are coming. The USB kind. Very cool.
DVDs. CDs will go. Microsoft is here to stay too.
Windows wizards could just keep getting worse and worse.
Apple will continute to set design trends, like the iPod and the new iMac.
Tim O'Reilly is giving his keynote right now. Talking a lot about watching Alpha Geeks, wireless netowrk, bots, and so on. Here are some notable items that Tim mentions.
"The future is here, it's just not evenly distributed yet" -- William Gibson.
Hackers push the envelope, and entreprenurs make things eaiser for ordinary users.
The evolution from CGI to PHP/mod_perl and on to GUI site builders.
Eventually, consolidation happens around technologies as mature. We need to balance control and innovation. Microsoft is probably too closed and controlling. It's an ecosystem. Don't pollute it.
Paradigm shifts and distruptive technologies.
What's to like about OS X:
Piracy is progressive taxation.
Thanks to an anonymous helper, I've mirrored all 5 ISO images for Red Hat 8.0.
Ohio - http://family.zawodny.com/~jzawodn/iso/rh80/ (DS-3 connection via Sprint)
California - http://litterbox.zawodny.com/~jzawodn/iso/rh80/ (multiple gigabit connections)
Now be nice. :-)