Jeremy is The 3D Web Coder and The Building Coder. He works with the Autodesk APIs and Web Services, providing developer support, training, conference presentations, and blogging on the Revit API and cloud and mobile technologies.
He joined Autodesk in 1988 as the European technology evangelist driving AutoCAD application development in Europe, the United States, Australia, and Africa. He is a co-founder of ADGE, the AutoCAD Developer Group Europe, and a prolific author on AutoCAD application development. He left Autodesk in 1994 to work as an independent HVAC application developer and rejoined the company in 2005.
Jeremy graduated in mathematics and physics at Marburg University in Germany. He worked as a teacher and translator of both computer and human languages, then as a C++ programmer on early GUI and multitasking projects. He is fluent in six European languages, vegetarian, has four kids, plays the flute, likes reading, travelling, theatre improvisation, yoga, carpentry, dancing, music, mountains, oceans, sports, and especially climbing.
Here are a somewhat incomplete and out-of-date CV and snapshot of what I did in 2013.
Jeremy can be contacted by email and @jeremytammik, but please don't expect him to provide support.
If you have questions on Autodesk product usage, customisation or programming, please visit the appropriate Autodesk community discussion forum.
For questions on the Autodesk View and Data API, you can go straight to the dedicated Web Services API → View and Data API discussion forum.
I always prefer to discuss everything I do in public and enable the entire community to contribute and share when possible.
Therefore, I hope you will not try to get in touch with me directly through any of these other private channels:
Copyright (c) 2015 Jeremy Tammik
All material provided by The 3D Web Coder is licensed under the terms of the MIT License:
Permission is hereby granted, free of charge, to any person obtaining a copy of the software published on this blog and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please note I provide no guarantee whatsoever that anything published on this blog is useful or even legal. Some of the projects discussed here make use of experimental or risky workarounds not covered by the officially supported usage recommended by Autodesk. They are by no means production-level solutions and should not be used as is for production use. Some code presented here is just a test showing some aspects of possible uses of the Revit API and other programming functionality. Nothing published here is guaranteed to work under any conditions whatsoever. Some explorations making use of undocumented aspects may not even be legal. If you make any use of anything here, you are doing so at your own risk. You are responsible for yourself and all the software you create.