Collaboration, innovation, and elegant solutions
My experience is in business, computer programming, databases, Web development, Web video, UI, UX, engineering, systems administration, and graphic design. My core strength is solving difficult problems and then creating and implementing elegant solutions. I am especially motivated to create what has not been created before (see project examples below). Throughout the years I have worked closely with companies in diverse industries including aerospace, automotive, banking, computer, healthcare, manufacturing, medical, and consumer products and have focused exclusively on Web-based solutions since 1995.
Companies founded or co-founded:
Past life (CAD/CAM industry):
My passion for Computer Aided Design and Computer Aided Manufacturing (CAD/CAM) started in December 1982 when I first saw Unigraphics CAD/CAM software (now Siemens' NX) with its amazing (for its time) 1024x1024 resolution computer graphics monitor. I co-founded the Rocky Mountain Unigraphics Users Group, become involved in the National Unigraphics Users Group (National Programming/GRIP/UFUNC Chair, 1989-1992; Vice Chairman, 1993), gave many technical presentations around the United States, and wrote a lot of custom software for corporate CAD/CAM clients.
Here are the projects from my CAD/CAM years that I'm most proud of. My deepest thanks to all of the wonderful people I have collaborated with and who gave me the opportunity to create these solutions for them.
Back in the 1980s, designing D-M-E plastic injection molds using a CAD system required re-creating substantial geometry with every new mold design. Today, there are D-M-E part libraries for virtually every CAD system out there. This was not the case in 1984. I spent about three years (part-time as I was also in engineering school) programming an huge suite of 3D wireframe (and, later, solid model) applications for D-M-E mold design.
A prominent medical technology company, which developed standard and modular hip implants, was expanding into the custom hip implant market and needed a faster, more cost effective way to design custom implants. The problem was that it took up to 100 hours for an engineer to design a custom hip implant because of the unique aspects of each implant, the complexity of the CT scan data, the relatively slow (by today's standards) processing speed of computers, and the limitations of CAD software in 1990.
I was first given a detailed overview of hip implant design and hip replacement surgery by a medical engineer (Thanks, Paul!). I then developed a program that imported the CT scan data, simplified and standardized the cross-sectional data, allowed the engineer to quickly review the program's simplifications (against the background of the original data), and make adjustments if necessary. The program then prompted the design engineer to select key anatomical landmarks to position the implant correctly. The program then ran overnight to generate a full surfaced model of the hip and implant. The result was that the 100 hours of engineering time per custom implant was reduced to 30 minutes plus computational time (run overnight).
Simmonds Precision, a division of BF Goodrich Aerospace, created wire harnesses for jet engines. Engineers needed to know at which angle (0° to 360°) to attach the connector to the wire harness so that it would attach properly to the engine.
The solution at the time was time consuming and costly: fly two engineers and a wire harness to East Hartford, Connecticut (where Pratt & Whitney is located), and have the engineers spend two days on site, wrapping the wire harness around the engine, adding the connector to the end, then unwrapping it again, placing the harness in a fixture, and measuring the angle of the connector. Whew!
I created a program where the designer selected (within the Unigraphics CAD design file) the spline representing the wire harness. The spline had a connector at the engine end. The program then converted the spline into thousands of line segments and mathematically "unwrapped" the spline with the attached connector. This computationally-intensive program would run overnight (remember, this was 1991). In the morning, the designer would be presented with the proper angle of attachment. The program saved many thousands of dollars in travel expenses and labor associated with wrapping and unwrapping of actual wire harnesses on actual jet engines.
Year: 1991 • Client: BF Goodrich Aerospace
This program gave Apple CAD System Administrators the ability to maximize use of networked disk drives for design projects, while giving designers easy access to their projects without having to know where they are located.
To design Macintosh computers in the 1990s, Apple used Unigraphics CAD/CAM software on a network of seventy HP-UX Workstations. There was no central hard drive array to store data files - each workstation had its own internal disk drive, and these disk drives varied in storage capacity. When a project on a certain workstation grew to the point of needing more disk space, the files would need to be moved to another node on the network where there was enough disk space for the project. Once the data files were moved, the designer would need to know where their project was now located. This added additional work for the systems administrator. Wouldn't it be nice, Apple designers thought, if they could just come in, select their project from a menu, and not care where the data was located?
This program, while not glamorous, is one of my all-time favorites. I realized that the solution was to write code to create and distribute a new application daily. The program went out on the network, got intelligent by finding where projects were located, then wrote a new "menu" program, compiled, linked, and distributed it across the network. When the designer came in the next day, he or she ran the program, clicked on their project, and continued designing. It was hard to believe that this program was possible with the rather primitive languages and file management that Unigraphics had at the time.
Year: 1991 • Client: Apple
Apple design engineers in Cupertino, California needed control of their Unigraphics CAD design databases for fast troubleshooting. Apple was constantly pushing the limits of what could be done with Unigraphics, and designers often ran into quirks and complexities in the software which sometimes made geometry difficult to locate or manipulate. This slowed down the design process. Apple had a custom program that addressed some of these needs, but it wasn't enough. Starting from scratch, I designed a program that could locate and manipulate every possible attribute of the CAD file that the GRIP programming language could access. The resulting program gave Apple design engineers more information and more control of their CAD model. This facilitated much faster ways to find, for example, geometry that was accidentally made view-specific - a significant time saver.
Year: 1992 • Client: Apple
This program read a Printed Circuit Board (PCB) design software output file and recreated the PCB components in UGSolids.
In the early 1990s, Apple was just starting to produce their first true laptop computers: the Powerbook series. This introduced new challenges for the hardware designers as they weren't used to squeezing so much into such tiny spaces. Changes in printed circuit board designs could sometimes cause interference problems with the plastic enclosures. Typically, physical prototypes would have to be created and tested – a costly, time-consuming process. Furthermore, an interference that caused a redesign could set a project back by weeks or even months. How could the printed circuit designers work more closely with the mechanical designers to minimize these types of problems?
I was brought in by innovative mechanical designer Jim Levins, who had begun working on an idea with several of the PCB designers. I collaborated with the PCB designers who showed me their design software, how to export information, and how to read the resulting data file. I then wrote custom CAD software to read the data and create a solid model virtual printed circuit board representation in the Unigraphics CAD system. Unigraphics did the rest, as it had built-in solid model interference checking capabilities. The mathematics of interference checking were computationally intensive, so the number-crunching was typically done overnight. However, in the morning, the engineers would have their answer. The new circuit board either fit, or the engineers knew where the problem was. This gave both design teams the data needed to work together to quickly find solutions.
PCB designers could now create a virtual circuit board and have interferences checked with the virtual plastic enclosure design – all without having to create any physical prototypes. It was a first in Apple design history: electrical engineers and mechanical engineers could now work together with virtual data, potentially saving months of delays in new Macintosh designs.
Year: 1992 • Client: Apple
I worked at Apple Computer during the early '90s, at the time when Powerbook laptops were first being designed. Apple was very aggressive about adopting new technologies that would shorten the product development cycle. I led the rollout and support of 3D mechanical solid CAD modeling (MCAD); prior to that MCAD was done in 3D wireframe. Wireframes look 3D, but they don't indicate where parts accidentally collide. Solid models are much more useful for detecting gaps and crashes between parts. We had successfully designed recent products using solid modeling, but the miniaturization of components fitting into the tightest laptop volume possible posed new challenges.
Back before laptops came onto the market, all-in-ones, towers and desktops were the predominant personal computer form factors. Circuit boards easily fit within the enclosures and rarely caused a redesign because of a component on the board interfering with a part of the enclosure. Laptops were a different story; every cubic millimeter had to be accounted for. Circuit boards share space with batteries, drives and keyboards. There are plenty of chances for things to bump into each other unexpectedly. Printed circuit board (PCB) design is done in an electrical CAD (ECAD) software application. These are 2D systems, because height isn't a design factor for circuit board layout. At the time, ECAD and MCAD databases were independent, and there were no standards for data transfer between them.
Our engineers saw the advantage we could gain if we could somehow port the PCB designs from ECAD to MCAD, but we had no idea where to start. I was friends with some of the PCB designers and mentioned the challenge to them. They explained that the PCB components they used were part of a library database. Each component shape was accurately defined in 2D so that they could precisely place the parts on their boards. There was also a data field for component height, but that was rarely filled in because it had little use in their application. We kept talking through the problem and figured out that they could output a PCB's Gerber file format that was used to print out the board and component geometry. They happened to have a summer intern that could add in the component height information into the library in support of this experiment. All of the sudden, it looked like we had a way to export 3D PCB designs out of our ECAD tools. The next challenge was how we could import these designs into our MCAD solid modeling. That's where Ken Lambrecht came in.
I had worked with Ken on a few innovative software enhancements that accelerated and broadened our use of MCAD. Ken was an unusual consultant to work with because he was enthusiastic about solving the problem at hand and genuinely interested in delivering a thorough and elegant solution. The final products always exceeded expectations; not only would they do what was required, but if there were other useful ways of organizing or manipulating the data, Ken would propose powerful alternatives that were easily added (without impacting schedule). When it came time to import ECAD data into MCAD, I called up Ken and explained the challenge.
I wanted the tool to "build" a 3D solid model of the circuit board. It could have been one solid part and met the primary goal. Ken didn't grab onto this initial idea as the goal and start working on it. Instead, we sat down and considered the possibilities, each of us being experts in our own areas. It only took a couple of sessions for Ken to identify greater potential and propose a solution that would build the entire PCB part by part, along with component information (part number, reference designator) stored on each component. In a matter of a few weeks he delivered a working tool and our very first attempt was a success. For the first time our engineers were able to get an accurate 3D circuit board in their MCAD assembly, check for interference, and find the exact part that was the problem. We were able to detect problems and correct them before prototypes were made. This singular solution reduced risk and shortened product development cycles across the product line.
A few months after introducing Ken's PCB building tool into our design community I was visited by an engineering director. She had been monitoring the "project" from afar, and wanted to know "what went right." She explained that they had budgeted one and a half headcount for the next year to accomplish the task we had accomplished in six weeks. I explained that a few motivated friends figured out a way to solve the challenge, and we spent some consulting dollars to test it out. She wanted to encourage this kind of collaboration in other areas.
I kept working with Ken to provide other time-saving tools for designers. Ken has a natural way of delving into the project as a student, then a collaborator, then a programmer, then a user experience designer. He not only meets the needs, but his work delights the end user. Another surprise aspect in his programs and applications that I appreciate are the "help" buttons. Usually, help is anything but helpful. Ken puts relevant how-to info in each help option. This is so beneficial to anyone supporting and maintaining a system, and the sign of a truly well thought-out design.
I could have any number of dreams or ideas on how things could work better in my work environment or in Web-based tools, yet I don't have the skill set to make them a reality. I know that working with Ken can make so many of those ideas become reality, and much easier and quicker than I would have ever thought possible.
Boeing Defense, Space & Security - International Space Station Division in Huntington Beach, California, was an early adopter of Web technology. The Web applications that they were working on in 1997 were amazing, especially considering the limitations of the Web back then. Engineering manager Jeff Jensen wanted Boeing's Unigraphics CAD/CAM technical training to be Web-based as well. I flew out to Southern California in late 1997 to begin working with Jeff on the project.
Proprietary content project
Fast forward to 2001: Boeing ISS liked the modularity and flexibility of our evolved Web Based Training, but now had a new requirement: adding custom Boeing content to the courseware library. No problem. But wait! The content could not reside on our servers - it had to remain behind Boeing's firewall, while the rest of the content remained on our servers (so we wouldn't have duplicate content to manage.) I created a modification where Boeing could insert pointers in the courseware to custom Boeing content (which was developed with a modified version of development tools we licensed to Boeing). The result was a seamless integration where Boeing content was inserted into the training courses without ever leaving Boeing's protected servers. If a user logged in from behind Boeing's firewall, the entire course was available. Outside of the firewall, the propietary pages generated a 404 error. The software eventually became known as i-get-it.
Year: 1997 • Client: Boeing International Space Station
Year: 1999 • Client: General Motors
Year: 2000 • Client: SDRC