Weier O'Phinney Network
for everything weierophinney...
Message of the moment:
Your mode of life will be changed for the better because of new developments.
What follows is a somewhat technical and highly geeky account of how this site is run and what programming languages I use to maintain it. Read it at your own risk!
This site uses a variety of open source technologies. For those of you unfamiliar with the term, I suggest reading the Open Source Definition and the Free Software Definition. Basically, open source technologies are usually free, both as in beer (cost) and in speech (liberty). They allow the end user to:
I originally began this site as a personal web portal so that I could view information I needed for the work I do. However, when my family and I moved across the country from Montana to far northern New York, and later, Vermont, I discovered I needed a way to let my friends and extended family see pictures of the family and kids. I also realized I needed a way to meaningfully interact with these people across great distances.
I could have used PHP-Nuke or PostNuke, but both have a lot of extraneous features I didn't want to use (additionally, I now also know entirely too much about the lack of security in many of these products). So I came up with my own solution.
And then I did it again. And again.
This site currently utilizes the following technologies:
The site used perl in a previous incarnation.
At one point, the site is built using Cgiapp, a PHP library I ported from the perl module CGI::Application. This library is used to create controller classes when using the MVC Design Pattern. You can read more about Cgiapp on my blog.
Due to my involvement with Zend Framework, and specifically its MVC components, as well as my growing expertise with PHP 5's featureset, I have rewritten the site on ZF. It uses a variety of Zend components, including:
It makes heavy use of PHP 5's SimpleXML extension, which makes working with XML incredibly easy, as well as creative uses of Zend_Config and INI files. The result is a very performant site that can adapt to new needs and demands fairly easily.
The site uses several templates along with Cascading Style Sheets (CSS) to ensure a consistent look-and-feel across the site.
On a final note, all portions of the site that I have written now conform to XHTML 1 Transitional and CSS Level 2 specifications. this means that these pages will degrade gracefully. Ideally, you will see the layout as intended when viewing in IE 4+, Netscape 6+, Mozilla, Opera, and KHTML-based browsers (Konqueror, Safari); in other browsers, such as Netscape 4.x, text-based browsers, and handheld devices, you will see all the content, but not in the intended layout.
For more information, visit the World Wide Web Consortium web page.