Model Glue 3.2 RC2 available Now

Model-Glue 3.2 RC 2 is now available. You can get the zip file for this release at https://github.com/modelglue/modelglue-framework/archive/release-3.2-rc2.zip.

All Unit Tests pass for this release. After another week or so, we'll release the final version of Model-Glue 3.2. (Yay!) As you may have noticed, this release tag is on GitHub. One of the things we've worked on over the last new months is upgrading our infrastructure. This includes moving all source control over to GitHub. We also have the documentation ported over to GitHub as well. A Big Thanks to Dan Skaggs for handling our new GitHub based development process and for porting the documentation over to the new platform.

Dan Skaggs also ported over and configured a new release process based on GitHub. It works quite nicely and will help us make more timely releases.

Of course, at this point we'll use GitHub for issue tracking and documentation. Our SVN/Trac infrastructure will remain up for a limited time, then will be retired.

We've also moved hosts for Model-Glue.com and other associated web properties. While these changes are transparent to you, our beloved readers, it was time consuming, but due.

All of this work means we are better prepared to move the framework forward. We can now easily take public bug requests, patches, and documentation updates.

At some point after the release, we'll release an application demonstrating many of the new features of Model Glue 3.2. There is a lot of stuff in this release to help you develop better applications quicker.

If you want a refresher on 3.2, watch Model Glue 3.2 for Busy People.

Model-Glue 3.2 Release Candidate 1

We are pleased to make Model-Glue 3.2 Release Candidate 1 available for public consumption. This release introduces a number of useful features that help you to build better applications faster.

  • Updated Core with significantly faster loading times
  • Integration with ColdFusion 9 ORM and Model-Glue generic database messages
  • Integration with ColdFusion 9 ORM with scaffolding
  • Improved scaffolding functionality through easier customization
  • Scaffolding integration with rich widgets like CFUniform tag library, jQuery datatables, jQuery UI
  • An Asset Manager component

Demonstration Available

For a demonstration of these features, watch Model Glue for Busy People. This recording will showcase all of the above features to build a live application.

Download the Model Glue 3.2 Release Candidate Now!

Model-Glue 3.2 Alpha 2

Happy Holidays from the Model-Glue team. As a holiday present to you, we give you Model-Glue 3.2 Alpha 2.  

Why an Alpha 2?

Six months ago, we were sitting on tropical beaches, drinking tropical drinks (paid for by Model-Glue License Fees of course) and reading feedback from the mailing list. Marc Esher asked if we could somehow speed up the reload time of large Model-Glue applications.  This seemed reasonable and useful so we started researching the contributing factors to reload times. It turns out the reload time for Model-Glue applications grows in a predictable pattern with the number of Controllers, Event-Handlers and ColdSpring-managed beans. So we set out to make a few small improvements to the framework. These small improvements cascaded into several months of refactoring the Model-Glue core. Just recently, we completed our work and all unit tests pass. Let's just say we are glad we didn't know the full scope of work at the beginning... OK? Thus, I'm pleased to announce we've finished the work and are ready to offer this body of work to the general public as Alpha 2.

New Reloading Changes in Alpha 2

When reloading, Model-Glue will load only the internals necessary to fulfill the current request, in contrast to the LoadItAllNow architecture of previous versions. This technique is called Memoization, an optimization technique used primarily to speed up computer programs by having function calls avoid repeating the calculation of results for previously-processed inputs. Also, Model-Glue will now optionally keep the internal state of your bean factory across reloads, saving you from reloading all of your ColdSpring-managed objects on each request. 

What This Means To You

Here's what this means to you... When you are developing with Model-Glue, you can now leave the reload=true setting in your configuration for all of your Model-Glue work. You can keep the bean factory loaded for as long as you want, and reload it as you wish by the URL reloadKey=reloadPassword command. To use this new functionality you need to add the following property definition to your application specific modelglue.modelGlueConfiguration bean in your ColdSpring.xml file:

<property name="reloadBeanFactory"><value>false</value></property>

After you've done this, set your reload property to true, and reinitialize once to allow the settings to take effect; subsequent initializations will not cause the bean factory to be recreated. Note: in order to make other configuration changes, including re-enabling bean factory reloading, you will need to append your reloadKey=reloadPassword to the URL to force a reload of the bean factory.

