Sunday, January 30, 2011

Download/Build/Install Code

This part of the project has been one emotional rollercoaster. Last year, in CSCI 362, I installed Ubuntu using VirtualBox. This semester I figured I would want to install it using Wubi so that I could boot into Ubuntu and be able to see everything in a full screen view instead of the small window that VirtualBox provided.

Everything appeared to be fine, Ubuntu was installed and I could choose to boot into Windows 7 or Ubuntu. However, going through the updates for Ubuntu, there was one for grub -- Ubuntu's boot manager. I wasn't sure what I was doing or what I was updating so I just continued and allowed the update. WELL, grub seemed to have overwritten Window's boot manager. When I restarted my computer after the updates, all I saw was "error: no such device <letters/numbers> grub rescue". I couldn't get into Windows or Ubuntu anymore. I couldn't do ANYTHING on my computer. I was really afraid that I had lost everything.

I was trying to research on forums on how to fix it and the solutions I saw were to boot from a Windows CD. Thankfully, Brandon and Jordan helped me fix this error. We booted from a Windows Recovery CD and fixed Window's boot manager so that I could see both OS again. Phew.

Next I needed to download the source code for the project we will be working on, Fortune Hunter. Jaime has already gone through this process and posted some steps for everyone else in the group on our group wiki. I was able to go through the first two commands but I'm having some trouble with the last one. Right now i'm getting an error:

Initialized empty Git repository in /home/staci/CSCI462/fortunehunter/.git/
ssh: Could not resolve hostname git: Name or service not known
fatal: The remote end hung up unexpectedly

So I'm going to try to research some to see if I can figure it out and if not, I'm going to talk with my group tomorrow to see if anyone else experienced this or know how to move forward. I will update on my progress soon.

Thursday, January 27, 2011

Learning About Subversion

I have never used subversion before. Well, while working at Hawkes Learning Systems I have had some experience using a version control system. Currently Jordan, Neil, and I are working on a new website for HLS and we have a shared environment. We would need to right click on the file and choose "Check out for editing" and then when we were done making changes, we would click "Check in".

However, I still felt like this was all new to me. After installing Subversion, I realized I needed a client to actually do anything. I googled "subversion client on windows" and saw some similar names that I had seen in my classmates' blogs. I chose TortoiseSVN. Wasn't sure what to expect to see after installing it or where to start. I saw the icon for the program in my Windows Start Menu so I just clicked on it to open it. Obviously that wasn't the right thing to do because a window came up explaining to me that TortoiseSVN is a shell extension and that it is integrated into the Windows explorer. Then it proceeded to tell me to "read the manual!"; it was in fact underlined. So, now I knew to go to a folder in Windows explorer and right-click in order to see TortoiseSVN commands.

I felt extremely accomplished when I was able to add a new folder and file to the 462playground because I thought I was going to have to go to class without an experience to talk about.

Monday, January 24, 2011

Researching Our Project

Our next task was to research a little further into the history, members, and goals of our project, Math4 Project. This seemed easy initially because I saw so much information in their Wiki. However, after having to read all of the information, I found my self lost in numerous opened tabs and windows. I was following link after link but somehow just circling myself around to the same information. I think I see the hierarchy now in that it all began with OLPC which used the Sugar OS. Sugar branched off into Sugar Labs, a new project to help develop the Sugar OS. From Sugar Labs came the Math4 Project.


The goal of Math4 is to provide activities that correspond to the learning objectives of a 4th grader's mathematics curriculum. The creators of Math4 have chosen the Massachusetts Curriculum Framework for Mathematics as their guideline for activities. The idea is to have these open-source activities run on the XO laptops to help underprivileged children learn math. The creators also stated that they hope to have a least 4 activities per objective because research shows that different children learn in different ways and having a variety of activities may provide a wider range of accomplishing this.


Currently there are two organizers for Math4, Greg DeKoenigsber and Karlie Robinson. DeKoenigsber is the programmer who has experience working with the Fedora project but is currently working with Sugar Labs. Robinson is a recruiter and liaison for Math4 since she is not a programmer.


As far as contributions to Math4, there are some activities that are currently in development that we could try to join or we could always help resolve bugs found in their Bug Tracker.
More details to come..

Thursday, January 20, 2011

IRC

I have never used an IRC before but it seemed pretty easy to join one. I just installed the Mozilla Firefox add-in, ChatZilla and was able to click on one of the links in the Sugar Labs wiki to connect me.

There wasn't much action in the IRC but I also saw that Sugar Labs schedules meeting times for contributors to join the IRC to chat so I will just have to try to join in when they have one of their meetings.

Our group created a group email address so that we could join Sugar Lab's mailing list. We all have forwarded emails from our group email to our personal email accounts so we can all stay updated.

The Cathedral and the Bazaar

I think reading The Cathedral and the Bazaar was great because Eric S. Raymond is speaking straight from experience. He wanted to test the theory of open-source projects to see what Linus Torvalds did right when he created Linux so he began his own project by contributing to Popclient which later became Fetchmail.

I think Raymond really sums-up open-source development with the following:
"While coding remains an essentially solitary activity, the really great hacks come from harnessing the attention and brainpower of entire communities. The developer who uses only his or her own brain in a closed project is going to fall behind the developer who knows how to create an open, evolutionary context in which feedback exploring the design space, code contributions, bug-spotting, and other improvements come from from hundreds (perhaps thousands) of people."

He also provides many great tips and lessons that are necessary for the open-source development process throughout his essay. Even though I find all of his thoughts to be very true, I still feel like there are two conflicting ideas. Great projects come from an open-source environment where many people effectively contribute and test the code and then the idea that too many people working on one project can just prolong the completion or success of the project. Raymond stated that "Brooks's Law is founded on the experience that bugs tend strongly to cluster at the interfaces between code written by different people".

Tuesday, January 18, 2011

The Beginnings

Today in class each group presented briefly on why they chose each of their top 3 FOSS projects. There was another group that had the same top three FOSS projects as our top three picks. Each group is supposed to be working on different projects but since Sugar Labs seems like so many people could contribute to the project without overlapping, Dr. Bowring is letting both of our groups work on it.

After we knew we were going to be working with Sugar Labs, we continued looking for how we could begin to contribute. We saw that they use an IRC and have a mailing list. Thats when we decided to create a group email account so that we all could be on the same page with this project.

We also found a more specific project to contribute to within Sugar Labs called the Math4 project. The Math4 project creates software that helps 4th graders learn math. We hope to be able to create an activity for this project.

Thursday, January 13, 2011

Choosing a FOSS project

Today our group decided on the top three FOSS projects that we would want to contribute to. We made our choices fairly quickly because we all agreed that Sugar Labs, One Laptop Per Child, or OpenOffice for Kids would all equally be a great project to work on. We were drawn to the idea of an educational project that could be beneficial to children. Hopefully we will be able to work on the Sugar Labs project because it seems like there are so many different directions we could go with this project. It looks like we will find out on Tuesday.

Wednesday, January 12, 2011

First Day of Class

Tuesday was the first day of CSCI 462. It was exciting to be back from the break and to get started with our new projects. Since everyone has pretty much had the same classes over the past year or two, it was easy to transition into new groups from CSCI 362. My group, 4's Company, is Brittany, Jamie, Ryan, and myself. We're all going to look over the list of projects and pick out one or two that we like, then when we meet again we'll figure out our top three choices.

After class I was able to set up my blog, join the class wiki, and successfully register for POSSCON. I hope to be able to attend POSSCON both days.