Prelude to COFES 2014: Time to Break the Code To Rebuild It?

Microsoft's free 3D Builder app is now part of the Windows OS.

Cortana, personal assistant for Windows phones, offers tantalizing possibilities for desktop software users.

The iPhone’s Siri and Windows’ upcoming Cortana may not be as intrusive as the fictional AI Samantha from the Sci-fi rom-com Her, but, with every new incarnation, they would get more personal, more intelligent, more AI-like. (You can bet they’ll remember your appointments better than you do.) Game consoles like Xbox Kinect can now “see” you, in a manner of speaking; using camera view, they can process, remember, and respond to your gestures and expressions. Yet, most engineering and design software still seems entrenched in the mouse-and-keyboard paradigm. Will Congress on the Future of Engineering Software (COFES) yield an inspiring outlook for the state of CAD, CAM, CAE?

The tittle of a COFES 2014 roundtable discussion  — “Give Me a Break: Rewrite Your Damn Code” (Saturday April 26, 2 PM) — sums up the frustration that some have felt with software that doesn’t take advantage of the best that modern hardware has to offer. The abstract points out, “Come on now! Multi-chip hardware has been around for almost 20 years and multi-threaded, multi-core hardware for almost 10. What’s it going to take to get you to go back to the drawing board and rethink ALL your software in this (no longer new) context? While you’re at it, what else should you be redesigning your software to accommodate?”

Brad Holtz, president of Cyon Research and cofounder of COFES, explained, “Let’s say I wrote a small routine for a computer operation. Then somebody else took it, did something with it to use it somewhere else. Then someone else wrote what they wanted to do on top of that. So people kept on writing functions on top of the old ones. When you need to move something, you have no idea what might break.” Software code — in this case, design and engineering software — ought be built like LEGO piece, Holtz felt. That way, you could tidily reassemble different pieces into a new product when needed. But the industry appears to be tangled in the spaghetti code accumulated over time. That explains in part the difficulty to implement multi-threaded functions.

Simon Floyd, Microsoft’s director of innovation and PLM solutions, plans to broach the subject too. “Siemens PLM Software has done some work with Kinect in their Tecnomatix brand for factory automation,” he pointed out. “The humanoid character Jack in the software — you use it to check whether assembly setups are ergonomic or not — can be controlled with Kinect. PTC has also done some work to let you pick up [virtual] objects using gestures with Kinect. Dassault Systemes has demonstrated how to control a drone plane using gestures with Kinect. So they’re trying it out, looking at how to use gestures. On the other hand, they’re not taking advantage of everything on the sensor.”

Part of the remaining 80% of hardware features that currently remains untapped, Floyd pointed out, is some devices’ ability to identify a user’s location based on audio, or recognize different audio signatures. “They can detect where you are based on your audio,” he explained. “The microphones in them are spacial in nature, so they can tell where in a particular room you are standing based your sound and what they can see in the depth-vision. They can also recognize different users in the same room.”

Microsoft has just released the developer kit for Cortana, its virtual personal assistant that will first debut in mobile tablets and phones. “Cortana can process natural language, so it can respond to you in natural speech,” said Floyd. “It also has a machine learning component. At first, it’ll be based on audio input; but we may extrapolate in the future she will include visual data. As she learns from more and more input, her answers become more reliable.”

What would Cortana be able to help you do if it were integrated into design software? A basic CAD function imaginable with this audio-gesture combo might be for the user to select a profile in a virtual model with hand movements from a distance, then issuing the command, “Extrude that up to 2-inch height” verbally.

“The gateway is the natural user interface — a machine you can speak to and talk to naturally,” said Floyd. “But soon you can have predictive behaviors.” If Cortana notices that a user habitually creates draft angles to his or her tall cylindrical bosses, she may prompt, “Do you want to add a draft angle?” once such a boss is created. But these capabilities would take heavy code rework in the software vendors’ R&D labs.

Microsoft is also betting that most computer users would want to experiment with 3D printing. As a consequence, your Windows OS now includes the option to install and run the free 3D Builder app, a program to “view, prepare, and print your 3D models on Windows 8.1-ready 3D printers.” In partnership with netfabb, Microsoft has also launched a free cloud-hosted model repair service. Think of it as “the spellchecker” for STL, OBJ, and 3MF files, the company writes. “This service will save you time by taking care of the many common errors in 3D models that otherwise would require manual repair by a dedicated designer. The service closes holes in the model, fixes face normals, removes self-intersections, and more,” according to the product home page.

At COFES, attendees are willing to entertain “Pie in the Sky” scenarios for how software should evolve, Floyd remarked. “It’s good to get people thinking in those directions.”

In case you’re curious, Cortana evolved from the fictional AI by the same name in the console game Halo.

If you enjoyed this post, make sure you subscribe to my RSS feed!

3 Responses to Prelude to COFES 2014: Time to Break the Code To Rebuild It?

  • Dennis Nagy says:

    Nice article, Ken! Many people (the least of which I am) have been thinking about when major re-writes (or brand new developments) will be necessary to take full (or at least much better) advantage of current/recent hardware developments and more importantly (and harder to forecast) hardware architecture futures, like Exascale, Quantum computing, bubble memory,.. New developments that attempt to really act outside the box (from outsiders and new start-ups) suffer from lack of established fans/users and lack of proven track record in running successful companies, especially in engineering software, because engineers are (notoriously?) conservative.

    COFES has recently had some “outside the box” speakers to push everyone into thinking (and then acting) more specifically in the direction of (re)developing software to leverage the hardware innovations. The Roundtable session coming up at the end of next week will hopefully get more concrete about just when and how this “tipping point” (between staying with traditional software that is widely-used/ well-supported and jumping to much better software that can run circles around the traditional) will happen.

  • Kenneth says:

    Thanks for sharing your thoughts, Dennis! It sometimes feel like it may take a program developed from scratch with no inherited interface or kernel to break through the current rut. We shall see. See you at COFES!

  • Ed Danzer says:

    The problem with gesture and speech input is every person will need their own room. It can be distracting in an open office environment when too many people are talking let alone all computer input. I frequently talk to customers when running the mouse and keyboard to provide information to the customer.

    If someone does want to re-right CAD software there needs to be a semi-intelligent parts library with it and index provided with it so the cost of migrations is not too high.

    For my small company to recreate the 15,000+ standard parts library for SolidWorks would cost over $100K and could take several years. This is a huge entry barrier for a 6 person company.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>