Show Me Something

A picture is worth a thousand words, so we put together a timing test to show you the differences. The timing tests use progressively more Model-Glue objects, and are designed to show you the reload times at 3 phases of the application. Note: these tests only deal with Model Glue objects like Controllers and Event-Handlers. Real world applications also will incur loading times with Model objects. Since Model objects are largely out of the control of Model-Glue and Model objects vary in design and loading times, we left them out of the tests.

Three Phases of Testing:

  1. Initial Startup: ColdFusion is fully started. The test application is hit for the first time.
  2. First Reinitialization: The application is reloaded once after being hit for the first time.
  3. Second Reinitialization: The application is reloaded a second time.

Test Steps:

  1. Start ColdFusion
  2. Log into CF admin
  3. Browse to index.cfm
  4. Note startup time reported
  5. Browse to index.cfm using the application reload flag
  6. Note startup time reported
  7. Browse to index.cfm using the application reload flag
  8. Note startup time reported
  9. Shut down ColdFusion

Initial Startup

First Reinitialization

Second Reinitialization



As you can see, the application load times markedly increase about the 200 object mark. This difference is enormous at the 2000 object mark (tested as 1000 Controllers and 1000 Event-Handlers) Our the timing curve of the new version is much flatter than the timing curve of the previous version. We hope this makes a difference in your development time and helps Model-Glue remain a high-productivity tool for building awesome applications!

Full Feature List of Model-Glue 3.2 Alpha 2

Here are the features in the Model-Glue 3.2 Alpha to date... Once this version marinates for a month, we'll move into Beta status, with a final version expected at the end of February.
  • Integration of ColdFusion 9 ORM with Model-Glue generic database messages
  • Integration of ColdFusion 9 ORM with scaffolding
  • Improved scaffolding functionality through easier customization
  • Scaffolding integration with rich widgets like the cfUniForm tag library, jQuery DataTables, jQuery UI
  • An Asset Manager component
  • Much faster Development Mode reloads
  • XML Schema to help write/debug your config files
  • Extensible event-handlers
  • Introduction of Model Glue Firebug Extension

Happy Holidays from Model-Glue!

Model-Glue Wallpaper

Model-Glue now has a set of very cool wallpaper images, courtesy of the awesome design talents of Andy Matthews. Check them out and download your favorite in any one of 9 different sizes:

Wallpaper downloads

These are some extremely slick designs -- thank you Andy!

Model-Glue 3.2 Alpha Available Now!

The Model-Glue team has put together an alpha build of the highly anticipated 3.2 release. You can download the alpha build now!

This alpha build introduces a number of powerful features:

  • Integration with ColdFusion 9 ORM and Model-Glue generic database messages
  • Integration with ColdFusion 9 ORM with scaffolding
  • Improved scaffolding functionality through easier customization
  • Scaffolding integration with rich widgets like CFUniform tag library, jQuery datatables, jQuery UI
  • An Asset Manager component

Demonstration Available

For a demonstration of these features, watch Model Glue for Busy People. This recording will showcase all of the above features to build a live application.

How you can help

Download the code and plug it into your existing application. Let us know if you spot anything out of the ordinary. We'll form an Alpha tester group and work with that smaller group more closely so we can give personal attention and show some new bleeding edge features for feedback. If you are interested in joining this Alpha tester group, send us an email on the Model Glue mailing list. You must:

  1. Use the subject line "Put me on the MG 3.2 Alpha Please"
  2. Tell us what versions of Model Glue you use
  3. Tell us what database engines/versions you use for development
  4. Promise to give us 3-4 hours a week for the month of May to help us test and prove out these features

In return, you'll get a part in making the 3.2 release rock solid. You'll also get more personal time and instruction with the Model-Glue team in how to use these features.

Meetup Presentation: Model-Glue for Busy People - April 8th

On April 8th, I'll present Model-Glue for busy people. We'll go into a number of Model Glue features that combine to help you build better applications faster.

The plan is to build an application live, in front of the camera. This is an ambitious goal, mostly because of my poor typing skills :).

