What Should Rick Chin Work On Next?

Rick Chin, our Director of Product Innovation, needs something new to work on. So he wants you to help him decide. Keep reading for more.

Over the past 14
months, I have been working on the new SolidWorks Sustainability product,
which we are in the middle of launching.  With the release of this
product, my participation is winding down.  I now need to start
working on my next project.  I had a couple of ideas, but decided to
instead start with some upfront customer research.  The plan is to
use the research to inspire what this next project should be.

We want this next
project to be relevant and important to our customers in a big
way.  So we want to take a fundamental look at your job as a design

  • What
    are the important things you need to accomplish?  
  • What
    are the things getting in your way?  
  • What
    in your current design process contributes or takes away from your
    competitive edge?  
  • What
    makes collaboration with others effective or a total waste of your

Our goal is to
"unleash the uber-engineer or designer in you"!

Please take this survey.  It will take you less than 15
minutes to complete.  Help us to give you the products you really
want.  Thank you in advance for your time.


Rick Chin

Director of Product

DS SolidWorks

Here's a video I helped Rick put together talking about what he's looking for. This is your chance to decide where we go next!

Matthew West

Matthew West

SolidWorks alumnus. I like plate reverb, Rat pedals, Thai curry, New Weird fiction, my kids, Vespas, Jazzmasters, my wife & Raiders of the Lost Ark. Not necessarily in that order.
  • Chris H

    This is what you need to work on:
    Global editing of the custom properties/configuration specific properties from w/i the assembly model, or from w/i the drawing, or from w/i a stand-alone module like the sw task scheduler.
    By global editing, I mean ability to create, modify, delete, etc any and all part/assembly properties, including those inside weldments, routing, etc.
    Why is this essential?
    B/c those of us who do ‘production design and drafting’ need to be able to edit our designs at any time along the design process, even after releasing the drawings for fabrication. When 100’s or 1000’s of parts are involved, one little change creates a chain reaction that needs to be VIEWABLE on a GLOBAL scale, as well as CHANGABLE on a GLOBAL scale.
    Consider it like having a spreadsheet that lists all the properties of a top-level model, in a hierarchical form that can be edited just like in a spreadsheet.
    We can already do it in autodesk inventor (have a few limitations). That’s what makes inventor the modeler of choice when assemblies are involved.
    Let’s go for it!
    Cheers … Chris H

  • I started taking the survey, but quickly found out I’d corrupt the data if I do. I use CAD as a reporter/journalist, but I don’t work for a manufacturing firm.

    Looking ahead, I think the need to balance three elements–sustainability, FEA, and cost–will become a challenge in the design process.

    Currently, most CAD system lets you do them, but only one at a time. But I think ideally you should be able to look at these three elements in the same application window.

    That way, you can tell that, if you switch from Steel to Plastic, you might decrease the carbon output and cost but increase the likelihood of product failure.

    If SolidWorks can come up with a way to integrate all these three into a single application window, it’ll be a huge advantage, something other CAD and PLM companies haven’t figured out yet.

  • I agree with integrating simulation deeper into Solidworks, perhaps even excluding it only from Standard.

    I would also like to see more direct editing capabilities.

  • How about something simple? I am doing castings and putting in some hole patterns that are on diagonals – and when I want to do smartdim to place holes it will only dimension diagonally from hole to hole; but I need to still go orthographically horizontal and vertical, even though the holes are in a diagonal pattern. What’s up with that – and when placing a hole the dim function won’t give the vertical dimension or horizontal dimension options. MDT doesn’t have this weakness.

  • Derek

    For something really new and novel how fixing all the broken software.

  • Neil

    I started your survey and found it wasnt being useful so I’ll post my wish here.
    I want to use 2 pc’s simultaneously such that I can interchange tasks between them. People have the capacity to utilise more than one machine at once because of the wait time to compute in CAD. I envisage switching between various task environments by windows on a rotating cube linux style – even perhaps like a rubik cube…
    Sometimes there will be 2 cursors operating in the same shared space like remote access – say for quick mating selection and destination.
    You would work on 2 different parts at the same time and then change the environment displayed to combine them in a branch of assy on either box or simultaneous configs, or make one drawing with 2 parts at the same time.Parts ,assy and dwgs can be simultaneously live and collaborative/parallel with simulation.
    The two pc act as virtual left/right brain combination. For some tasks new work can proceed on the same model while the other rebuilds what has just been done.

  • There needs to be a better solution for making Right hand left hand assemblies. We make huge mscines that have Right hand and left hand assembilies and having to remake the Left hand is time consuming. If you need examples I can send you examples.

    Scott Baugh

  • This ability to change custom properties globally, sounds like something that should be done through PDM. It would provide the anytime access you described, authorize such changes, and provide a paper trail. Am I understanding the need correctly?

    Thanks for the insights Chris!

  • Hi Kenneth,

    Great points and we completely agree. To that end, one of the things that we did with the release of Sustainability was to move the product to the Simulation group. We hope to create more synergy between Simulation and Sustainability.

    At SolidWorks World, there will be a session “Sustainable Design – Partnering Simulation with SolidWorks Sustainability” on Tue Feb 2, 1:30-2:30, room 304 A-B. Should be a very interesting presentation.

    See you at SWW, and thanks for the input.


  • Can you describe a situation where our current direct editing tools don’t fully meet your needs? Are you working with native SolidWorks models, or imported geometry? Are you make small tweaks or big geometric changes?


  • Rick Chin

    I wonder if some new functionality in SolidWorks 2010 would help you here. Mirror component was improved to aid in the creation and updating of right and left hand components … http://files.solidworks.com/2010datasheets/SolidWorks2010WhatsNew.pdf

  • Rick Chin

    If I understand the need you have described, you want to have multiple models in SolidWorks running simultaneously. And you want to ensure that the calculations on one model don’t impact the performance of another model. And everything should still be tied together, so a change in one window is reflected correctly in others.

    Is this correct?

  • How about some standard joints to be added easily to weldment parts. Would be useful for bolted connections where you have steel building structures and also for furniture design.

  • Rob Stupplebeen

    A tool that would help with maneuverability and estimated manufacture cost. Highlighting the critical for manufacture features so if they are not critical for the design they could be redesigned. This could then feed sustainability for manufacturing costs.

    On a similar vein a tool that would show what your geometry will look like when manufactured with a specific tool. Think internal corners are the bit radius.

  • Rob Stupplebeen

    First line should have read “manufacturability”.

    Spell checker has failed me again. Fixing spell checkers is probably outside the scope of this thread though.

  • Neil

    sort of but not really..I guess my vision is fairly abstract and my descriptions of what I mean are never that helpful :)..its more like multiple SW instances simultaneously like say where you have a part open on one pc and an assy open on the other and you can drag the part across into the other window space as though it were the same machine.I think there is an example of this in the recent SW tech multitouch demo where a girl moves a part across to the guys workspace. Another example is – you select a cylinder to mate on the part with one mouse and a hole in the assy with the other mouse on the second pc and it migrates across the displays but actually machine to machine.
    You would be able to change between environments like you do now if you had multiple windows open on the one machine except they may not reside on the same pc..
    I guess its sorta like a private network of 2 pc but with a sometimes virtual common interface.
    Say you are writing up design notes for the project on one pc while the other rebuilds, or working on making a subassy on one while the dwg for it updates on the other.
    Really I want to get around user and machine idle time or where you are locked out from doing something cos its busy.
    Probably I’m still not describing my idea well?
    If you are still interested I will do some more thinking about it and some diagrams or such and send them to you – email needed though

  • Scott Baugh

    That works great if you are mirroring inside of an assembly… it does not help us. We are needing a RH and LH full assembly with full details some mirrored some not. I have looked at 2010 and it does nothing for what we are doing. The ability to mirror an assembly without being inside the RH/LH assembly is what we need.

    Not sure if you have ever done machine design in automotive, but there are a lot of RH and LH assemblies and even more stuff when you do the tooling for the items and even more if you have than one testing station for the component.

  • Craig

    That is what a manufacturing or production engineer already does. There is simply no way to input labor/machine shop rates or overhead costs into a model that is not put thru a cad cam program, because it requires programming and setups to be calculated. That in itself is an entirely different and complex program. Talk about the golden cup, if you ask for it, why not ask big, right?

  • Rob Stupplebeen

    I was thinking more of a best guess estimate. Just like the Sustainability product has many assumptions this could also.

    For a traditional machined part the flow would be similar to: Determine the bounding box or cylinder that would contain the model. Use that and the material chosen to determine the material cost. The subtracted material would be charged a certain time and cost.

    For injection molded parts the flow would be similar to: Determine the bounding box for mold size estimates. Use the size of the part to determine the machining costs. Use the size of the part to determine the individual part costs and the thickest section to determine the cycle time.

    For the modifying of an existing geometry basically it will be fillet all internal or external corners with this radii.

    I will also be at SWW2010 including on Sunday if you would like to discuss further.

  • Marc Gibeault

    Stupid survey.
    I want reliable and useful software, I don’t want SW to know what I’m eating at lunch.

  • My request is one that I believe to be more of a “need” than a want for the future of SolidWorks.

    I am requesting complete and thorough use of Multi-Threading.
    Everything within SolidWorks should be written to take advantage of the full power of my CPU…not just one thread of one core.

    Our most recent computer purchase utilizes an Intel Core i7 975 running at 3.33Ghz. This CPU has 4 physical cores, and 4 theoretical cores….however only one will run at 100% inside of SolidWorks during normal modeling practices. The rest of the cores sit idle.

    Our assemblies are intensive and large, they have numerous parts with 100+ configurations, and other parts with custom hole patterns that take several minutes to rebuild, even on this brand new machine.

  • Lucas,

    Rick may be able to respond with a more detailed answer, but I’ve seen this come up before. From what I understand, this is not something unique to SolidWorks, but is common to all parametric design software, due to the highly-linear solving process involved. In other words, each part of the process depends on the part immediately preceding it being completed first. There’s no way to separate out operations that can run simultaneously. I think everyone in the industry would like to find a way to take advantage of those idle cores just as much as you would.

    That’s not to say that it may not be possible in the future and isn’t worth looking into. But that’s where everyone is right now.

  • dave

    how about quality control? each release is packed with more “features” and more bugs.

    design tables are a most basic need, yet are essentially useless due to all the added “features”. i’d trade their funtionality for the useless dimension pallete.

    try polling the SW users when coming up w/new features. if we want it then most CAD users will too. don’t add features that you have not polled.

  • Neil

    Well I guess I was suggesting a sort of multi thread soln in my answer except that it uses 2 pc’s as siamese twins. I think it is possible to rearrange CAD tasks across hardware/installs to be more effective rather than rethreading stuff inside one. As you point out much of the calcs/tasks are sequential.
    btw I forgot to say that in this case I outlined the user would be licenced to use 2 linked installs simultaneously rather than one main and one home one.
    Also I note that it would be possible to have say fluid computation or raytracing running in the background on gpu’s on one pc while the model was worked on in the other..and relaying the results back. Sort of multi tasking rather than multi threading..
    Anyway I thought this larger view was in the spirit of Rick’s enquiry although I concede it is a little radical.
    I see some folks here are upset about real world issues and dont want SW to contemplate innovative approaches 😉
    Good luck with your chosen mission Rick.

  • Rick Chin

    Thanks for the extra explanation Neil. Your scenarios make the idea clearer to me now. You sound like quite the multi-tasker :-). It is an interesting idea for two reasons … less individual idle time and new ways to collaborate with coworkers.

  • Rick Chin

    Guilty … No I have never done machine design in automotive.

    I’m guessing that you already tried putting your assembly into a higher-level assembly and doing the mirror at that new top level. Let me ask around the product definition team, and see what they say.

  • Rick Chin

    I agree that these are two good needs to address, especially the costing one.

  • Rick Chin

    That’s right, it doesn’t hurt to dream of the possibilities. Even if you can’t achieve them, it helps set you off in the right direction for new solutions, and it helps you to understand your priorities. I refer to this as the “absurdly ideal” (not referring to Rob’s suggestions).

  • Rick Chin

    Rob, send me your email and/or mobile so we arrange to meet at SWW (rchin@solidworks.com)

  • Rick Chin

    Matt’s response is right on. It is certainly something we want to do, but some of our core technologies make this difficult to accomplish. I do believe that we are making many parts of our current UI multi-threaded. This doesn’t solve the core regeneration times, but it does make the general interaction with the product more snappy.

  • Rick & Matt,
    I fully understand the linear aspects of the calculations. However, that is only one aspect of the software that I wait on.
    One of the common things I experience is the entire UI going half transparent (windows way of saying its not responding). When this occurs I cannot do anything with any portion of the software until it finishes whatever task it is doing.
    It would be great if the UI could be a separate thread from the rebuilding of the model, and the save process’ to be a separate thread. For the task pane and custom property tab to be a separate thread, for the PDM workgroup tab to update on a separate thread.
    Specifically, the pdm tab…if I am in an assembly and I select a component in the tree, it highlights in PDM…this is great!, however this also causes considerable delay when trying to right click on a component to edit or hide etc.
    That same delay is seen when I have my custom property tab active as it has to build the list of properties and I am frozen while waiting for it to do so.
    The workaround is that I cannot leave the task pane on either the pdm tab or the custom property tab if I want to work quickly and efficiently.

    There are other dialog boxes as well, and other commands or functions that would greatly improve the user experience if they were run on separate threads so that a person can still move around while the software is thinking.

  • Rick,
    Had another thought…
    This is the type of scenario I would love to have inside of SW.
    Separate the UI to it’s own thread, and each SW document to it’s own thread. Then, through this, allow a user to hit Ctrl-Q on a model, and while that model is rebuilding, switch to a different model and begin working on it…using a completely different thread.
    This would be the same as effectively allowing me to run multiple instances of SW at the same time so that when one is busy I can keep working.

  • Neil

    ok last post I promise.
    There is another aspect to it and that is maintaining designer involvement for effectiveness. If you have heavy CAD tasks happening you are waiting on the machine a lot. Your attention wanders perhaps to bad thoughts about rebuild and render times. It can be very disruptive.
    The wait periods may not be long enough to allow you to leave your seat and do other stuff. If you can arrange things to keep machines fed with tasks as you think of them you can be more applied and focused in yourself.
    I know myself waiting on a machine introduces a boredom and drudge factor that lessens my output. cheers

  • I would like to comment on the multi-threading aspect. Rick, you asked ‘What are the things getting in your way?’ Every time I wait, even for a few seconds, my train of thought is disrupted.
    Lucas talked about all cores working; However, I believe no waiting is a better goal. For Example: When a large assembly model is rebuilding, why can’t we zoom, and rotate that model in its old form while we wait? By requiring us to wait for the rebuild to complete before any view changes, you are disrupting our thoughts. Sure we would be viewing the model before the rebuild is complete, but we can position it so our next task is ready.
    Taking this one step further (and including Neil’s and Lucas’ ideas), while the large assembly is rebuilding, why can’t you select a component or sub-assembly and open that. Perhaps moving the newly opened sub-assembly to a different window, or instance of SolidWorks. could be on a different computer, or on a different monitor (for those of us who use two monitors.) If the newly opened sub-assembly has an in-context feature, then you would have to wait until the rebuild was complete before modifying the sub-assembly; Yet, if there is no in-context features, then the sub assembly should be modifiable from the moment it is open.
    This would be even more useful if you could queue a few specific commands. For Example: I have finished working on a sub-assembly. I rebuild the model, and while it is rebuilding, I add to the command queue save and close. Then switch to the main assembly. Because the changes will alter the main assembly, I rebuild and save the main assembly. Then select the next sub-assembly needing work, and open it. Now, under my no waiting concept, you could switch to the main assembly, and eventually switch to the third sub-assembly, all while the first sub-assembly was still rebuilding.

  • Rob

    Hi Rick,
    Seems like you have a long list of new projects to work on. But I got an idea that, I know I would use + lot of my customers would use. How about Unpack and Go? The reverse of Pack and Go?

  • Mr. West,
    I am sorry to disagree with you. The parent child relations in the models are very linear, and you cannot begin the child until the parent is done; However, once a parent is done, the children can be done simultaneously.

    The largest issue is: To accomplish this SolidWorks must first identify each parent of each feature, and then set up a ‘Watch’ to identify when all the parents for a feature are complete so that feature can be calculated, and to set up the data so multiple threads don’t attempt to modify the data at the same time corrupting the data. This not only adds complexity to the coding, it adds calculations to the rebuild times. Probably for simple parts the extra coding for multi-threading would cause an increase in rebuild time. The savings would be for the complex and slow rebuilds.

    The good news is: Most long rebuild times are on assemblies. Assemblies are far easier to build simultaneously. They have far more areas where simultaneous calculation can be performed. Simply rebuilding the parts and sub-assemblies which don’t have in-context features would be a huge time saver. The complexity and calculations mentioned above would still be required, yet the speed enhancement would be worth the investment.

    The reason why Rick should do this is: It is a game changer! Once SolidWorks fully utilizes multi-threading, the performance increase would be so significant, SolidWorks competitors would either be forced to duplicate this, or go out of business!

  • Neil

    Rick if you do this again can we have the forum thread arranged so the posts dont get narrower and narrower and off to the side please.Its really hard to read.

    I’d like to sneak in a p.s. summary:
    Having highly skilled (and paid?) designers minds in short repetitive wait cycles while a machine churns is inefficient and very disruptive of concentration and possibly adversely affects mood.
    There have been some bright ideas presented here to keep the user active, engaged and productive by altering how the software/hardware works in concert with a human natural workflow to best effect.
    The first step to better group effectiveness might be to focus on the individual’s experience.
    How to redistribute SW tasks across cores or adjacent installs might be something worthy of investigation.

  • Neil,

    The way this displays is a function of the Typepad interface. I don’t have any control over the way comments display other than to go to a completely non-threaded view, which would be confusing for a post like this.

    You all could consider taking this to the actual SolidWorks forum, which is set up a little better for a running conversation than a blog entry is.

  • Bas

    Hi Rick,

    What i think would be useful is a way to create a bunch of specs for a project, and use these specs to create a rough planning (amount if time you expect to need to complete a (sub)project). What would be even nicer is if you have a way (timer for instance) which records the time spent on parts/assy’s/drawings. Also the engineer should be able to fill in the amount of time he thinks he needs to finish the model.

    If you can do this than someone can manage some sort of planning (you are not always interested in the amount of time you spend on a part, but rather the time you need to finis the part). In the IT world there are methods like scrum (http://ses-ppts.sourceforge.net/) that do this sort of thing. Why not in the mechanical engineering?

    Regards, Bas

  • My reply to you prompted me to give more thoughts on this issue, which eventually became an article, so I think I owe you a drink or something. 🙂

    The resulting article, “Balancing Cost, Analysis, and Sustainability,” ran in last week’s newsletter: http://www.deskeng.com/articles/aaatnz.htm

  • Derek

    Mark, that is what I want to see also. Mostly for bolted steel structures. I am involved with plant design. I’d like to see SolidWorks thinking through how such structures are best designed – parts or assemblies, and then setting up the automation of adding bolted connections.

  • bob oakley

    Hi Rick,
    One of the most frustrating things in SW is the message ‘….failed due to geometric conditions’. This has to go down as being one of the most useless messages ever!
    The only way around the problem is trial and error, SW give no indication where the problem lies.
    If the problem can’t be found I have to load the files into Unigraphics which then gives an indication where the problem is.
    This takes time and causes delays.
    Why can’t SW give an indication of the problem. Just a big flashing arrow would be a help!

  • Scott

    So what did your product definition team have to say?