Thursday, March 21, 2013

Line 16: Preparing for POSSCON

So POSSCON is just around the corner, and while I am a member of Team Obsidian, I also have my own interests in the talks that will be happening. I have been browsing the POSSCON website, looking at speakers and the talks they are going to give, trying to decide who I should go hear. The goal of course is to pick topics that interest you personally, and to be able to interact with the speaker in a meaningful way after the talk.

With this in mind, my first pick for a talk was incredibly easy. Roel Van de Paar will be giving a talk entitled From Crash to Test Case: A Debugging Primer. He is a QA lead at Percona, which is a MySQL services company. His talk will focus mainly on what to do with the information you receive from a server crash, and how constructing test cases will allow you to quickly isolate and repair the problem.

Since I have been working on a Unit Test Implementation Generator for nearly the whole semester, I am eager to see what an industry professional like himself  has to say about constructing useful test cases. I am even more interested in what he will think of Obsidian however. It is my hope that his talk will prove both informative, and give me some new insights into Obsidian. My best case scenario is that he is able to impart advice about how to further improve the project, which will give us some direction to take it in the future.

The next talk I want to attend is Javascript: The Language Every Developer Should Know, which is being given by Tom Wilson. He is the president of Jack Russell Software, which is a local company that develops mobile and web applications for HealthcareIT. I am interested in this talk mostly because of the company's relative proximity to me, but also because I know very little about Javascript. I hope to go to his talk and become more educated on this language, especially if it is truly one that every developer should know.

The last talk I am going to is called How Open Source Helped Win the 2012 Election, and it is given by Harper Reed. He was the CTO on Obama's 2012 campaign, and is also the CTO for Threadless, a democratic shirt printing site. I am interested in his talk because of its proclamation of helping win the 2012 presidential election. It is really cool to think that community driven software has such a large impact on the world. I hope to talk to him more about his experiences during the campaign, and working for a website that I have used on more than one occasion.

Most of the conference though, I will probably be attending the Obsidian table, collecting members for our Google groups, and passing out stickers to attendees. I look forward to meeting all of the speakers, but I am personally more excited about meeting anyone who comes by our table and introducing them to the project I have been working on.

Monday, March 18, 2013

Line 15: Release early and often

Last time I spoke about the large work session that we held last Friday, So I guess I will give an update on that.

We gathered at 3pm that afternoon in the conference room, and we worked there for about 6 or 7 hours. We made decent progress on many aspects of the project, and the fact that we were surrounded by our group members was actually very good for productivity. We were able to ask questions of the group and get immediate responses, which was a tremendous time saver.

We got the wiki into good condition, and then were able to have a mini meeting about what changes needed to be incorporated on each page of it. With the feedback, we each had something to concentrate on for the next week.

We also planned out our trip to POSSCON more, and came up with a good layout for the poster. It features an easy to understand graph that shows what each case Obsidian recognizes to generate test implementations for. We will be focused on having that finished in the coming days.

When we met on Monday night, we basically hammered out a bit of the poster, rearranged some wiki pages, and added a Contact page so that we could just link to it, rather than repeating contact information across multiple pages. We also scheduled out our next week, and decided on meeting times and goals for the project. We have our work cut out for us in the next week, but I still feel like we are in a good position to finish all of this.

We all worked on modifying the wiki pages that we had received critique of on Friday, and they are coming along nicely. The wiki is complete currently, but the information still needs tweaking here and there.

I think that a good test of it would be to give Obsidian to a group or classmate currently in 462, and leave them to try to figure out how to use Obsidian on their own projects without any input from the group. If they can do it easily, that will indicate to me that the wiki provides a good base foundation for new users, and will really put me at ease about its functionality. However, if they are unable to do it, it will highlight areas that need work so that we can increase the usefulness of it before POSSCON. I had this idea while modifying my pages after the meeting, so I am going to talk to Hunter about it tonight, and the group about it either before or after class tomorrow.

The good thing is that the team seems very motivated, and is tackling problems and quickly coming up with solutions to them. POSSCON will be one week away on Wednesday, so we are very obviously in crunch time. The source code and .jar files will go up on the Google Code page next Tuesday, so we only have a little bit of time to finish tweaking before our version 1.0 release. We have the pieces in place to succeed, all that is left is to actually do it.

