Team:Wellesley Desyne/Tips Tricks
From 2013.igem.org
Wellesley HCI iGEM 2013
Tips & Tricks
This section is intended to help future iGEM teams with troubleshooting widely used laboratory protocols. This page addresses different situations/issues we encountered this summer and possible solutions.
Microsoft Surface Development
- Microsoft's intro to Surface development
- Intro to building a multi touch application
- Seeing examples of applications is immensely helpful to understand how to implement your application. Microsoft has CodePlex, which allows you to see open source projects and download open source software.
- In the process of building your application, you’ll most likely need to pull information from the iGEM registry for specific parts. Make use of the Registry API, which allows you to extract information about a particular part efficiently.
Surface Development is built off of WPF (Windows Presentation Foundation), which provides the developer with a standard model to create rich and interesting User Interfaces. Definitely familiarize yourself with WPF if you want to develop for the Surface! Intro to WPF, Another WPF tutorial
The standard model mentioned above is MVVM, which is based on the model-view-controller model. Understanding this model is crucial to understanding how databinding, among other crucial concepts, will work in your application, and how to organize the architecture of your code. A brief overview of data MVVM can be found here.
Stack Overflow is a great site, both for debugging and for learning more about development. Don’t overlook this resource! In particular, check out this particular Stack Overflow for tips on starting WPF development.
The basics of programming in C# (whether you need to learn or just brush up)
Z Space
- Unity3D (http://unity3d.com/)
- Googling things helps with developing in Unity
- zSpace offers little to no support for their machine so if you want to know something you should probably either directly email them or post it to the forums on their website.
- I made a guide to setting up zSpace in a new Unity project. I would recommend looking at that before starting anything else.
- The structure of the program is very important… if you put things in the wrong class, it could cause a lot of problems later. Think logically about where methods and objects belong before writing too much code.
- Remember that there are objects that you create dynamically(in code) and some that you create in Unity. You must apply scripts to the objects you create in Unity (even if they’re invisible) or else nothing will happen)
Web Development
- W3 Schools - html/ css/ javascript reference: http://www.w3schools.com
- HTML5 animation demos: http://www.hongkiat.com/blog/48-excellent-html5-demos
- Twitter API: https://dev.twitter.com
- Google App Engine: https://developers.google.com/appengine