OO ColdFusion Presentation Today on ColdFusion Meetup!

This is a late post, but I wanted to mention that I'll be presenting my Common Sense Approach to Object Oriented ColdFusion, 2010 Edition presentation in a few hours to the ColdFusion Meetup, 12pm Eastern (UTC/GMT-4) today. This is a slightly refined version to the one I presented in April at the CFObjective conference.

Watch Live Here

After the presentation, you'll find the recording posted here. I'll update this post after the fact with the direct URL.

Also, I'll finally be making the code from the CFObjective/Meetup for public view for the first time following the presentation, as well as post it on RIAForge and Github. One of the sample applications is the most extensive LightFront example posted to date, so this presentation should also show you a little bit on the framework as well. In that sample, there's also an "old school" version, as well as an unfinished Mach-ii/ColdSpring version that I'll continue to work on (but there's enough there to show the stark differences between a typical OO CF application and a simpler OO LightFront one).

I'll also be releasing a new version of LightFront (0.4.5) today as well.

UPDATE: The recording of the presentation can be found here:

http://experts.na3.acrobat.com/p93791252/

Note: It went a bit long... 1:53:02

The code I show and the slide deck in the presentation is available via Subversion here.

To download a zip file, which has the code, PDF and PowerPoint of the presentation all in one, just go here:

http://svn.lightfront.org/svn/cfobjective2010/CFObjective2010/download/CFObjective2010.zip

Mach-II 1.5 is released!

Holy cow! Talk about a story that got lost in the hubbub that was MAX last week!

Mach-ii 1.5 is now out. As many of you may know, I use Mach-ii, and this is fantastic news. Recently, I have been contributing to Matt Woodward's Mach-ii based "CHUG" project, a user group application written in Mach-ii and ColdSpring, and I am hoping to become more involved in the Mach-ii project over the next few months and help Matt, Peter, Kurt, Kyle and Dave if they need it.

Here at the Frameworks Conference!

I am in Bethesda, MD, tonight... waiting for tomorrow's start to the Frameworks Conference. Did I ever blog I was coming??? Hmm... maybe not... but I did mention it on a list or two.

This is my third Frameworks, although the first two were back when the only Framework featured was Fusebox (2001 and 2002). I'm looking forward to what is sure to be an eventful couple of days.

The flight and subway ride here were uneventful, but I almost didn't make my flight... thanks to the airport security check, which took 45 minutes. I had to run... imagine a 350+ pound man running at full tilt through the airport!!! And, to boot, my gate was literally the farthest gate to get to... but I made it. Barely... but I made it. This hotel is very nice. The rooms are nice. I registered already. Things start at 8... so I'll be getting to bed in a minute.

Some of the presentations on Thursday I am going to try to make include:

  • Matt Woodward's Building Sustainable Software with Frameworks
  • Chip Temm's Model Driven Development and Code Generation
  • Steve Nelson's CFCs ARE the Framework (I'm tempted to see Peter Farrell here, but I have already seen this preso twice, once for my CFUG)
  • John Paul Ashenfelter's Testing Frameworks (may see Peter Bell's Application Generation - Beyond Scaffolding)
  • Rob Gonda's Intro to Object Factories (although the Model-Glue/Ajax also sounds interesting)

ColdFusion developer wanted, Cleveland, OH

Matt Warzel, wanted me to repost this position...

We are seeking a Web Developer with a strong background in Internet Technologies and Enterprise Resource Planning Systems (ERP) to be part of our Application Development team. This position is responsible for developing reusable architectures and methodologies that can be integrated into various enterprise applications for our company. This position requires the ability to design, develop, and implement leading edge solutions that will meet the needs of our customers. This individual will participate in the entire software development life cycle for enterprise class Business-To-Business (B2B) applications, while also providing systems integration leadership. This position requires the ability to perform daily in an exciting and fast-paced, results oriented environment.

