Professional PHP Blog

PHP Programming, Web Development, PHP Advocacy and PHP Best Practices.

Faster Page Loading

October 31st, 2006

Google engineer Aaron Hopkins wrote a good article on page loading times (via Harry). He talks about the impact of AJAX on page load times, focusing on connection limits, latency and the large number of external objects on your typical AJAX page. He offers a variety of tips on improving page load times, including doing more with the connections you have, busting the connection limit, caching, and sending less data.

I wrote about web page loading performance a while ago, when I linked to Dave Hyatt’s most excellent explanation of the issues involved with testing page load speed. In fact the Safari browser blog endorses Aaron Hopkins article and mentions how to measure page loading times in Safari using the debug menu.

On the Mozillia front, the Tamper Data extension generates some amazing graphs of when elements on a page load and how long it takes.

On the topic of sending less data, the Yahoo! User Interface Blog weighs in on page waits with a discussion of javascript minimization versus compression. They also briefly cover the YUI decision to serve components a la carte, rather than in an aggregated file.

Cal Henderson of Flickr also takes up this topic in serving JavaScript fast. He goes into more depth about the issue of a la carte external objects versus aggregated external objects as well as covering compression and caching issues with examples in PHP.

From the PHP perspective, Michael J. Radwin and Rasmus Lerdorf have covered web application performance issues in conference talks.

Are your web pages cacheable or not?

On the home front, this is my first post on this blog since I’ve installed wp-cache2 and upgraded to eAccelerator 0.9.5. And my first post since my fishing vacation, too :)

3 Comments »

The Legality of Republishing RSS Feeds

July 20th, 2006

Tobias Schlitt “freaked out” today about PHP Freak’s republishing of his blog feed. He publicly withdraws his implicit permission for PHP Freaks to republish content from his feeds.

This is an interesting area of law. Eric Goldman has an rundown of the issues.

In my mind, there’s no question that a blogger grants an implied license to the content in an RSS feed. However, because it’s implied, I’m just not sure of the license terms. So, in theory, it could be an implied license to permit aggregators to do whatever they want.
…
It is trivial to destroy an implied license, so bloggers can overcome any aggregator use simply by saying so. I’m not sure WHERE the blogger would need to say this (by the “syndicate” link? in the xml feed itself?). Perhaps any disclosure in any reasonable place would be sufficient to destroy the implied license.

So it would seem that Tobias has reasonably withdrawn his implicit license by placing the notice in the feed itself, as a post. The question of where a reasonable place to put such a notice is important. Since one can subscribe to an RSS feed without ever visiting the parent site, I think perhaps the only reasonable place for a terms of service for a feed is within the feed itself. Snow vs. DirectTV suggests that a warning isn’t necessarily enough to overcome an implicit license. Of course, I am not a lawyer so my interpretation may be flawed.

So what did PHP freaks do to incur Tobias’ ire? They republish content from RSS feeds and added advertising. I think adding advertising to aggregated content is perfectly legal. (I’m sure Google and Yahoo see things the same way when they place advertising in their web based mail readers.) However, phpfreaks uses an contextual advertising that replaces words in the content with advertising links, shades of the microsoft smart tags debacle. In PHP freaks’ favor they are very clear about attributing the source of their syndicated content and the fact that it is syndicated. Many aren’t. Additionally, the links are marked with a double underline and cause a hover box to appear which clearly labels them as advertising.

Still, I suppose one could make the argument that it is unclear who placed the advertising in the content, php freaks, or Tobias. For that reason, I think this form of advertising on third party content cross a line.

I am not anti-advertising in general. Advertising directly and indirectly pays many of my bills and I don’t begrudge someone else the opportunity to make a buck. I am also a publisher of copy righted content. And I’d rather that I made the buck off of my content than someone else. I think Tobias has the right to control the use of his material.

What do you think?

16 Comments »

Meta Tag Refresh Faux Paux

July 17th, 2006

If, for some unfathomable reason, you put a meta tag refresh on every page of your site, you may want to consider not putting it on any page with a form on it. Especially a long complicated form. 30 minutes may seem like a long time to fill out a form, but sometimes people answer the phone or get up for a coffee break. Perhaps the refresh may even make them decide that they have better things to do than pursuing a transaction with your lame site. (Like blog about how lame you are.)

4 Comments »

The Paradox of Choice

July 13th, 2006

I don’t like to just link to stuff, but outsourcing choice at 37 signals is worth linking to. The post talks about designing interfaces with fewer choices. Really, the interesting thing here is Barry Schwartz and his book, The paradox of Choice. The paradox of choice being that having more choices makes [...]

