Dodo : Part 3 – Forms

by Greg on June 30, 2009


Download the source code for Dodo

I admit it. I used to have a love/hate relationship with Zend_Form. That is, I always thought it was the greatest thing since sliced bread when processing POST parameters on the server-side to validate fields, strip tags, etc… And yet on the flip side, I always dreaded rendering Zend_Form objects to views. Obviously, I’m not talking about the 1 line of code it takes to actually render a form. No, I’m talking bout the times where I wasn’t happy with the behavior of the default decorators and I’d have to go digging through the docs and source code to figure out how to accomplish something simple. C’mon, I just want to put a label on the right of a checkbox for pete’s sake!

Seeing the Light

I am aware and understand that the decorator pattern is a good design practice. I was just being lazy in the past. So this time when we started Dodo, I said ‘I am going to master the form decorators this time around dammit’. After some research mostly in the ZF code base, I can now say the ‘hate’ part of our relationship is over. It just takes a little time to get in there and poke around to understand how to mix things up. Now, I’d classify my relationship with Zend_Form more like love/’we can get along’. Read more »

Dodo : Part 2 – Service API

by Kevin on June 27, 2009

In the previous Dodo installment, Part 1 – Application Design, Greg gave a great overview of Dodo and many aspects of its design and implementation. With this post, I hope to keep the ball rolling and describe Dodo’s Service API layer and how you can make your applications service-aware. Read more »

Dodo : Part 1 – Application Design

by Greg on June 24, 2009


Chances are if you’re reading this post, then you probably have already checked out the online demo for Dodo. If not, I’d recommend trying it out quick and downloading the source code to follow along with this article.

In the Dodo Introduction post, I recommended staring with Rob Allen’s tutorial and the QuickStart guide for those just starting out because they do a better job of going step-by-step through example code. Dodo is a little bit too large to go into that much detail so we’re going to try and pick out the more interesting parts of the app and focus on those. Read more »

Dodo now on Slicehost

by Greg on June 19, 2009

You may have noticed a hiccup in service today with Dodo. Sorry :-(

We were thrilled with the initial response to Dodo when we launched it yesterday, so thanks to everyone for checking it out. There were a few bugs found and all the ones that we know about should now be fixed. However, the other problem we had was our server going down for about 1.5 hours in the middle of the afternoon (about 2:00 pm CDT).

That prompted us to get off our butts and do something that we have been talking about for a couple of months. Migrate to Slicehost. Our site visit rate was up about 5700% yesterday from our norm so it was a good time to try something new.

Read more »

Dodo : Introduction

by Greg on June 17, 2009

Dodo is our version of an online to-do list built using Zend Framework.

A while back we posted a blog entry on a simple Zend Framework example using Zend_Auth. The example consisted of a basic website that re-directed the user to a login page when they tried to access a restricted area of the site (eg. their Account page). Well some time passed and we got a little older and wiser in terms of using Zend Framework so we decided to try again – this time with a little more ambitious set of goals. Read more »

DIY Rackmount

by Kevin on June 15, 2009

Ok, so I realize I’m not the first person to do this, but I thought I’d post some pictures of my latest DIY (do-it-yourself) project in case others might find it helpful.  This approach probably won’t work in all situations, but I had some things going for me:

  • an existing wooden shelf
  • existing tools (drill, bits, chisel, hammer, hacksaw, etc.)
  • lightweight rack components (patch panel, switch)
  • other misc. parts I had laying around (wood screws)
  • time

So, all things considered, this approach worked well for me.  And, best of all, it cost < $10 which is about how much I’m willing to spend on a space-saving rack that will be tucked away in the corner of my basement and be seen by no one but me.

Read more »

RROD knocks out my XBox 360

by Greg on June 5, 2009

My Xbox 360 that I bought in December 2006 got a visit a couple of weeks ago from the Red Ring of Death (RROD) fairy, D’oh!  At first the 360 would just lock up hardcore while I was playing and I could usually reboot it and resume playing.  But then it starting locking up consistently in only a matter of a few seconds after booting up.   When it would lock up, the screen would freeze, covered with a reddish-checkerboard pattern.  Looking at forums on the web, it sounded inevitable that I was probably going to get a RROD soon.

I had actually been hoping to upgrade my Xbox anyway since it didn’t have HDMI output – plus I wanted to get the latest ‘Jasper’ chipset.  I checked at the local Target trying to score a Jasper Elite, but no luck there so I went to Wal-Mart. There, I changed my mind on the Elite once I found a Jasper Arcade there.  I opted to buy the Arcade version since I could use the 20GB harddrive from the old system anyway.  That way at least I would get the Jasper chipset and only spend $200 vs around $400.

Read more »

Publish/Subscribe Implementation with the Zend Framework

by Kevin on December 21, 2008

Download Source

I’ve been meaning to post our implementation of a publish/subscribe system for quite some time, but it took a winter blizzard for me to finally get it done. I don’t want to get caught up in the terminology of Observer Pattern versus publish/subscribe versus loosely-coupled event driven architecture, etc. What I do want to do is describe a simple approach to loosely-coupling PHP classes with events that occur in your application.

One other thing to note. I mentioned the Zend Framework in the title. The demo project is built using the Zend Framework, but the publish/subscribe implementation is largely independent of Zend except for the use of the Zend_Loader class. We really like the Zend Framework so you’ll probably see more of it in our examples in the future.

Just to make things clear, here is the terminology I will be using to describe the actors and actions in our publish/subscribe system:

  • Event – encapsulates information sent between the publisher and subscriber
  • Event Subscriber – subscribes to events and receives them when they are published
  • Event Dispatcher – maintains event/subscriber relationships and delivers events that are published

Read more »

Connect one HDMI source to multiple outputs

by Kevin on November 23, 2008

I recently made a leap to the 21st Century by purchasing a Samsung 1080p LCD TV and an Xbox 360 console! While I’m sure you are very happy for me, there’s no need to blog about the actual purchase. That was relatively easy. The only difficult part was convincing my wife that we should spend our $$$ on more electronic gear. :-)

At any rate, the new TV is in our family room which is directly adjacent to my office. I already had a small hole in the wall between the 2 rooms for running other cables (i.e. networking, DVR), but I’ll save that process for another blog entry. At any rate, I spend quite a bit of my time hiding out in my office working, etc. and thought it would be great to be able to play the 360 both in the office and in the family room, especially considering I prefer shooters which aren’t exactly family-friendly. So, I definitely wanted to be able to connect my 360 to both my TV and computer monitor.
Read more »

Generate ODF documents in Java with ODFDOM

by Greg on November 22, 2008

Since it has been a while since I posted anything to the ol’ blog here I figured I was due for some content. So, here we go – we’re going to play around with the Open Document Format (ODF) in Java in this post. Why Java? Because that’s what the super-cool ODFDOM is written in of course. ODFDOM is an api to easily read/write ODF documents. ODF documents are based on XML and compete with Microsoft’s own Open XML document format. ODFDOM supercedes previous ODF libraries AODL and Odf4j and it is sponsored by Sun. Basically, its the one you want to use should you decide you need fixed format document generation in java – hey that’s exactly what we’re going to talk about here, sweet.
Read more »

x