Open main menu

CDOT Wiki β

User:Asahota1/FSOSS 2011

< User:Asahota1

FSOSS 2011- Free Software and Open Source Symposium

Introduction

FSOSS is an event which offers presentations and workshops about the latest trends in open source used in schools, labs and industries. The goal of the symposium is to explore how open source, open standards, and open content are changing technology, the web, the media and arts, education, and business.

Being a volunteer at FSOSS I got the chance to watch four presentations. But the two main presentations I was interested in were “Building a Commercial Game Using Processing.js for Cross-platform Delivery” and “XB PointStream: Rendering Point Clouds with WebGL”. I will be writing my research paper on these two topics as I know the presenters Daniel Hodgin and Andor Salga, and it will better to analyze my report on their thoughts about open source. The other two presentations I watched were “Unity and GNOME 3” and “Popcorn.js & Popcorn-Maker”.

I'm going to discuss the two talks and then I will compare the two talks and finally give my own views on open source and a summary of my experience at FSOSS.

Building a Commercial Game Using Processing.js for Cross-platform Delivery

This presentation was about using the Processing.js libraries and how this project created a cross platform, plugin free HTML 5 game that requires no install time. Processing.js is a programmer and artist friendly language that enables the creation of graphically complex interactive applications which can be instantly ported to the web and any mobile devices.

Jeremy Friedburg, one of the founders of Spongelab Interactiveintroduced the company and the project of dragon breeding game. Spongelab Interactive is a leader in advancing the integration of cutting edge technologies for teaching and learning purposes. Spongelab Interactive builds their own products and offers custom production services for the global education community. Their unique approach around integrating educational design with advance web & gaming technology is planting the seeds for continued innovation of advanced communication and education products. He told that their mission is to educate students in the sciences by building content-rich immersive teaching tools designed around discovery-based learning that are accessible to educators and learners at school and at home.

Daniel Hodgin, the project manager and David Perit, the game designer of the team gave the background of the project. Both the developers talked about Processing and Processing.js and the development of the game and why these languages were used for the game. Both projects are Open Source and free to use and contribute to. Processing was originally developed at the MIT Media Lab by Ben Fry and Casey Reas. Processing.js is a port of the Processing language to JavaScript using the HTML canvas. Processing works on Windows and Mac, whereas Processing.js works on Firefox, Chrome, Internet Explorer, Opera, Safari and mobile browsers that support the HTML5 canvas element. Processing.js does not require a plugin to be installed. This allows it to run in environments where plugins cannot be installed like mobile, business and public. As it is open source it has the ability to change things to work the way you want. There is full control and access to the development community to contribute and there is no licensing cost.

Daniel also talked about moving away from Flash as it will not work on Apple devices and the company Spongelab wants to reach the mobile iOS audience and its instantly portable. Then Daniel talked about developing the game. When Spongelab delivered a game design document outlining features of the game and how the game would progress and play, they started creating the storyboards of what screens would look like and how they would tie together. Then they programmed the screen structure and navigation and once the basic screens were put together they began programming game play mechanics and features. They wrote code to mimic the JAVA interaction with audio for the HTML5 Audio element. He told that when the game came together they began testing for bugs and performance issues. From this, they optimized load times and animation speeds. Once optimizations were made they did basic play testing to further improve the game play mechanics and the beta release of the game went out in early October. Lastly David showed a demo of the game which showed how it works and its different features.

The background of the three speakers is different from each other. Jeremy has a doctorate in molecular genetics and biotechnology from the University of Guelph. He is involved both in public and private scientific education outreach programs, teaching about all aspects of biology. He has consulted, designed, and developed interactive education assets for audiences from textbooks to museum style exhibits. It was interesting to know that he is a science major and is working in the IT world. But Daniel and David are both Seneca alumni and work at Center for development of open technology (CDOT) at Seneca College@York. Daniel was in the BSD program whereas David was in CPA. Jeremy selected the CDOT team and was happy to work with them on the project.

Briefly, the presentation was interesting and it helped to understand that how open source could be applied in business. The surprising thing was that, the dragon project is not open source and is going to be sold for profit, but the language which is processing.js used to build the project is open source.

XB PointStream: Rendering Point Clouds with WebGL

Andor Salga presented on XB PointStream. This presentation was to introduce WebGL which allows hardware-accelerated graphics on the web and the XB PoinStream’s capabilities. Also the Seneca’s Center for Development of Open Technology has partnered with Arius3D to develop XB PointStream, an open source JavaScript framework for streaming and rendering point clouds (3D images) on a web page. Andor also showed us interesting assortment of demos and 3D graphics.