2 Comments | Read the full post »

un-PEAR-ing

July 5th, 2006

Astonishing. I’m quite surprised. I thought PHPUnit was fairly well integrated into PEAR (pear run-tests). I’m not sure if this is a fork, or if PEAR will continue to use PHPUnit as an external dependency?
I’ve never been a PEAR fan. My experiences being peripherally involved with the XML_HTMLSax package weren’t [...]

4 Comments | Read the full post »

Dependency Injection in PHP

June 26th, 2006

The June issue of PHP Architect is out. My column this month is on dependency injection, a topic which I’ve been warming up to lately.
First there was CORBA. Then insane complexity of CORBA was supplanted by the intolerable complexity of EJB. Influenced by an agile mindset and the power of Unit testing, [...]

10 Comments | Read the full post »

Programming Language Trends via Google

May 10th, 2006

There is a new google toy as of today: Google Trends. So of course, I wanted to see how PHP is faring on the trendy landscape. Here is a comparison of PHP, Java, C#, and Perl:

PHP Java C# Perl

PHP seems to be holding steady, or slightly declining. [...]

21 Comments | Read the full post »

PHP Games

April 6th, 2006

Earlier this morning, I ran across the Heroes of might and magic online mini-game (via digg). The game is written in PHP and uses the prototype and scriptaculous java script libraries. The interface is very drag and drop oriented and it uses Ajax to update game status. The graphics are very good. [...]

23 Comments | Read the full post »

The Coding Apprentice

March 29th, 2006

Ok, maybe I watch too much reality TV, but I’d like to see a show called “The Coding Apprentice.”
Starting with 18 candidates, each week, they are randomly divided into teams of 2, 3, or 4 (perhaps solo on odd weeks). Then a charity is selected with a need for an application. Each team [...]

14 Comments | Read the full post »

php|architect Test Pattern

March 21st, 2006

The March issue of php|architect came out yesterday. I’m excited to see this issue finally out. I’ve taken over writing the monthly Test Pattern column from Marcus Baker and this issue contains my first column.
Writing doesn’t come easy to me. Writing this blog for the past two years has helped me improve. [...]

3 Comments | Read the full post »

« Previous Entries
Next Entries »
  • Search

  • Subscribe

    Subscribe All Posts
    Subscribe All Comments
    Subscribe All Bookmarks
    Subscribe with Bloglines Subscribe with My Yahoo Add to netvibes Subscribe in NewsGator Online Add to Google
  • Share This

  • Categories

    • Agile Methods (14)
    • Mac (14)
    • Misc (16)
    • Open Source (14)
    • PHP (95)
    • Software Design (28)
    • Usability (14)
    • WACT (7)
    • Web Design (20)
  • Recent Comments

    • Working with PHP 5 in Mac OS X 10.5 (Leopard)  117
      Daniel Wabyick, Ya, Paul [...]
    • PHP Development From Java Architects Eye  12
      peter, qmenqyqh, big [...]
    • Why is PHP Popular?  34
      portfelmake.ru, finance-x.ru, economnedv.ru [...]
    • The PHP scalability saga continues  35
      mvyqfarib, fuck, sorwostajufe [...]
    • Delphi for PHP  29
      Shawn White, Chris MacPherson, Pieter Viljoen [...]
    • How to Transfer Mac OS X Application Data between Computers  41
      ??????????, Edward Gan, Kamut Torok [...]
    • php | tek Wrapup  7
      Sergey Brin, Learn Programming, PHP Guru [...]
    • A WordPress bug fix  5
      Juggigomugs, LkM, wordpress quickstart guy [...]
    • The value of MVC  11
      wan optimization, Ron, Caren Goodman [...]
    • php | tek 2008  3
      CharnaD, NatureLimit, Scott
    • Why is PHP Code Considered Hard to Maintain?  26
      Tom, , Visitor338 [...]
  • Pages

    • Tags
  • My Other Stuff

    • Lively Debate
      My blog on Politics and non-technical topics
    • Web Application Component Toolkit
      PHP MVC Framework
  • Other PHP Blogs

    • Dynamically Typed
    • Jason E. Sweat
    • John Lim
    • Marco Tabini
    • Marcus Baker
    • Norbert Mocsnik
    • PHP Patterns
  • Archives

    • 2008: May
    • 2007: Jan Feb Mar Apr May Sep Oct Nov
    • 2006: Jan Feb Mar Apr May Jun Jul Oct Nov Dec
    • 2005: Jan Feb Mar Apr May Sep Oct Nov Dec
    • 2004: Apr May Jun Jul Aug Sep Oct Nov
  • Menu

    • Register
    • Log in