Principal Accountabilities (not limited to): As the Web Developer, the essential job functions include designing, documenting, building, and implementing e-Business applications in the following ways:

  • Responsible for the design, development, and testing of application programs utilizing defined development processes, tools, standards, and methodologies.
  • Maintain up-to-date documentation of newly developed systems and operations.
  • Monitor web services ensuring consistent service reliability and timely problem resolution.
  • Interface with key customers from all functional areas.
  • Responsible for creation and maintenance of reporting solutions.
  • Responsible for meeting/exceeding Customer Service Level Agreements.
  • Responsible for ongoing support of the e-Business applications.

Position Qualifications (Professional):

  • A positive and professional attitude.
  • Excellent communication skills: presentation, written, and oral.
  • Team player with a focus towards customer service.
  • Ability to self-motivate and work in a dynamic environment.
  • Automotive industries experience a plus.

Position Qualifications (Technical):

  • Requires a four-year degree in Computer Science or Management Information Systems or 4+ years of I/T experience.
  • Minimum 2 years of experience developing web applications.
  • Experience in the design, implementation and tuning of applications utilizing HTML, CSS, JavaScript, CFML, XML, XSLT, Java, JSP, JDBC, web services, SOAP, web servers (IIS 5.0/6.0), application servers (ColdFusion 5 or MX).
  • Experience developing ColdFusion applications using methodologies (Mach-ii, FuseBox, cfObjects) (Brian adds: these are frameworks, of course, not methodologies. We're using Mach-ii for new projects. CFC skills are a must!)
  • Experience with SQL Server 2000.
  • Experience in developing web applications in Macromedia Flex, Flash, AJAX, and/or ActionScript is a plus.
  • Experience with ERP systems (Oracle, PeopleSoft, SAP, and JD Edwards) is a plus.

Key Performance Measures:

  • Timely and successful delivery of application development tasks and projects.
  • Meet/exceed customer service commitments.
  • Effective training and support of business community.
  • Effective coordination of projects and tasks across the I/T organization.

Matt Warzel
HR Recruiter
Dealer Tire
216-432-0088 x 2294

We're live... for real, this time!

Remember the other day when I said I was working this weekend? That's actually not an isolated event. I have to work almost every weekend, some weekends more than others. I have to do promotions to production environments on the weekend. This past weekend, I worked more than normal. Among other things, I was working on this...

Although I announced that the BIG project went live way back in November, some business issues prevented the full release of that project. It was pushed back several times, but finally went live as of this weekend. As of yesterday morning, a pilot program started for approximately 25 of our retail customers.

Just to review, we released a new version of our extranet that turns our ordering system to also take on drop shippers, and allows new types of content. It's nearly a complete rewrite. Is it a big system? Our existing system processed approximately 80% externally, and, with our inside sales team, accounts for almost 100% of our sales last year (sorry, can't tell you how much), and the new version will take over as our retail customers are slowly converted over the next two years. The primary technology, for both systems, is ColdFusion.

I can only describe the old system as spaghetti, whereas the new system is harmony. Back in May, I was skeptical about developing in OO, but I wouldn't develop any other way today. And, although skeptical in the beginning, I have grown to love Mach-ii.

I am long overdue discussing some of the many techniques I used in this project, many design based, and I will try to talk about them here.

For now... I am off to work!

Mach-ii 1.1.1 has FINALLY been released as a stable version

I was happy to get an email from the Mach-II Google Group that Mach-ii version 1.1.1 has been released as a STABLE version, no longer considered beta.

http://mach-ii.com/code.cfm

I'm not sure when we'll upgrade at the office. Since it's been a long while between 1.1.0 and 1.1.1, I suspect we'll upgrade sooner, rather than later. I'd welcome getting comments from people that have upgraded and tell me whether it's been easy or if there have been any gotchas.

Kudos to Peter and Matt for giving birth to their new baby! :-)

The BIG Mach-ii project is LIVE!!!

It's been a trying six months or so, but I am happy to report that the big Mach-ii project I have been working on at the office officially went live this morning. Hopefully, the 60+ hour weeks, 75 at the peak, will start to be reduced over the next few weeks.

