Free Software and Open Source Symposium
Introduction
This was my first time attending FSOSS and I had a great time. I had always thought about attending this event in the past, but I never got around to doing it. Seeing as this year I was taking an open source course and had learned such great things about the open source community, I thought attending this event would be a great learning experience. I arrived at the event quite early and met some very friendly people. I even met some people for our open source class that I either hadn’t met or spoken to in a while and we discussed our open source projects. It was really interesting just talking to some other people about what they were working on. I attended quite a few talks throughout the event, but I am only going to summarize two of them. Then I will just give a brief run through of a few other presentations that I attended that I found interesting. Then I will compare the main presentations I attended, give my views on open source and conclusions from the event.
Processing.js
The first talk that I attended was about processing.js and was presented by Dylan Segna and Andrei Kopytov, who work at CDOT. We learned during the presentation that they are creating a game that will be in beta soon that will teach math to younger children. I had heard brief talks about processing.js in the past but this talk was more in depth. They started off by providing the audience with a brief history about processing.js. They mentioned how processing.js was derived from processing and it was meant to bridge the gap between artists and programmers. We learned that processing.js was created by the creator of jquery, who is John Resig. The talk then went into more detail about functionality in processing.js. Processing.js was built for 2D graphics, however 3D functionality is currently being added. There is matrix functionality and scaling as well. The mouse is supported when processing is being used, for example when the mouse is being clicked or dragged. There is also support for a variety of images such as PNG and Jpeg.
During the presentation they presented a game engine that was made by Pomax. I found this very interesting because I have spoken to Pomax on irc and knew exactly who he was talking about. I didn’t know Pomax had created this great game engine and was really nice to know. They then demoed their game that they are making and mentioned the benefits of processing.js, which was that you can generate HTML, CSS and Javascript right inside it. They also told us the shortcomings such as debugging the code in the browser. They showed an example were they purposely made an error and then used Firefox’s debugging tools to try and fix the issue and the browser reported that there was a an error on a line they didn’t have in their code. They suspected that the error reported may have been some code deep in the browser, but they said they really weren’t 100% sure why that was happening. Also during the entire presentation they were really trying to stress that using process.js was not hard to do even though it looks complicated. Dylan mentioned that he was hosting the processing.js workshop on Thursday and people with no experience were doing some really good things in only about three hours of learning.
From the presentation I felt that Dylan and Andrei were really enthusiastic about open source. I know they realized that the subject they were talking about seemed complicated, especially to the novices in the room, but they kept trying to stress that it was not that hard and that you can get all your questions answered on IRC as long as you are patient.
WebRTC with BigBlueButton
Just before lunch I watched a very interesting presentation on WebRTC in BigBlueButton. I had not heard about WebRTC in the past, but I had heard about BigBlueButton because I am currently taking an online class where we used this software to have an online class discussion, so I was really interested in learning more about it. Since the presenter couldn’t make it, he gave the entire presentation through the BigBlueButton software using Chad, who is in student who works on this project in cdot to communicate questions people had for him. I thought this was a great way to do this presentation because it really showed how great and useful this software really is. The presenter was Fred Dixon, who was the product manager for BigBlueButton and his mission for this software was that everyone should be able to use high quality software for online learning.
Once the presentation got started we could see Fred on his webcam and he could see all of us through the webcam setup in the room. He showed us how he could display a slideshow to us and mark it up to present more stuff to us. He explained that this software could be setup by anyone for free on their own server. He said that at this point they only suggest that you host a group of 25 or less just because they know people don’t read instructions so based on current hardware most people have to day that would be an ideal number to not have any issues with. He explained how the programs front end is flash based because that’s what webcams work best with. He then explained how the program records the video and the audio from the entire session and that was possible due to two open source projects that were red5 and FreeSwitch. Red5 was used for the video and FreeSwitch was used for the audio.
Fred then provided us with some details about the community behind BigBlueButton. He mentioned that there were 1527 forks on github and counting of people contributing to BigBlueButton. He said that there were over 1500 people currently on the mailing list for the projects and he was very happy with that. We learned that the project won at Mozilla Ignite and was featured on The White House Blog. It also won the best open source project of 2013. He then provided us with some details about companies currently using this software. There is a company called VirtualWag that uses BigBlueButton to provide 1 on 1 dog training to people from home, which I thought was amazing and wouldn’t have thought this software would be used like that. He then told us about future plans to make the software all HTML 5 based and include Ipad support. He explained that the UI needed improving, specifically for people with more than 1 audio device plugged in. He mentioned that WebRTC was the peer-to-peer protocol that allowed all of this to be possible, but didn’t elaborate too much on it.
Overall, this was a really great and interesting presentation to see. I think the fact that the speaker couldn’t make the presentation in person and did the whole thing using BigBlueButton made the whole presentation better. I really got the sense that Fred was very big on open source. He had even made some jokes about the software not costing any many that were pretty funny. I felt like he wanted more people to contribute if they liked what they saw. He mentioned how some people want to help, but don’t end up contributing and some do. I got the sense since he mentioned that two open source technologies were responsible for this whole project that he was really into everything being open source and thought that more things should be. He made a point that he worked at another company and at the company when they worked on a project and released software everything had to work completely perfect before it could be released. Since this project was entirely open source he said the software could be released with the features they believed people wanted most and then add on features later. I believe he was implying that open source give you a lot more freedom compared to these closed source projects.
Other Presentations
I also went to a presentation about ARM chips and Open Source Graphics. The ARM presentation was quite technical and very hardware based. One of the great things about this presentation was that the presented were expecting to be speaking with people that new little to nothing about ARM, but over ¾ of the room knew a lot about ARM. This lead to a lot of great discussions throughout the presentation and some things the audience knew more about then the presenters. Some of these discussions even got a little heated with people having some different view points, which was pretty interesting to watch and be apart of.
The other presentation I went to about Open Source Graphics was also very interesting. The presenter mentioned how he grew up with GIMP, which is open source and how a lot of people use Photoshop. He made a point that if you try and get a tutorial on Photoshop you might get 67 results, but for GIMP you would get 37. He stressed it might take a little more time in GIMP, but that it could be done. He showed a lot of computer graphics and stressed how it was heavily math based. Everyone was really impressed and it created a good discussion, with the audience asking how easy it was to do something like that. He didn’t really provide a detailed response, which made me believe that is quite difficult to pickup compared to a lot of other development.
Overall, these two presentations presented me with a lot of things I didn’t know about and that I would be really interested in doing some more research on in the future.
Comparison
When comparing the two presentations that I discussed above I really felt that they were both really pushing open source. The first presentation I went to about processing.js did it a little more explicitly by just mentioning IRC and going into a lot of history of the technology. I felt Fred Dixon pushed open source a lot more and really mentioned all the advantages using/creating open source technology over closed source software. These being that when you are developing for a company everything has to be perfect before the software is released because people are paying for it and it has to work great. Then with open source since no one is paying money for the software they can focus on features that they or the community thought would be important, release the software and then get more requests or feedback and implement the new ideas.
My Views
Being in my fourth year at Seneca I have heard the word open source by a lot of different people, but no one has really gone into much detail about it. Taken this course this year has really showed me what open source is and what it has to offer because I really didn’t understand what it was all about until I took this course. I think it is a great thing that there is a community where you can go an ask questions at any point and receive prompt feedback. I also like that code is easily accessible, so there is a lot of stuff you can look at for help or even use in your own code. I also really like the fact that everyone is very friendly and eager to help. They also realize that people have a variety of experiences and are just happy to have more people helping with bugs. So far I have really enjoyed working on my bug and meeting many people on IRC. I think that this work is really enjoyable and when you are doing something you like it doesn’t even feel like you are working. I think this is really what open source is all about.
From these talks I felt that my feeling and views on open source was the same as the presenters. As I mentioned above everyone felt very welcoming and was eager to get everyone involved with their projects if they were interested. None of them bashed closed source projects, but they really showed some benefits that I didn’t even know about as to why working on open source projects is a lot better compared to closed source projects.
Now I also know from my experience with the bug I am currently working on it can also be a little tough sometimes to get answers from the community because everyone is very busy working on their own bugs. It can also be intimidating for new people as well because it is such a different environment to work in. Even having been in this class for almost 3 months, I still feel like there is so much more to learn.
Overall, I feel that open source is a great opportunity for anyone to get into just because it provides a great way to meet new people, become a better programmer and learn about new tools. From first hand experience there are many new tools that I have never heard of that people have told me to install when I am working with them on IRC. These are tools that we would never see in other classes and are very useful tools that should be more widely used.
Conclusion
Overall, I had a good time at FSOSS. I enjoyed the presentations I attended and the discussions that occurred during the presentations. If there was one critique I had about FSOSS it would be to not have the presentations overlap. There was always three presentations going on at the same time and the pamphlet given only provided a brief description of each one, so you just had to choose the one that sounded the best. I think it would be better if they even could run later or possibly go an extra day just so there would be an opportunity to go to all of the presentations and not have every presentation back to back.
Another possibility could be to have a little introduction before the first presenters start where all the presenters would come to a main room and just give a brief introduction about what they were going to be talking about just so the people who weren’t as familiar with everything thing would know if they would be interested in attending that presentation or not.
Just to wrap everything thing up, I’ll conclude by saying that I enjoyed my first time at FSOSS and would like to attend next year. I really do hope that they are able to fix the structure of the presentations next time to allow people to see more presentations. I know there is a lot of people attending and some people coming from far distance and it just seems that being able to see as many presentations as possible would be a nice thing. It would also give people a chance to go to a presentation they might have never thought of attending and wind up really enjoying it.