This is a great reference on what actually happens on IE in different browsers when working with the IE box model. Great to finally figure out the skinny on how this all fits together. I love this site.

Be sure to read this whole article if you really care to know more about properly rendered HTML.

The IE box model and Doctype modes
There are two things you should be aware of when developing CSS styled lists

1. IE and the box model
2. IE versions and Doctype modes

IE and the box model

Love it or hate it, Internet Explore for Windows is the main browser on the web at present. This means that at some point you will have to deal with IE’s incorrect interpretation of the box model.

In simple terms this means that some versions of IE render the box model to a different width than other Standards browsers. So, your CSS styled list may look narrower in IE compared to other browsers.

The diagram below shows that if a content box is set to 200px wide with 20px of padding and a 20px wide border, the correct method of calculating the overall box width is:
content (200px) + padding (20px+20px) + borders (20px+20px) = 280px.

Read the rest of the article

This is nice.

Architect’s Patterns » Blog Archive » Using PHPUnit2 with eclipse

A good IDE saves a lot of time, and besides all those commercial products phpeclipse is a nice alternative.

UnitTesting has also become a valuable task to the serious PHP programmer. There is already a plugin for simpletest available to use in eclipse. Judging after the UI, it comes very close to JUnit. Unfortunately, there is no plugin for PHPUnit(2) available yet (although Sebastian stated earlier that Zend wants to take care of this for the upcoming ZendIDE). However, there is a way how you can integrate PHPUnit2 as an external tool into eclipse. I’ve done this on my Windows system at home, but you may be able to adopt this howto on a *nix machine, substituting the respective parameters with your target os pendants.

Whoa Nelly. Eclipse + Zend Studio + IBM = Coding Magic Land

Eclipse Foundation, Zend Technologies, and IBM Announce the Approval of the PHP IDE Project

A Preview of the New Eclipse PHP IDE is Scheduled at the EclipseCon Conference in Santa Clara

ECLIPSECON 2006, SANTA CLARA, CA, March 20, 2006—The Eclipse Foundation, an open source community committed to the implementation of a universal software development platform, Zend Technologies and IBM, today announced that the Eclipse PHP IDE project has been approved by the Eclipse Foundation. The technology project was proposed by Zend and IBM on October 21, 2005. It will deliver a PHP Integrated Development Environment framework for the Eclipse Platform and will encompass the development components necessary to develop PHP-based Web applications and will leverage the existing Eclipse Web Tools Project.

“Eclipse has the goal to create a universal development platform that increases efficiency in enterprise software development,” said Mike Milinkovich, executive director of the Eclipse Foundation. “The new PHP IDE project will extend the Eclipse Platform to the world of PHP and will bring two highly successful communities together. Having Zend lead this project will definitely benefit the community. We are looking forward to watching this new project develop, mature and create even more opportunities for users to develop their Web applications.”

The Eclipse Platform provides a universal and vendor-neutral, open development environment. The PHP IDE will extend the Eclipse Platform to support development of next generation Web applications in PHP.

News from Zend Site

News from Eclipse Site

I found a great HOW-TO on how to replace the base installation of Apache 1.3.x on Mac OSX over at Chalmers Tekniska Hogskola’s website.

This is very helpful information if you use apache on your Mac to develop websites and web applications locally.

Without further ado, here is the article.

Installing Apache2 and PHP 5.0.4

Staying at the top has a cost. Hours of trying to figure out how to install new software.
Recently I (after lots of mistakes) managed to install Apache2 and PHP 5.0.4. To make it all simple for and only invent the wheel once I decided to put up this guide.
The idea was that I wanted Apache2 together with PHP on my webserver and start and stop Apache from the System Preferences pane. In other words I wanted to remove the old installation of Apache 1.3.x and replace it with Apache2. Roaming the Internet gave me absoulutly no clue whats so ever how to achive this. The guides I found was generally set up so you had two webservers or a lot of fiddling with the httpd.conf file. Also I would have to make a script to launch Apache2 at startup, and as said before “There is no reason to invent the wheel again”.
So here is what you need to do: I assume that you are familiar with using a terminal window, if not, this is a good time to try it out.
Prerequisites:
You need to have a compiler installed. This comes for free with XCode. I’m running gcc 4.0.
glibtool (GNU Libtool) version 1.4.2 or higher
autoconf verion 2.5.2 If you don’t have these download them using fink. If you don’t have fink, download and install it! These are needed for the installation of Apache2 . If you don’t want to use fink Remember that GNU Libtool is in a normal *unix system named libtool. If you don’t compile it as glibtool you will run into trouble later on when installing other programs developed by Apple.

