CCS isn't merely an incremental change to our client code, but a
from-the-ground-up project that needed to be:
- A better "out-of-the-box experience" than
the RCL offered
- "Smart" enough to configure itself according to
your service offerings
- Flexible enough to allow our customers
to customize and update it -- without the
pain you have to go through when customizing
or updating the RCL
- Built in such a way so that we can maintain
and expand it throughout its lifecycle
- Able to run on Unix- and Windows-based servers
- "...oh yeah, and we'd like it if it were delivered
on by this date..."
Based on these requirements, choosing PHP was a no-brainer: great for
web applications, easy to code and maintain, works quite well on Unix-
and Windows-based servers, popular and well-supported.
Choosing the version was a slightly trickier choice. It's always tricky
being in that fuzzy time period between major versions of a programming
language: which one do you choose? Choosing PHP 4 would reduce the
number of people who would have to upgrade, but at the cost of developer
productivity. We ended up going with PHP 5 because it had a number of
helpful features that PHP 4 couldn't match. In a project as ambitious as
this, anything that makes it more likely that you'll deliver helps.
Although I'm not on the development team, I'm a developer and have
developed in both PHP 4 and PHP 5. Developing with PHP 5 is far more
pleasant, particularly when writing object-oriented code, handling erros
and parsing XML. (Especially the XML.)
As I mentioned in an earlier posting, the choice of using a caching
optimizer like Zend Encoder to "compile" some of the scripts has a two
fold rationale: to improve performance and to create a line of
demarcation between the parts of CCS that are "user-serviceable" and
those that aren't.
I wasn't part of the discussion where they had to decide which optimizer
to use, but I would bet good money that the fact that Zend is the
driving force behind the PHP language was a major factor in picking
their optimizer. It's like "insisting on genuine {your car brand name
here} parts".
Simply put, going with PHP 5 and Zend Optimizer gave us our best shot at
actually finishing a project in which failure to complete and deliver in
a (reasonably) timely fashion was not an option.
+++
I understand that such drastic change -- both in the client and its
prerequisites -- would cause some short-term pain. I also think that the
pain is a small price to pay for what you get: a client app that is
actually ready to run once you've installed and configured it,
configures itself simply based on what you're selling without your
having to program it, ties in (and gets smarter) with our billing
software and "has the future built in" with the ability to expand to
cover the other services in the Tucows platform, both present and future.
Over the next little while, Zeljko, the development, support and
documentation teams and I will be working on keeping that short-term
pain to a minimum. On my end, there will be some more material in the
CCS blog shortly, which I hope will make installing, configuring and
customizing CCS easier for you.
--
_________________________________________________
Joey deVilla - Tucows, Inc. - [EMAIL PROTECTED]
TC/DC (Technical Community Development Coordinator)
"Nerdy Deeds Done Dirt Cheap"
_______________________________________________
domains-gen mailing list
[email protected]
http://discuss.tucows.com/mailman/listinfo/domains-gen