Line 14: The Doc is in!

Tonight our reading was about documentation in Software project. It talked about useful tools that you could use, and methods for documentation. This included commenting, and even "bug fixes" that were just documentation clarification for the project. We had some exercises to complete as homework, that would allow us to get further into the documentation mindset.

The first part was to go through the code and make sure that you had readable comments that enhanced the ability to easily understand your code. My project is of course Obsidian, and I must say that most of the commenting on this project seems to be in a good area. Most of the classes are easy to understand and have easily understandable comments describing their functions. The project goes even further, because it also generates comments for the test cases that it generates.

We have been working on documenting this project on our wiki for the past few weeks as well. In fact, I feel like we have been in the documentation mindset for the past few weeks.

We have been focusing on documenting Obsidian since we left for spring break, and by now most of our documentation has been completed. We have created documentation on how to modify tests, planned out frequently asked questions, and even wrote guides to getting the project off the ground quickly.

Overall, most of our efforts for the past two weeks have been put into finishing documentation for our project, so this reading was really easy to understand for me.

In POSSCON news, we are currently preparing for our trip, making lists of what we need to bring, and also ordering items to promote our project. We decided to make a form for people to sign up for our mailing list, that they can easily use when they visit the booth. We also planned out who is going to go up the day before to set up the booth, as it has to be done by 7pm on March 26th. This was sort of an issue, because the stickers that we are ordering will probably arrive on that Tuesday. Since Michael Cole has a test that day, it was decided he would stay behind to make sure that we get all of the things that we ordered. This is convenient, because we will be staying at Hunter's mother's house that night, and we wouldn't have enough beds for us to sleep in.

That was all that we really discussed over the past few days, but our first giant work session will be tomorrow on Friday, and I hope that we can accomplish a lot of our goals at it. We still need to decide on final wiki structure, and we are also going to begin working on our poster, so that we can display it at POSSCON.

We are in a good place for our final push towards POSSCON, and I really feel that we will be able to muster a strong showing for the conference. I am looking forward to it.

Monday, March 11, 2013

Line 13: After the break...

Well, Spring break has come and gone, and Team Obsidian is back on track in a big way. Before the break, I was expressing concern over our ability to remain on schedule, due to my own feelings of exhaustion. That prediction turned out to be slightly correct, as the team had a stumble in the last week leading to break. Few of us had what could be considered a "first pass" on our documentation assignments done, and that marked the first time we had ever been late on a deadline. Luckily, the spring break buffer zone allowed us to refocus, and when we met this evening the first pass was indeed complete, and we had made marked progress towards the completion of our final versions of these documents.

We also saw some progress on the enhancements to Obsidian, and we are virtually bug free at the moment (though I have no doubts that the finalizations of the enhancements will add plenty to be squashed). We are all familiar enough with the code to write about it, and seem to have been keeping up the stride we set at the beginning of the semester.

POSSCON is in two weeks from now, so we have also been organizing ourselves for that. We have been granted a booth, in a very good location I might add, and we are getting prepared to go. We used this evening to plan out what we needed to do before POSSCON, and start doing some of those them. These tasks include plans on how we are setting up the booth, who is driving whom, and what we need to bring for the show.

Since it is creeping up on us slowly, we have decided to bump up our meetings from two to three a week. Friday has been added, with the intent of using it to get work done. We will basically sit together in the conference room after class, and go about our personal assignments. Because we are together, we can ask questions of the group and make decisions rapidly, which should speed up the process quite a bit.

As for me, I suffered a little disaster over spring break. My laptop of 5 years bit the dust because of a hardware malfunction. The basic gist of it is that the part that delivers power to the screen has broken down and needs to be replaced. For a while, I thought this would severely impede my progress on Obsidian, however Michael Cole loaned me a spare laptop he had, and I was able to resume my work. My laptop has been packed up and sent off to have its part replaced, and it should be back before POSSCON.

Anyways, things are looking good with the group, and I am glad that we managed to keep on schedule, because it should mean a lot less stress in the long run. We are all looking forward to POSSCON, and want to produce the best project we can before it arrives.