Category Archives: Purplewire

Acquiring Technology for the Channel: A Quick Checklist

We all know (or have heard) that technology can solve many of the challenges facing the channel. But how do we capitalize on the opportunity? A good first step is to identify where problems and opportunities lie in the first place, and uncovering problems turns out to be one thing technology can be good for. We discussed that in an earlier article: “Solving problems or finding problems, what’s more important?“.

Once we have determined the areas that need improvement, how do we implement the best technology solution for the problems? Here are a few quick suggestions to consider:

  1. Don’t try to use technology to mimic your current business process exactly. Some parts of your process may be based on ideas that have become outdated over time, and are now ready for the recycling bin. Time may be right for some process re-engineering. Be opportunistic, and don’t accept “we’ve always done it that way” as sufficient rationale.
  2. Automation is good. Controlled automation is better. Make sure the control knobs are there when you need them and choose the right ones based on your business needs.
  3. Design/choose your solution with views from both sides of the channel. Remember many of your partners do business with multiple vendors. What looks like a complete streamlining of business interaction from the vendor perspective, can often have limited or even negative impact on the partner’s lifestyle.
  4. Before you decide that you have to build something because nothing you find in the marketplace does exactly what you want, think some more about (1).

 

The Problem with Old Code

We’ve been thinking lately about the pros and cons of updating some older B2B client sites that have been chugging away successfully for years.

If it ain’t broke, don’t fix it”

Although there is obviously something to be said for that old adage, it doesn’t apply well to web software. On the surface, there may be little motivation to invest in updating old software as long as it’s still getting the job done. The current system has been battle tested, users are familiar with it, and most of the worst kinks have been found and fixed.

But there are real costs and risks associated with failing to update old software. Some are visible, some are hidden.

Visible Costs and Risks:

  • usability: older web software typically doesn’t adequately leverage client-side technologies that increase usability and user efficiency. Most older interface designs would benefit from various techniques and technologies, including:
    • increased use of client side interaction via javascript and AJAX to allow for relevant dynamic information to be displayed in the context of the user’s workflow, with fewer clicks between related pages and fewer complete page redraws.
    • consistent approaches to layout and interface features, aided by tools such as standard javascript UI libraries and Bootstrap, reduce user learning curve and increase cross-browser compatibility.
    • better adherence to REST principles to allow for better addressability of specific resources, easier collaboration between co-workers (for example, emailing links to specific warranty claim details), more reliable use of browser history, bookmarks, and the “back” button.
    • layout optimized for higher resolution displays, preferably utilizing a “responsive” design that is optimized for today’s typical sized monitors while adjusting gracefully to smaller devices such as netbooks, mobile phones, and tablets.
  • brand image: it’s usually obvious to users when a website or application interface looks “old”. Depending on the nature of your relationship to your users, this may send a bad message that you don’t care about the users’ needs, don’t care about the process the software supports, aren’t up on technology, etc.
  • performance: old web software often has relatively poor response time. Users today usually have fast Internet connections, and have higher expectations on web response time than in the past. A latency of 2 seconds at the server wasn’t much when it took 7 seconds to transfer the content, but as the content transfer becomes closer to instantaneous, the server response time becomes more of a noticeable bottleneck. For this reason, new development projects use modern web frameworks with performance features like memory-resident application code, template caching, and shared persistant database connection pools to greatly improve the time needed to service requests on the server side.

Hidden Costs and Risks:

  • testability: the industry has made great improvements in the software development process since the early days of web apps. New web apps are typically developed using an MVC (or similar) design pattern, with object oriented design and a solid suite of automated “unit tests” for the data model. Older software which was developed with a more procedural approach and mixed control logic and data access is inherently more difficult to test, and as a result old code is dramatically more prone to develop hidden “regression” bugs resulting from minor changes to application code or operating environment.
  • support skill set: as developers move on to newer (and better) development methodologies, patterns, and habits, the tech team’s facility with the older style code tends to fade over time. Add to this a certain amount of turnover in a software organization, and it’s not too surprising that older code starts to look very unfamiliar to the current support team.
  • platform dependencies: most software has numerous obvious or hidden dependencies on third-party application libraries, operating systems, and server software (e.g. database or http servers). Over time the versions of these dependencies originally used during development and deployment inevitably become obsolete and unsupported. This problem eventually becomes evident when trying to move the older code to a newer production platform, and the application code doesn’t work correctly with the new version of the dependencies (and the old versions are either no longer available or have serious security flaws).

It’s often tempting to downplay the hidden risks. However, investments in testability and maintainability can reduce the risk of major problems down the road.

A Word About Browser Support

It should be noted that updating client-side code to better service users with relatively current browsers will cause new compatibility problems for any users with very old browsers. Therefore, prior to any modernization project a baseline for browser support should be established on 2 levels:

  • the minimum browser versions required to be able to use all site features
  • the level of support offered to users with browsers older than that

