Sunday, August 26, 2007

No I'm not a spammer

I clicked over to this site to start a post and I'm greeted by this.




Sorry about the small image. In summary Blogger thought this is a spam blog. I wasn't allowed to make new posts and had to click on the link to get them to review the blog to get off the spam blacklist.

I clicked the link then Blogger reviewed me and of course said I'm OK in this e-mail.


from: Blogger Help
to: "cbmc64@gmail.com {U 947063870279 B 19504237}"
date:
Aug 24, 2007 8:55 PM
subject: Re: [#190813934] Blogger Beta non-spam review and verification request: http://cbmc64.blogspot.com/
mailed-by: trakken.google.com

Hello,

Your blog has been reviewed, verified, and cleared for regular use so that
it will no longer appear as potential spam. If you sign out of Blogger and
sign back in again, you should be able to post as normal. Thanks for your
patience, and we apologize for any inconvenience this has caused.

Sincerely,
The Blogger Team


--
So I'm glad to no longer be considered a spammer. I wonder why I got marked as spam. Perhaps I have haters who flagged me for some unknown reason, lol. I'm not sure what else about this site might make the Blogger algorithm think I'm spam.

No worries, I'm glad the site wasn't deleted. I was thinking of making some changes to this site layout anyway so now this is more reason to. Being mistaken for spam though is pretty discouraging.

Wednesday, August 01, 2007

Productizing

It's remarkable how much stuff can be added to a product without adding any new end user features. Often an initial product release is tied to a specific sale to an individual customer. The customer has a specific environment and the development team is able to get the initial release done on time by building to just that setup.

After the initial sale you want to sell it to additional customers. At this point the initial customer specific release becomes more productized. That is, the application is made able to run in different settings. These are some of the things we've added to the main product in my office since the original release.

-added support for additional application servers
-added support for additional databases
-added support for new host servers i.e. Windows
-fully tokenized the user interface labels to support additional languages
-add support for right to left rendering in the user interface
-make it easier to customize or rebrand the user interface
-add support for running in a clustered application server with failover
-spent time on performance analysis and improved performance in high load environments
-Javadoc code review and improvements
-JUnit code review and improvements
-refactoring and streamlined the internal modules structure
-use xdoclet to generate EJB baggage
-added support for several new iterations of the device specification and new data models, while maintaining backwards compatibility and workarounds for non compliant devices
-rewrote almost the entire inherited code base

Together these changes required several person years of effort to implement. These structural changes added no new end user features, but were necessary to make the product saleable outside of the original customer.

This type of productizing is what makes future releases take longer than the original v1.0 release for a specific customer and environment. Making things generic and customizable always takes longer than being customer specific and rigid. Adding support for new databases, application servers and host servers causes the number of development and testing combinations to become much larger and that necessarily slows down the development cycle.