Andor talked about Arius3D. Arius3D creates imaging solutions that allow organizations to capture and share unique physical objects in digital form. Arius3D is a type of 3D object scanner and is based on 17 years of research by the National Research Council Institute for Information Technology. Arius3D offers 3D imaging systems and services as well as image licensing from a growing 3D image library. Arius3D digital 3D Images are used in virtual museums, feature films, video games, education, marketing & advertising, product design and manufacturing. Then he talked about PointStream 3D ImagePlayer for Windows. The problem with this is that it works with the Active X Plug-in and only works with Windows and draws 3D point clouds in IE. It requires installation and requires permissions. He told that why he used points and what a point cloud is. He later talked about polygons and then the difference between polygons and point clouds. The most interesting part was when Andor talked about the solution to the problem he mentioned above. He talked about XB(Cross Browser) PointStream which is an open source technology. It emulates Aruis3D's PointStream and streams data using JavaScript and streams and draws point clouds using HTML5. Thus Andor is working on the open source cross browser PointStrean using WebGL which is a subset of OpenGL. It gives direct access to the graphics card and is supported by all major browsers like Firefox, Chrome, WebKit, Opera Next. Then Andor talked about some XB PointStream features which are parsers, shaders and cameras. Parsers-ASC is easy to parse and easy to edit, whereas Parsers- PSI is not so easy to parse ad it is four to five times smaller than ASC. Shaders are the programs that run on GPU and there is no fixed function pipeline. Atlast, Andor showed a few demos of how this works and we can see a 3D image with PointStream on certain images using 3D glasses.

Andor is a Computer Programming and analysis graduate from Seneca College and currently enrolled in the Bachelor of Software Development Degree. He works at CDOT as a research assistant developing open source WebGL libraries such as C3DL, Processing.js and XB PointStream. It is also interesting that Andor works on this project on his own, whereas there is a big community of people working on processing.js. Thus, the presentation on XB PoinStream was interesting.

Analysis of each speaker's views on open source

The most obvious comparison that can be observed from these two talks is how new strides are being made in the ability to create highly enriched content in the field of IT. The ties of these two projects to open source is also something to take notice of. The main difference between the two talks was that the commercial dragon game using processing.js is not open source and a person needs to buy and obtain a license to use it. Whereas XB PointStream, is an open source product. Thus Spongelab Interactives wants to earn profit by using open source and Arius3D does not want to sell the software but uses it to create its own 3D PointStream images. Also in the Popcorn.js and Popcorn-Maker presentation by David Seifried, he talked about the features and functionality that the Popcorn.js library can provide to users and how the library allow film makers to better showcase their videos. Besides that of these projects rely on an open source community to help contribute, test, develop for, and maintain. Both presenters focused on the importance of community in open source projects, the ability for people to give back to the community to keep it healthy, and on how taking part in the community helps raise awareness for these projects which will ultimately create a richer and fuller web experience for everyone.

My views on open source

My view on open source and after attending the presentations at FSOSS is that open source license is primarily aimed at developers while the closed source license is aimed at the end user. Open source projects are built and maintained by a network of volunteer programmers. Open source is the best way for business like Spongelab to achieve greater penetration of the market. Open source is a good tool to promote a company's image. Since open source software is open, defects and security flaws are more easily found. Also open source gives great opportunities to students for experience and also it gives people a way to mold their favorite open source apps into exactly what they want in an application. Open source projects has given students like Daniel, David and Andor experience in the programming field which is not easy to get in the closed source. Everyone can be part of the open source community and be a part of the programming process as well. Thus open source is flexible and more reliable as it has a lot of independent programmers globally testing and fixing bugs of the software. I also learned from the FSOSS dragon game presentation that we can also make money with open source.

Conclusion

Overall, my experience with FSOSS presentations was amazing. At the end of the presentations we got to talk with presenters Andor and Daniel and came to know more about their projects they are working on. It was interesting to learn that an open source community can comprise of once person or a big team. I also learned how Popcorn.js library allows film makers to better showcase their videos and makes it possible to have the video drive the content of a webpage. Also, open source is not free all the time, and companies like Spongelab can make profit using the open source languages like processing.js. In conclusion, I learn that open source is a community for free thoughts and also a potential place for profit for a business.