This is pretty cool. Web based chat integration with this service should start popping up all over the place I am guessing.

Definately cool the way things are heading!!!

AOL Developer Site

AOL has just announced the release of an SDK, which will allow the creation and use of 3rd party IM clients and plug-ins on their massive Instant Messaging network. The announcement which was just posted over at Reuters a few minutes ago, comes very unexpected and sheds some light as to why programs such as Trillian have been battling AOL for the last little bit.

A member of the AOL staff just posted an interesting thread on our forums with more details concerning the SDK:

“Today is a historic day at AOL as we annouced, just moments ago, a software development kit for AOL Instant Messenger. Open AIM will empower you, as the developer, to write custom clients, plugins, and eventually bots. When you include this SDK with the web presence API and AIM Model-T (IAmAlpha, or AIM Modules) we are really starting to build compelling social network development tools. The SDK will be available starting at 5AM EST today at developer.aim.com.”

The AOL staffer claims that this project has been worked on for the last 2 years or so, and that there are ‘no’ restrictions as to what can and cannot be developed with the SDK. The only limitation cited, which is sure to keep Trillian and co. on their heals, is the apparent ban on ‘multi-headed client’ implementation.

Was having all sorts of problems with my G4 17″ Powerbook today and last night, thought I would give this a try.

Thanks to Tech Support Technician “bobw” at Macosx.com

  • First disconnect anything connected to the machine (printer,modem, scanner, etc) and see if the Kernel panic still happen. (‘your computer needs to be restarted’ in various different languages is a Kernel panic)
  • Next, run Disk Utility from your Utility folder to Repair Permissions.
  • Next run ‘fsck’;

To run fsck, you first need to start up your Mac in single-user mode. Here’s how:

  1. Restart your Mac.
  2. Immediately press and hold the Command and “S” keys.

You’ll see a bunch of text begin scrolling on your screen. In a few more seconds, you’ll see the Unix command line prompt (#).

You’re now in single-user mode.

Now that you’re at the # prompt, here’s how to run fsck:

  1. Type: “fsck -f” (that’s fsck-space-minus-f).
  2. Press Return.
  3. The fsck utility will blast some text onto your screen. If there’s damage to your disk, you’ll see a message that says:

    ***** FILE SYSTEM WAS MODIFIED *****

    If you see this message–and this is extremely important– repeat running fsck. It is normal to have to run fsck more than once — the first run’s repairs often uncover additional problems..

    When fsck finally reports that no problems were found, and the # prompt reappears:

  4. Type: “reboot” to restart, or type “exit” to start up without rebooting.
  5. Press Return.
  6. Your Mac should proceed to start up normally to the login window or the Finder.

Definately want to check out this tutorial.
Using Ruby on Rails for Web Development on Mac OS X

Why Ruby on Rails?

First, you might be wondering: Web application frameworks are a dime a dozen, so what’s different about Rails? Here are a few things that make Ruby on Rails stand above the crowd:

  • Full-Stack Web Framework. Rails is an MVC web framework where models, views, and controllers are fully integrated in a seamless fashion. That means you automatically get all the benefits of an MVC design without the hassle of explicitly configuring each component to play well with the others.
  • Real-World Usage. The Rails framework was extracted from real-world web applications. That is, Rails comes from real need, not anticipating what might be needed. The result is an easy to use and cohesive framework that’s rich in functionality, and at the same time it does its best to stay out of your way.
  • One Language: Ruby. Everything from business logic to configuration files (there aren’t many) are written in the Ruby programming language. With just one language, you hope it’s a good one, and Ruby doesn’t disappoint. Ruby is a full object-oriented language with clean syntax and it has a way of making programming truly fun. Using one language means you don’t have to juggle between multiple languages and dialects as you’re building your application.
  • Convention over Configuration. Rails works hard to take care of all the repetitive and error-prone chores associated with starting to build a web application, and maintaining it over time. Rails uses simple naming conventions and clever use of reflection to make your work easier with near-zero configuration.
  • It’s Productive! At the end of the day, Rails is all about helping you stay productive.