Browser support isn’t as big an issue as it used to be, for several reasons:

  • the big web players (google, facebook, etc.) require relatively recent browsers and this motivates users to upgrade
  • Microsoft has been aggressively upgrading IE versions via the windows update mechanism, because they don’t like supporting older browsers (for security and other reasons)
  • popular client side libraries (Bootstrap, jQuery, etc.) do a pretty good job of “papering over” browser incompatibilities so the developer doesn’t need to worry about them

A reasonable strategy is to officially support only those browsers supported in the current stable release of Boostrap (currently IE7+, Firefox 5+, Safari 5+, Chrome 14+). IE7 has been out for 7 years now, and older versions of IE are very problematic from both capability and security perspectives. As a point of reference, Facebook requires IE8+ and Google supports only IE9+ (and equivalent generations of Firefox, etc.)

As of this writing, conventional wisdom is that users should be expected to have javascript and cookies enabled, but should not be expected to have extra client-side technologies such as ActiveX, Java, Flash or Silverlight.

Purplewire Consolidates its Lead-distribution Product Lineup

The recent release of channelLEADS 6 is the first milestone of a strategic initiative to better serve our markets with a sharper focus. Many of the innovative features developed under the LEADpiper project were incorporated into the new channelLEADS release to offer customers the best of two worlds: sophisticated collaborative features and privilege controls, in conjunction with simple, intuitive system administration.

We have ambitious plans going forward to bring more value to our customers with a single focus and at a faster pace. Consequently, we are retiring LEADpiper as of today, Dec 18, 2012. This means we will no longer be offering new LEADpiper accounts, but will continue to service active users indefinitely. We encourage users to consider migrating to channelLEADS in order to realize the benefit of our ongoing development efforts on that product, and we will provide any help necessary for a smooth transition. Please contact our support team at (315) 234-0079 x345 or support@purplewire.com with any questions.

Purplewire Has Moved

Purplewire has moved our offices downstairs in the same building (the Loew’s Building) to Suite 305. Our new address is

Purplewire
108 W. Jefferson St., Suite 305
Syracuse, NY 13202
 

The new space looks great. If you’re in the neighborhood, stop in and check it out!

Also, please note that our fax number has recently changed to (888) 501-4949. Our phone numbers have not changed.

 

Purplewire Develops New System for On Point for College

Purplewire and On Point for College are pleased to announce the launch of On Point’s new Transportation Database system.

On Point for College (OPFC) is a Syracuse-based nonprofit organization that provides first-generation college students with a support structure to help them succeed in school, from the application process through post-graduation job search. One of the services provided by On Point is transportation to and from campus for students. The rides are often provided by volunteers. The process of managing the information about requested rides that need a driver, and getting the up-to-date information to the volunteer pool, is a labor intensive process. Previously this was done using a combination of spreadsheets and manually prepared emails. Purplewire saw an opportunity to streamline the process, and volunteered to help. The development and ongoing maintenance of this system have been donated to On Point by Purplewire free of charge.

“We’re very happy that Purplewire stepped forward to help us organize our transportation process”, says OPFC Deputy Executive Director Sam Rowser. “The new database system saves our staff a lot of time, makes collaboration with the volunteers easier, and gives us new ways to view current and historical information.”

The new system is based on Purplewire’s OppTuna™ web-based customer relationship management (CRM) system. Purplewire realized that the process of managing the information about volunteers and clients (students), and the activities (rides) assigned to volunteers on behalf of the students, are very similar to existing functions of the OppTuna CRM system. From that starting point, several features were added and modified to meet the unique needs of the nonprofit organization. The resulting system includes a facility for automatically generating email updates for the volunteers, and includes a “volunteer portal” interface that allows the volunteers to access data about the current list of rides requested, sign up to provide a ride, update their contact data, and review their history of previous rides provided.

Purplewire CEO Chung-Chi Cha says “We’ve been familiar with the good work On Point does for some time now, so we’re glad to have the opportunity to apply our technical expertise to helping them fulfill their extremely worthwhile mission.”

Jay Mortensen, the Purplewire CTO, adds “It was a pleasure to work with the crew at On Point, and we’re happy with way the system turned out. This project has really opened our eyes to some of the similarities and differences between commercial and nonprofit operations. We’re now exploring the market potential for a new version of OppTuna targeted towards volunteer-centered nonprofits. There are a number of companies that produce CRM systems for nonprofits (often called Consitituent rather than Customer Relationship Management in this space), but most are geared primarily towards the fund-raising aspect of nonprofit operations. That’s an important component to be sure, but we feel we can bring something new to the table in terms of helping streamline the nonprofit organization’s processes and collaboration with volunteers, thus freeing the operational staff to direct more of its energy towards the core mission.”

Nonprofits with any ideas, suggestions, or feature requests for such a system are encouraged to contact Purplewire through the website at http://www.purplewire.com. Purplewire will soon be accepting applications for beta testers who may be eligible to receive free implementations of the new system.

For more information: