If you are programmer you will appreciate the process if you see it as geometry. Design is a bit a religious thing. he he.
1. Shape determines fabrication & material: Flat objects (including faceted, folded) can be best prototyped using paper/boards/sheets. Simply curved objects (cones, cylinders) aka single curvature surfacing & developables can be also done using paper. Complex forms aka double curvature requires either complex fab such as rapid prototyping, molding, pressing etc or rationalization (eg take a sphere cut it in layers, cut out flat sheets, glue, sand ie downgrade to previous option).
2. Drawing: You can use either a mesh 3d editor: sketchup, blender, or NURBS / subdivision surfacing: rhino, solidworks, maya (download demo where available). This is only for the intuitive part of making the form. Even though simpler I would suggest avoiding 2d apps as they tend to be tough ie misleading for physical objects (fine for plans and pcbs)
3. Fun: code it! You need OpenGL + you favorite language. Generate a polyhedral model, flatten it send to printer, assemble. Or just write out an STL file (super simple text format) and send it to a 3d printer (by far the easiest method for noobs). If you want cheep use z-corp powder puff machines (ceramic-ish), if you want an actually functional prototype use SLS (plastic)
4. Find a product designer or architect (the building kind) and work together =)
1. Shape determines fabrication & material: Flat objects (including faceted, folded) can be best prototyped using paper/boards/sheets. Simply curved objects (cones, cylinders) aka single curvature surfacing & developables can be also done using paper. Complex forms aka double curvature requires either complex fab such as rapid prototyping, molding, pressing etc or rationalization (eg take a sphere cut it in layers, cut out flat sheets, glue, sand ie downgrade to previous option).
2. Drawing: You can use either a mesh 3d editor: sketchup, blender, or NURBS / subdivision surfacing: rhino, solidworks, maya (download demo where available). This is only for the intuitive part of making the form. Even though simpler I would suggest avoiding 2d apps as they tend to be tough ie misleading for physical objects (fine for plans and pcbs)
3. Fun: code it! You need OpenGL + you favorite language. Generate a polyhedral model, flatten it send to printer, assemble. Or just write out an STL file (super simple text format) and send it to a 3d printer (by far the easiest method for noobs). If you want cheep use z-corp powder puff machines (ceramic-ish), if you want an actually functional prototype use SLS (plastic)
4. Find a product designer or architect (the building kind) and work together =)
hope that helps