Opening The Nascent Market For Remodularization
Opening The Nascent Market For Remodularization
Pnambic Computing’s vision for remodularization comes from the observation that software restructuring has long been a scary prospect for engineering teams. Everyone agrees that cohesive scalable code is the shining light, and nearly every project has dark, convoluted code that no one is willing to touch.
This is a situation that is begging for solutions. Pnambic Computing offers a systematic approach to remodularizing applications for scalability. The strategy of full inventories, enabling technologies, and structural visualization tools allows for systematic progress on many restructuring tasks. This approach works even for actively developed code, including the mission critical components of the most dynamic startups.
A recent piece in The Economist suggests that this new market for professional remodularization is beginning to develop. Their article “Of more than academic interest” describes the work of the British firm Oxford Computer Consultants (OCC). OCC has worked with a handful of research projects to convert new algorithms into production quality code. The Economist echos the Pnambic vision that “there is a market niche available to be occupied by those willing to take [spaghetti code] and untangle it”.
The OCC model is a fairly traditional restructuring approach, with a big-bang replacement of the old for the new. Their first step is to get the code working in their labs. “Only then, when all parts are working properly, is the spaghetti untangled, the entire program restructured into something a commercial programmer would accept, and annotation added to it so that other programmers can understand exactly how it works”. This pretty much matches the prescription from Michael Feathers’ book Working Effectively with Legacy Code.
The Economist article also regurgitates that tired old trope that “untangling .. would not be necessary if [they] were better programmers in the first place”. This conceit implies that all programming skills are equivalent and interchangeable. It’s a form of “blaming the victim”, often coupled with an equally unhealthy branding of the existing code as dirty and vile. For many developers, the only true and fine work are “green field projects”. Engineering to improve an existing code base is dirty, unclean, or untouchable.
In fact, the art of creating clever new algorithms is strikingly different from the art of building well organized code. The invention of new algorithms relies on mashing all the parts together so innovative combinations can be discovered and expanded. To the extent that there is a problem, it’s the recurring lack of effort to isolate the interesting from the chaff. Industry’s rush to market is only one part of this problem. The lack of tools, missing experience, and different skills to successfully restructure software also contributes to this problem.
Pnambic Computing is a leader in the new market for software remodularization. Pnambic Computing has the tools, experience, and skills to successfully restructure many problematic code bases. Even large, mission critical applications can be transformed systematically into more scalable and flexible systems. These projects have a well defined sequence of steps, and a new breed of powerful visualization tools can avoid recurring pitfalls for these restructuring efforts.
Restructuring existing code is a specialized skill. It relies heavily on experience, breadth of knowledge, and technical maturity. Since it is rarely an ongoing process, most enterprises are well served by bringing in outside expertise during their time of need. This is the market for remodularization.