Unfortunately, I cannot tell you a lot about the project. What I can say is that it's a B2B website that is designed to replace our existing site, and also has drop shipper functionality, so that we can sell products for other companies. It also completely ties into our mainframe systems for order processing and fulfillment. It's written entirely in Mach-ii, rewritten from the ground up, and is almost entirely OO (one legacy sub application was not entirely converted, but the rest of them were).

It's been a learning experience, that was not always smooth. In fact, there were times when it was quite bumpy. However, it has taught us a lot and the lessons learned are helping us redesign and streamline our development process.

There will be a lot more going on with this project. We have to make a few changes in version 2, and begin to port over other aspects of the business to the new site, but version 1.0 is out the door!

ColdFusion developers needed! Cleveland, OH (on site)

I am passing this on... These positions are fulltime on site in Cleveland, OH. Telecommuters will not be considered.

If interested in this position, please email jmiller@dealertire.com with a copy of your resume.

Here's the job description...

---

We are seeking a Web Developer with a strong background in Internet Technologies and Enterprise Resource Planning Systems (ERP) to be part of our Application Development team. This position is responsible for developing reusable architectures and methodologies that can be integrated into various enterprise applications for our company.

This position requires the ability to design, develop, and implement leading edge solutions that will meet the needs of our customers. This individual will participate in the entire software development life cycle for enterprise class Business-To-Business (B2B) applications, while also providing systems integration leadership. This position requires the ability to perform daily in an exciting and fast-paced, results oriented environment. ..

Principal Accountabilities (not limited to):

As the Web Developer, the essential job functions include designing, documenting, building, and implementing e-Business applications in the following ways:

* Responsible for the design, development, and testing of application programs utilizing defined development processes, tools, standards, and methodologies. * Maintain up-to-date documentation of newly developed systems and operations. * Monitor web services ensuring consistent service reliability and timely problem resolution. * Interface with key customers from all functional areas. * Responsible for creation and maintenance of reporting solutions. * Responsible for meeting/exceeding Customer Service Level Agreements. * Responsible for ongoing support of the e-Business applications.

Position Qualifications (Professional):

* A positive and professional attitude. * Excellent communication skills: presentation, written, and oral. * Team player with a focus towards customer service. * Ability to self-motivate and work in a dynamic environment. * Automotive industries experience a plus.

Position Qualifications (Technical):

* Requires a four-year degree or 4+ years of I/T experience. * Minimum 2 years of experience developing web applications. * Experience in the design, implementation and tuning of applications utilizing HTML, CSS, JavaScript, XML, XSLT, Java, JSP, JDBC, web services, SOAP, web server administration (IIS 5.0/6.0), ColdFusion server administration. * Experience developing ColdFusion applications using Mach-II, FuseBox, or cfObjects * Experience with SQL Server 2000. * Experience in developing web applications in Macromedia Flex, Flash, AJAX, and/or ActionScript is a plus. * Experience with ERP systems (Oracle, PeopleSoft, SAP, and JD Edwards) is a plus.

Key Performance Measures:

* Timely and successful delivery of application development tasks and projects. * Meet/exceed customer service commitments. * Effective training and support of business community. * Effective coordination of projects and tasks across the I/T organization.

John Miller

Talent Acquisition Specialist Dealer Tire, LLC 3711 Chester Ave. Cleveland, OH 44114

(216) 432-0088 Ext. 2294

http://www.dealertire.com

Now accelerating to Mach-ii!!!

As suggested from last night's post, I am about to be knee-deep in Mach-ii. We're redesigning much of our main site at work to make it Mach-ii, as part of an initiative to support third-party products on our website. We're going to be rearchitecting our application to be Mach-ii from its existing hodgepodge of coding styles.

Mach-ii was selected as the framework over Fusebox. I am not really sure how much Model-Glue was evaluated. Unfortunately, I was not part of the selection process.

Since the new version is going to be incompatible with the existing website, there is going to be an unspecified amount of time to maintain two code bases, which is going to suck.