Don’t ever let grass grow on your wheels
According to sociologists, my brother and I are from the same generation. Sometimes I wonder… with nine years between us, we occupied two very different points of time, especially when it came to music. My brother was a man without a hat, a child of the 80s, while I left my toque at home so I could let my hair hang low à la Kurt Cobain. But in spite of the age gap, we shared an abiding mutual interest in contemporary sounds, and my brother once remarked, when comparing my Pearl Jam to his Bruce Springsteen (Springfield, after all, had been his generation’s Eddie Vedder), that my music was sure easier to dance to. That was certainly a surprise to me. I always thought of myself as a double-left-foot biped, and moreover I’ve long suspected that I have no genetic predisposition to dance—our father’s visits to the local dancehalls were to roughhouse, not to two-step, and I’ve often wondered if he only met my mother because he couldn’t find another ruffian to dance with that night.
For many years I was close with a World War II veteran who also met his spouse at a dance hall. As a man of the Greatest Generation, he felt the Great Depression firsthand, served in the European Theatre, and returned to the States to become a successful business owner and family man. But if you asked him what he really was, he’d tell you he was a dancer.
His greatest joy was to fling himself and his dancing partner across the parquet of a long-forgotten ballroom, with the band laying it down in the corner. And whenever I’d make it home to see him after an extended consulting gig, he’d ask me if there were any polka bars in the town where I’d been. It broke my heart to disappoint him that I couldn’t find a polka venue to spend my nights, as his dance hall culture had long since become an American timepiece.
My crowd, for one, never caught onto it, and I personally never learned how to dance. I didn’t exactly need to be Jean Erdman to make my way through a mosh pit, and my crowd later gravitated to house and electronica music, where dance meant minimal vertical sufficiency while moving to the beat. Even still, I found one abiding continuity between my companion’s old-style Polka and my Mosh. Always keep moving, always keep to the beat. Or, as he loved to say after reminiscing about his dancing days, “Don’t ever let grass grow on your wheels.”
Good software is like a good dancer—it doesn’t stop moving.
Has anyone on this dance floor ever worked on a green screen application? Or does anyone remember the look and feel of Netscape Navigator? In spite of my nostalgia for 90’s apps, baggy jeans, three-chord anthems, and a full head of hair, I realize that software doesn’t stand still—a software package that can’t dance soon becomes a two-left-feet wall-flower. And a software package that can’t teach its users how to dance might lose out to nostalgia. It was the twist that put my polka buddy out for good: “I just can’t understand how a guy can do nothing but put out cigarettes all night on the dance floor and call that dancing.”
Fresh off Epicor’s annual Insights conference, I’m ready to tango and tangle with all the new capabilities that are in development or already in the process of being released to the user community. Needless to say, there is a whole lot of shaking going on at the great Epicor Code Laboratory, where Epicor’s waltzing wizards ply their trade. And the release of this functionality for public consumption is more than just movement for its own sake. Like a good ballroom turn, software release requires a cadence, and Epicor has been hard at work perfecting its rhythms.
New releases of Epicor functionality conform to the Major.Version.Release.Update structure.
For example, a company on version 10.2.300.4 would be broken out in the following manner:
- Major: 10
- Version: 2
- Release: 300
- Update: 4
These different elements are further described below:
- Major Product changes occur when fundamental architectural changes are made to the product. From a customer perspective, a new product level may require significant changes at the database or application server level.
- Any customizations in the previous product level need to be retested, and many may need to be rewritten entirely.
- Significant functionality or user-interaction changes may also be included, which may require retraining of the user community.
- The most obvious example of this was Epicor’s monumental move from 905 to E10. This was a fundamental change to the database and all the levels of its server-side business logic.
- Major Product deliveries are planned to occur approximately every 60 months.
- New versions may have a significant impact on Epicor’s data schema—fields may be added or removed.
- These changes may be substantial to BAQs, BPM’s, and screen customizations. As such, ample testing in a pilot environment should occur prior to deployment.
- For example, Epicor’s move from its 10.0 to 10.1 brought with it important improvements in performance, stability—not to mention a ton of new features.
- New versions of the software are planned to occur every 18 months.
- Releases are fully-packed new instances of the software, with significant functionality enhancements, but the enhancements are limited as to allow for an easy upgrade process from a prior release.
- Releases (or patch-levels) include additive changes to Epicor’s data schema, but no deletions.
- These changes may have minor impact to BAQs, BPM’s, and screen customizations, but these are smaller in scope and gravity than with new versions.
- For example, in the .300 version of Epicor’s 10.2 product, Epicor’s License Plating (PCID) functionality was greatly enhanced.
- New releases are deployed every 6 months.
- Updates are smaller, release-specific changes, constructed with the intent of addressing issues within the current release. Changes are restricted to minimize disruption. As such, technology or schema changes are not present in these packages.
- User training is not required for updates—the system will function as it previously had, only with fewer issues.
- Updates are released every 2-3 weeks.
Within this structure, it is important to understand the rationale of Epicor’s release cadence. The goal of their rhythm is to minimize business disruption, while at the same time quickly providing resolution to issues, and providing functional enhancements at a reasonable rate. The implementation of this cadence has allowed Epicor to balance functionality and support, while allowing the customer base to focus on running their businesses without interruption.
For cloud customers, these upgrades happen automatically, with prescribed periods set aside for preparation, testing and validation, prior to deployment. For customers who have the application installed on-premises, the cadence is customer-defined. I have found that customers who keep their system up-to-date reap the benefits of this decision—new versions are easier to maintain and support, and they perform better and have fewer issues.
As such, my advice to customers with regard to the frequency of upgrades is simple: learn how to dance and don’t ever let grass grow on your wheels.