Whatever Happend to MondoTeams.com?

I was recently asked about MondoTeams.com; a pretty cool ColdFusion-based team collaboration tool of which I was a subcontractor. Well, as of today, the MondoTeams web site is still up and running and all of the functionality I built is still there.

I was laid off (if that's the word for a subcontractor) in October due to economic issues (who isn't feeling it). Anyway, I know nothing more at this point. Hopefully, they can get development up and running again. It was fun to work on.

Dynamic Screening Solutions' New Web Site

One of my previous employers has posted a new web site that I think is fantastic. Dynamic Screening Solutions just released a completely realigned web site that effectively highlights and brands their products and services.

As a quick overview: their product suite contains ColdFusion-powered web-based applications that simplify and consolidate paperwork processes. This CF system is called The ONE Application platform: a feature-rich enterprise system, with integration capabilities, that creates the foundation for several of the company's key products:

Now, I don't care much for the names (I think they should have renamed "The ONE Application" with a more distinctive name) but each product is targeted to a specific industry. While each industry-based product uses the same stable framework, features differ between each product to solve specific problems with paperwork processes in that industry.

I know of a few clients that currently use this system in the State of Utah. The Utah Department of Health and the Department of Workforces Services currently use The ONE Goverment Application (branded Utah Clicks) to assist Utah families with applying for services online; such as Medicaid, Baby Your Baby, Children's Special Health Care Needs, etc.

Now, applying for services online is nothing new to the internet. However, The ONE Application is unique in that it is specifically designed to solve 3 key problems:

  • 1) Decreased efficiency due to unnecessary paperwork for government workers and families.
  • 2) Duplicated efforts by families when needing to apply for multiple services.
  • 3) The passing of complicated program eligibility concepts and rules onto families, resulting in wasted time and effort by both the families and government workers.

With this recent realignment of product and service branding, in addition to a more focused approach on expanding R&D for web-based technologies, I think DSS has fantastic potential to become a leader in paperwork reduction and simplification frameworks. This web site is a great start, because it not only looks good, but more importantly, properly highlights the key strengths of their technology. This was a badly needed, successfully implemented, web site realignment. Great job!

Ah, The Holidays...

November and December have got to be the worst times for me to blog. I get so wrapped up in Thanksgiving and then Christmas and then New Years. I apologize for the lack of blogging and hopefully after Christmas I can get back to it (actually, I have a few things to blog about over the next day or so, but no promises!)

I wish all of you a Merry Christmas and a Happy New Year!

Do something nice for someone you don't know and it will make all of the difference!

Another Open Source Project Management Tool - Part II

OK. OpenProj is becoming one of my favorite project management programs. I've been using the project tasks screen all day and it is working very well and very similar to Microsoft Project. In fact, working with resources and the calendaring tool is easier than MS Project's. The interface is clean and several icons on the left side provide easy access to important project displays such as Ghantt charts, network diagrams, WBS and RBS diagrams, reports, task usage, and resource usage. That part of the interface is much simpler than MS Project's. I always hated the wizard in the left panel MS Project provided for managing project elements.

When printing the project, you can preview it and select what you want to display by simply unchecking or checking those elements. So, if I don't want to print the Ghantt chart, I uncheck it and it disappears from the preview. Thus, the print preview is a true WYSIWYG.

I'm impressed so far, and I've only been using it for about a week. If there are any other impressive features, I'll be sure to post them.

Another Open Source Project Management Tool

So, I'm back to using project management tools again and I've come across OpenProj. So far, it is the closest app to Microsoft Project I've found. I'm enjoying it so far. I'll keep you posted on how it works in the future.

Congrats Barack Obama!

I forgot to say congrats to Barack Obama! I'm looking forward to see how well he executes the job as President.

Just don't screw it up worse than it already is, OK? Theoretically, we can only go up from here. Right?

Getting Used to this MacBook Pro

Macs rock! I'm thoroughly impressed with how easy it is to manage this MBP. I've installed Eclipse, OpenOffice, FireFox, and all of the other programs I've needed (except ColdFusion, I'm getting to it). It is such a cinch to use and it's fun too!

One thing I miss on this Mac is the "End" and "Home" keys. You can do it using Command+[right arrow] for simulated "End" or you can use Command+[left arrow] for simulated "Home". I can get used to it.

I also needed to view hidden files in Finder because I needed to view the httpd.conf file for Apache. That's easy too using Terminal commands:

defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder

To hide the hidden files simply change the value to false:

defaults write com.apple.finder AppleShowAllFiles FALSE
killall Finder

I don't remember where I found that code so, I apologize for not posting the link.

Installing programs is a breeze. Download the program, extract it to .DMG if needed, double-click .DMG file and off you go.

Again, I'd like to thank my friends at the USU PAD Team for "enlightening" me about Macs.

Lost My Job. Learned Flex. Got a New Job and a Mac. Oh, and Happy Halloween!

I'm writing this from a new MacBook Pro! I never thought I'd work on a Mac...

It all started when the company I was working for lost investor funding. Thanks to the sour economy, my contract was not renewed and I was out of a job for about a week. No problem, though, had plenty of means to continue onward and upward.

So being out of a job for a week gave me a chance to, first, find a new one and, second, learn a little Flex. I built a simple online signature for one of my clients so that persons applying for jobs can sign their name using their mouse. It's a little awkward (signing your name with a mouse), but it works and they can use it to streamline the employment application process. You can check it out here.

Then I called a former boss to get a reference. Instead of a reference he wanted me to work for him as a General Manager of his new company STEDI, LLC. They are a new spinout from Utah State University specializing in substitute teacher training for school districts all over the country. I'm quite excited and am looking forward to the challenge! Especially learning ASP.NET. But I told them they would have to learn Flex and ColdFusion.

That's where this new MacBook Pro comes in. STEDI is a Mac shop (except for the one programmer that uses .NET) and while I had a choice to get a Mac or PC, you can thank my friends at the USU PAD Team for finally convincing me to get a Mac!

Now, how do I install programs on a Mac? I'll figure it out after I take my kids out to get stuffed with candy.

ColdFusion Component MetaData

I recently needed to get the list of functions from a component that I was building. This is helpful especially if you want to loop through the list of functions and execute all of them. Now, this is possible by listing the functions in a variable in a component, but that's not very scalable because every time I add or remove a function, I have to subsequently add or remove that function from the list. So, here is how you dynamically get the list of functions from a component:

<!--- Instantiate the component. CMS --->
<cfset obj = CreateObject("component","com.test.ExpressComponent") />

<!--- Get the metadata. CMS --->
<cfset md = getMetaData(obj) />

<!--- Now loop through the variables. CMS --->
<cfset mdfunc = md.functions />

<!--- Here I dump the info. But it can be processed in whatever manner. CMS --->
<cfloop from="1" to="#ArrayLen(mdfunc)#" index="k">
   <p><cfdump var="#mdfunc[k]#" /></p>
</cfloop>

The getMetaData() function returns a nicely formatted structure of various information about the component. Here is a dump of it:

cfdump of getMetaData() result.

Lot's of valuable information about the component.

Benefits of Unit Testing

The following are some benefits to ColdFusion unit testing that I've noticed while creating them over the past several days:

  • As I write the unit tests (and the subsequent code for the cfcs) I find that changes are actually quite simple. It makes it easier to make changes in the beginning. IMHO, it is much more difficult to make changes as I'm implementing the CFC into the presentation layer.
  • As I develop unit tests, I establish the expected behavior of the CFC even before I begin to create it. This allows me to have a more absolute concept of what the CFC is supposed to do early on. As mentioned above, that's much easier to change than if the whole darn CFC is already coded and implemented in an interface.
  • Initial bugs are found and fixed before connecting to the interface. I have a fully functional CFC that has been bug tested (by the unit testing) prior to its implementation. Plus, I'm not bug testing with the interface (except for interface bugs) because that's already been done with the unit test. So nice.

I'm sure there are so many other reasons to do unit tests that I haven't covered. If I think of any, I'll post them. Otherwise, feel free to post your reasons for unit testing.

Which ColdFusion Unit Testing Framework?

I'm currently using MXUnit. In the past I've tried CFUnit which was really nice, BUT THEY STOPPED UPDATING IT! It's been dormant for about 18 months.

I've also tried CFCUnit but they stopped updating it over two years ago! That's a bummer because their interface was really nice.

MXUnit is currently being updated, supported and they even have an Eclipse plug-in (that I haven't tried yet). They have an active blog and an active Google Group to get support.

More Entries

Contact Chris SchofieldBlogCFC was created by Raymond Camden. This blog is running version 5.9.001.