comparing PHP RSS parsers

For a little project I’m working on, I needed to do some RSS parsing. I quickly found lastRSS, magpie and the Pear XML Feed Parsing Library. I wasn’t sure which was the best, so I decided to do a little apples to apples to apples comparison. I created the PHP RSS Comparator to help me figure out which library worked on the most feeds and had the best performance.

My findings so far? Magpie is rock solid, seems to handle nearly every feed I throw at it. When LastRSS handles a feed, it handles it the fastest. The Pear XML Feed Parsing library trips up on the same feeds that break LastRSS, but it is also a lot slower than LastRSS. The cache in LastRSS is effective and a very good idea.

It’s possible that I’m mis-using the Pear or Last RSS libraries, but I basically did the same thing with all three libraries which is to start from their own sample code and then make minimal changes so that they all showed the same results.

I can definitely see why they use magpie for wordpress. It isn’t as fast as LastRSS, but it is close and it handles a lot of feeds that lastRSS does not. The Pear XML Feed Parsing library may be powerful, but it doesn’t work well enough on real-world feeds to make it worthwhile for me.

Dear Radiohead and the rest of the music industry

I applaud you, Radiohead, for doing such a forward-thinking experiment with your distribution for InRainbows. However, you’ve unfortunately made sure that any data you receive from this experiment will be useless. Why? Well, because your website and ordering process are HORRIBLE. I had so many problems getting your website to work that I almost gave up. I’m now concerned that I paid for it at all. I’m scared for the safety of my personal data. Really, it is 2007, get a web designer who knows what they are doing.

Secondly, you also seem to have gone out of your way to make sure that the downloaded tracks themselves are sub-standard. I’d heard that the mp3s you are distributing were at 128 kBps, which would have been ridiculous. I see now that they are at 160 kBps which is just lame. How about 192 kBps or higher? I would have gladly paid $10 for this record at a higher bitrate. Given the bitrate you are distributing it at, I decided only to pay $5. Also, where is the cover art? How about tossing a jpg into the zip file with the album cover? Maybe a text file with some liner notes. Just because you aren’t shipping shiny plastic discs around, it doesn’t mean that all previous ideas with the album were bad.

Hey, here’s an idea. Give the album away for free at 128 kBps, charge a nominal fee ($5-$10) for a 200 kBps or higher bitrate.

How about an optional survey section at the end so that I could have told you this instead of posting it on my blog?

So Trent, and other artists considering following in Radiohead’s footsteps (although they weren’t the first to do this honestly), try downloading the tracks yourself and see how much easier it would be to do something much better for your listeners.

I may just do this with the next Intonarumori album…

I have seen the future and it is Thermo powered

Holy frijoles was that beautiful.

That was absolutely one of coolest demos I have EVER seen. If I wasn’t wedded to C++, I’d switch over %100 to doing ActionScript development right now so that I could use that tool to make my GUIs. Microsoft should be shaking in it’s boots, because from what I’ve seen of the Silverlight tools, they are (silver)light years behind.

I work for Adobe, so I knew about Thermo. I’d seen slide decks on it, I’d discussed it with people. I’d never seen a demo. This went beyond any expectations I might have had. This combined with FlexBuilder3, AIR, Hydra (you knew I had to make a plug for that) and Astro makes an outstanding tool set for building desktop applications connected or not.

C# has been my go-to for doing up quickie applications or doing app prototypes for my personal development. Not for much longer. Especially because I’m on the mac now and being able to do cross-platform development with such an awesome rapid app development toolset is super exciting.

Interesting article on Ruby vs PHP

I’ve been doing PHP for a little while, but I’m always hearing about how much better Ruby on Rails is. Luckily, Derek from CDBaby decided to rewrite his site with Rails and actually decided that PHP was better for some stuff.

7 reasons I switched back to PHP after 2 years on Rails – OReilly Ruby

I spent two years trying to make Rails do something it wasn’t meant to do, then realized my old abandoned language PHP, in my case would do just fine if approached with my new Rails-gained wisdom.

f’ing A! CSS Positioning sux

Every time I try to use CSS for positioning, I hit the wall. Gradually, this wall has been getting further and further, but I still always hit it. First I couldn’t get things to lay out correctly at all. Now I can get them to lay out, but only on three of the four browsers at any one time. Then I read this and it makes me feel better:
jwz – CSS is BS

I have learned or in some cases reconfirmed a few other things about CSS, too:

  • Web designers, and especially blogging web designers, are self-important fuckheads. This might be tolerable if they were right, but by and large theyre also dumbasses.
  • Everybody who fancies themself a CSS expert uses pixel-based layout for everything. Their shining examples of elegance always include boxes that are exactly 400 pixels wide, and that specify font sizes in pixels not even points This is better than auto-flowing auto-sizing table layout… why?
  • Most of the time, these examples look like ass on my screen, presumably because Im not running Windows and dont have the same fonts that they do. Or maybe because theyre all using 50-inch monitors and sit with their noses on the glass, the only way those miniscule fonts could actually look readable to someone.
  • They never measure in “em” units, so that their boxes might have at least some relation to the size of the text inside them.
  • This may or may not be because “em” doesnt work consistently across various browsers.
  • Oh, “em”, a term from the world of physical typesetting, is supposed to be the width of a capital letter M, and used only for horizontal measure; the vertical measures are ascent, descent, leading, and sometimes “ex” height of a lower case “x”. CSS defines “em” as being the height of an M instead making it synonymous with “ascent”, which makes it generally about twice as big as youd expect if you know anything about this stuff. Nice. Thats like redefining “centimeter” because it seemed more convenient at the time. Except sillier, since “em” is an older unit of measure than centimeter is.

Correcting the record on Microsoft’s foray into Open Source

Microsoft is making big headlines in their announcement that they are releasing some technology as Open Source…

Why Microsoft Is Going Open Source | Linux Journal

No one would have believed me if I had said five years ago that Microsoft would have a page on its Web site called “Open Source at Microsoft” with the following remarkably sane and reasonable statement on the subject:

Microsoft is focused on helping customers and partners succeed in a heterogeneous technology world. This starts with participating and contributing to a broad range of choices for developing and deploying software, including open source approaches and applications. From thousands of lines of code and scripts on MSDN and TechNet, to open source applications like IronPython, ASP.NET AJAX, SharePoint Learning Kit, and WiX on CodePlex and SourceForge, Microsoft is continually growing the number of products released with open source access.

Thats right: Microsoft has released not one but several pieces of code as open source. Moreover, its submitting some of its home-grown licences to the Open Source Initiative for approval. So what is going on here?

Very few remember Microsoft’s first release of Open Source code: The Microsoft Virtual Worlds Platform. I worked on that platform from 1994-1999. It was originally designed to be a Microsoft product, but for various reasons it became clear that it wasn’t to be. So rather than just kill it, the team decided to release it as open source, very quietly. So, of course, very few have heard of it and no one remembers that it was Microsoft’s first open source release (to my knowledge).

Interesting side note, it turns out that some grad student in China submitted MS Virtual Worlds platform as part of his thesis claiming he wrote it. heh.

Unfortunately, the source code wasn’t hosted on Microsoft.com and I can’t find it anywhere easily. I’m sure someone has it archived somewhere.

more Apple developer badness

Apple distributed a different build of 10.4.10 to those using MacBook Pros to fix a problem with the audio, which in itself is all good. No one wants to have crummy audio on their laptops.

One MAJOR glitch though, since this means that my MBP has essentially a different version of the OS than the desktop machines. Therefore, when I try to build using Rendezvous in X-Code, no machines match my configuration. Therefore, the slowest building machines will build even slower than before.

Sheer freaking genius. Thanks Apple, you’ve now made my builds take about 20 times longer than before. Do you think we’ll see a fix before 10.5? I don’t.