Through it all, we'll take a look at some ways to build out applications with no muss, no fuss. More info and RSVP info here

Update

Watch a recording of Model Glue for Busy People.

New Official Release - Model-Glue 3.1 M

We've certified the latest build of Model-Glue. This build addresses some outstanding issues and also adds in some enhancements. Download Model-Glue now.

We probably should have made this a 3.2 release, since there is so much stuff baked in... but we already had a plan for some big features for the 3.2 release. This means you get all this great new stuff for free. (you'll get 3.2 for free too, while supplies last :) )

If you want to know what changed in this release, look at The 3.1 Maintenance Release Candidate announcement for Model-Glue.

Big thanks to the Model-Glue team for outdoing themselves in terms of hard work and collaboration!

Model Glue 3.1 Release Candidate Available Now

3.1 Maintenance Release Candidate

The release candidate for 3.1 is available now. This RC will be floated out in the wild until mid-next week. This gives you a chance to drop this RC into your codebase for a test drive. Barring any important issues, this is the version that we'll certify as the official and most current release. This release is particularly noteworthy for the quality of the code and the amount of fixes addressed. If you've been following this release, you know we've closed a huge number of issues. We'll list each item below so you will know what you are getting for your money. A few previously deferred items have been incorporated into this release, like

Special thanks to Dennis Clark and Ezra Parker for finding the time to get these important updates into this release.

Closed on 2/23/2010

Closed on 2/21/2010

Closed on 2/14/2010

Closed on 2/7/2010

Closed on 1/31/2010:

Closed on 1/30/2010:

Closed on 1/26/2010:

Closed on 1/25/2010:

Closed on 1/24/2010:

Closed on 1/20/2010:

Closed on 1/16/2010:

Closed on 1/15/2010:

Closed on 1/14/2010:

Moved to 3.2:

Moved to experimental:

Please take this new Model-Glue release for a test drive and let us know how you find the new features.

Get Hands-On Model Glue Training in April

The Model-Glue team will be at CF.Objective() 2010 for pre-conference training, We'll run a two day class based on rapid development with the Model Glue framework. If you want to bump up your Model Glue skills, you should come to this.

We'll cover:

  • Skinning
  • Data Input and Processing
  • Request Formats
  • Code Duplication, Helpers and UDF organization
  • Advanced Model-Glue XML patterns
  • Leveraging Model Glue with code generation
  • Extending Model Glue
  • Brand new, yet to be discussed Model Glue 3.2 features!
Register for Model Glue Training Here »

If this training isn't for you, perhaps you should consider one of the other pre-conference training courses. Some of the smartest and most talented folks have put forth training opportunities that shouldn't be missed.

List of Training Courses at CF.Objective()

  • Building Secure CFML Applications (April 21) - Jason Dean and Pete Freitag
  • Coldbox:100 Training (April 21) - Luis Majano
  • Developing Applications with ColdFusion 9 Object Relational Mapping (ORM) (April 20-21) - Bob Silverberg and Mark Mandel
  • Getting Started with Flex and AIR Development with the Flex SDK (April 21) - John Mason
  • Mach-II and OOP from the Ground Up (April 20-21) - Kurt Weirsma, Peter Farrell and Matt Woodward
  • Rapid Development with Model-Glue 3 (April 20-21) - Dan Wilson and Ezra Parker

3.1 Maintenance Release Beta Available!

3.1 Maintenance Release Beta

We've released the Maintenance release for 3.1. This release will be in beta for a short while (1-2 weeks) to give the community time to evaluate and comment. After an appropriate review time, we'll certify the build as the official and most current release.

This release is particularly noteworthy for the quality of the code and the amount of fixes addressed. Of special mention are Dennis Clark and Ezra Parker who collaborated on a very technical and important update to the way Model-Glue is initialized.

I'm pleased, as managing director of Model-Glue, to see a growing commitment to teamwork and creative problem solving. Model-Glue continues to evolve because of the many users who challenge the framework, and the many contributors who pitch in and make great things happen.

Change notes/Tickets

Here is a list of which issues/enhancements were addressed, in descending date order:

[More]

More Entries

© 2014 Joe Rinehart
BlogCFC was created by Raymond Camden. This blog is running version 5.9.3.006.