Thursday, March 31, 2011

Bitter Lemons

After running in circles for awhile with my unfamiliarity of python I did finally have some success determining what is going on with how Lemonade stand calculates the items purchased.  (and after breaking the code royally, I really appreciated the ability to checkout a clean version with subversion!)  It appears to be written to check each individual item 1st; instead of totaling all 3 items and then checking that against the amount of available cash.  A player may or may not overspend until the 3rd item…in any case no error message is given to explain this problem.  So, that means a little more work than just working with a variable or two...looks like I’m going to work on pseudo coding a method (again my python is rusty) that will total and check this condition first...if indeed this is the desired solution—will find that out in a few  hours.

Tuesday, March 29, 2011

Reflections of Posscon 2011

Posscon 2011 was definitely worth the travel time involved and I must admit that I really didn’t know what to expect when I arrived.  I actually got there around 7 on Friday morning and was shocked that they actually signed me in that early.  While walking around and checking out the booths, I was surprised to see several of the speakers already there.  Little did I know that being early really worked in my favor…while walking around I noticed Jim McCracken lurking around his and Neil Underwood’s booth from Thursday.  Jim told me that he was missing 2 very important bearings for his “Thing-O-Matic,” to which I quipped that he should simply replicate them.  He laughed and explained to me that this was not possible, “YET” and this led to a great conversation with him.  I volunteered to help get a table for his “Thing-O-Matic” display while getting the inside scoop on what the presentation was about…along with what specific parts were used for.  The bearings that he was missing were an important part of the unit that he had planned to have the attendees put together during the presentation—thus he had to change plans and brought in a working unit to show in action.  I am still baffled at how it works (with a single input of plastic wire “extruded” into the machine) but after seeing the Android holder the unit produced for John “Maddog” Hall I can’t dispute what I saw.

It was almost an hour of helping and asking questions of Jim, that Neil Underwood began setting up his display in the same room.  He overheard some of my conversation with Jim and before I knew it I was having a similar conversation with Neil as he was setting up his RepRap unit.  One thing was obvious from the beginning; Neil was extremely passionate about this technology.  He began telling me about speaking engagements, workshops, demonstrations, blogs/forums, etc…. that he engages in for the express purpose of getting the word about the RepRap (his is names Mendel).  To be honest, when I “googled” the Thing-O-Matic the other week, I never noticed anything about Neil’s passion—the RepRap.  Neil lamented the fact that there will never be any advisements on it because he said that “…it is the worst business model ever made.”  The reason for this is that if you buy (and assemble) this machine you’ll have no need to ever buy another one—and your friends can buy your replicated version from YOU and not the manufacturer.  While Neil freely admits that there is no money to be made in selling the RepRap, he is so passionate about it is because of the imagination it can unleash upon its owner.  He said that just seeing the kid’s (and adult’s) eyes as they realize what they can do with this machine is payment enough.  Before I knew it, it was already 9:30ish and I had missed the “Welcome and Overview,” but felt that I had learned more being around these two guys than I would have during the 9am session.

I attended the OpenOffice Challenge for my first session with David Both.  I did glean some information during the workshop that I thought was helpful.  For example, I didn’t realize the reason for “LibreOffice.”  David explained that this was a “fork” in the project that occurred because of some concerns over the direction that Oracle was taking OpenOffice.org (after they bought Sun Microsystems—the owner of OpenOffice.org).  The name OpenOffice.org” was also a big point in the workshop—that it is important to use the “OpenOffice.org” instead of just OpenOffice.  This is because a Japanese company has the copyright to the phrase “OpenOffice.”  We kind of left the OpenOffice.org for the majority of the workshop as other participants began asking questions about converting their office staff from Windows to Linux.  While the discussion was interesting, I was a little more interested in OpenOffice.org specifically and had hoped to learn more about the suite than the direction of the discussion took us.  David did explain to me that there is an open source equivalent of Microsoft Outlook and that is Evolution.  It is in not an OpenOffice.org package and he had no idea why they haven’t integrated on in their suite other than the fact that Evolution is already out there as open source.  I haven’t installed Evolution on my ubuntu box YET, but have looked at screenshots and it seems like something that I could make use of...so that’ll be on my “to-do” list after the semester when I actually have time to experiment with it.  As for things on the horizon, the best answer was the new transitions to be added to impress and what is happening with “LibreOffice.”

During the break I happened upon David Duggan and struck up a conversation with him.  After a few minutes at the lunch table I realized that we had several friends and acquaintances in common.  We both attended Midlands Technical College (different years), are friends with Dr. Chan and have “fond” memories of having Joe Greer for our two semesters of COBOL there.  He told me about GNU Cash and that it was an alternative to Microsoft Money…although I must admit my first impressions of GNU Cash is not too promising.  I may play around with it during the summer, but looks like I’ll be sticking with MS Money for a while yet.  Much of what David stressed as the advantages of open source over bought software was the “free” cost of the product, but more importantly is the support that is provided.  At lunch he recounted an experience that he had where his network was doing something extremely strange and that the organization spent several hours with him over the phone—the day after Christmas—to help him resolve his problem.  His workshop was interesting as well…he showed several open source products that appear to be great equivalents to Window’s platform software (most notable to me was Evolution and Gimp).

Overall it was a great event…well worth attending (especially at the college’s price!) and as I’ll still be here next year—God willing, the last 2 classes—I’ll look forward to attending again!

Thursday, March 24, 2011

Planning the trip

Much of what yesterday and today has entailed surrounds final preparations for attending the convention tomorrow.  I’ve printed out pictures of the speakers that I’m hoping to ask questions of tomorrow in order to spot them easier.  I arranged my questions so that I can get the most out of however much time they have available (I don’t want to take up too much of their time).  I even scoped out the parking situation in relation to the convention center for tomorrow as well—although I didn’t see anywhere if there is a charge for parking (if not that’ll be a big change from the way Charleston does business).

Well back to the grind, still sorting out the logic in bug #3 …getting there though.

Tuesday, March 22, 2011

Bugs and Possible New Feature

Thursday thru Sunday night was spent at Duke University Hospital looking after my mom following her surgery.  With most of our early bugs spoken for (and since it has been years since I’ve had to deal with python code) I’ve set out to discover the cause of our last 2 bugs.  I had little trouble finding 2 methods dealing with bug#3…although I am still working on understanding why they were written the way that were.  In the process of finding this code though,  I came across the difficulty levels and thought of another improvement that we can make…and that would be by adding this to the “help” box so that the player can actually see what difficulty level they are playing in.  We may not choose to undertake this because of time constraints, but I’ll mention this at our meeting today.

I still haven’t found the code dealing with the “error” message in bug#4, but honestly haven’t looked that deeply into it because we haven’t slated that one to be completed for another 2 weeks—so there is still plenty of time.  For now though, I’ll keep working on bug#3.

Thursday, March 17, 2011

Team Post, Posscon and Chapter 9

Our team project is moving on without a hitch—we actually received an email from Nathaniel (the person in charge of Lemonade Stand) during Tuesday’s class, in which he gave us the go-ahead on what we are looking at doing.  Needless to say this is good news for us and a boost knowing we are on the right track.  As for myself, I had been trying to determine the best way to work with the code (since it is in python) and in my CSCI360 class we are using NetBeans—which I discovered has a Python plugin!  Originally I was using subversion with tortoisesvn in Windows but since I needed to test the code in Ubuntu I really wanted to have everything working in the same OS.  I spent a good part of the day yesterday working on this and was able to make everything work together…I was very happy!  I imported our project from our repository in Cirdles directly into my new NetBeans Python project, set up the subversion inside NetBeans and I was off and running.  Since we are only working on documentation this week (instead of code) I wasn’t too pushed, but wanted to get ahead of the game.

For my trip to the Posscon convention next Friday, I have chosen 4 speakers (in case I am not able to catch all 3) to ask questions of.  The first two are rather easy because I plan on attending their workshop and should be able to ask my questions—if nothing else in the question & answer portion of the workshop.   The other two are speakers of other Friday workshops, so hopefully they will be available at some point—whereas if I choose a speaker from a different day, they might not be there on Friday to ask.

David Both is the speaker of my morning workshop which is about Open Office.  One of the questions I have has a personal connection to me.  I am hooked on MS Outlook and as of yet, I have not seen a similar package in Open Office and I was wondering if one is in the works (or why not).  I am also interested in learning how they are able to mimic (and even bi-directionally use) Microsoft documents without drawing the legal ire of Microsoft.  A final thing that I am interested in learning is what is “on the horizon” for Open Office.

David Duggins will be the speaker of my afternoon workshop dealing with using open source software to start your business.  I’m sure this workshop will give me the business aspect of open source software, and in particular I’d like to find out from him what the best open source accounting software would be.  Over the years I have been patronizing MS Money—which is now been discontinued, so I’d be interested in something open source that might be maintained for many years to come.  I’d also be interested in learning why (since there is no cost to count off on my taxes) I should base my business on open source instead of off the shelf or built software (which I can deduct portions as business expenses).

Finally, I hope that I can catch either Jim McCracken or Neil Underwood who are speaking at a morning workshop dealing with 3-D printing and open hardware.  I kind of wanted to attend that shop to learn about “open hardware” and might swap if the Open Office workshop is too full.  I have never heard of “open hardware” so I would be asking the, what’s and how’s of that.  3-D printing is something that would be interesting to learn about as well…so “how can I use that” and “what are the costs involved” would be another area to question them about.  Finally there is the “Thing-O-Matic” that I am sure is the printer, but I’d be interested in learning what it is, who makes it and what it costs.

When dealing with chapter 9, it was by far the shortest assignment I’ve had to read yet.  While I can understand the concept of “releasing early and often,” I can also see a downside.  When rushing things to go live, you can introduce some unintended consequences that might have been discovered through more testing.  While quick and often releases can cover this, it also could mean more of these consequences or force the user to learn to do something a different way—or it could all go smoothly.  (I’m just being a realist looking at it from a user’s perspective)  Also, I’m not sure if our author was testing us but all of the links on this page were either dead or took me to a wiki type page that was empty—guess I should contact the author and tell him that someone was paying attention….he needs to release quickly again :)

Monday, March 14, 2011

Ready...Set...Go!

So after spending a week and a half discovering as much as possible about my team’s project, it is refreshing to finally have a game plan.  For some time, my team and I have been concerned as to how we could contribute to Sugar Labs for the remainder of the semester and now we have mapped it out.  We have updated our Ateam wiki to show this new timeline for our success.  We have chosen several areas that we CAN contribute to this project and gain some valuable experience in the process.

The first area deals with documentation as it pertains to game play.  Right now, the player is forced to figure out everything on their own…nothing to stipulate what keys does what or even the goals of the game, just to name a few.  We have several ideas as to how we’re going to go about improving that, and we want to tackle this first for several reasons.

The second area of our improvements deals with several bugs that we found.  These are obvious ones (like I mentioned in a previous blog) and really do need to be resolved for the player’s sake.  We chose several that we felt would be attainable in a reasonable period of time—especially since time is waning for this semester and have posted milestones for each of them.  Hopefully Nathaniel Case will be happy for our efforts in this endeavor.

The final area deals with a few additions to the game play.  Nathaniel had mentioned in his wiki that he was looking for several random events among other improvements.  What our ideas are with this area is to use random events to utilize some variables/game objects that he currently is not using.  Our additions would also increase the learning skills of the players with the ideas we have come up with.

So, overall I think we are on solid ground and ready to have fun.  So finally it is...."ready, set....go!"

Thursday, March 10, 2011

Yet another bug discovered!

I must admit that I’ve had to spend lots of time the past 3 days securing transportation because of a major car breakdown; however, I did make some progress on ideas of our lemonade stand project.  I studied the code and that has helped me understand a little more of the game play/interface.  Although I have seen some additions we could make to the project (more random events, weather patterns and supply & demand issues) I still am more inclined to look into some of the bugs that stand out.  In fact, I found another one that I missed before….I don’t know how I didn’t notice it before, but on each “day” the player is presented with a daily journal, but no matter how you play it the game always starts at “Day: 2” (NEVER starts with Day: 1)

Looking forward to our next team meeting to compile what we have all discovered!

Tuesday, March 8, 2011

When Life Gives You Lemons, Make Lemonade

So my group and I started focusing on Lemonade Stand as our project to work on through the remainder of the semester.  In class Thursday, we were able to discover why our activity would not run as a stand alone activity.  The "engine" framework that the designer uses to run the activity was in a folder that was inside another folder...when we ran the command to initiate our activity, the program couldn't find the engine.  As a work around, we moved the contents of the inside folder into the "outer" folder and everything worked well.  A better solution for this is definitely one of the things that we are considering as being worthy of our attention.

After we got the game running, we immediately found that the user interface was entirely based on keystrokes—no mouse movements at all.  After a careful check through the README files, the wiki and the ever popular Google search, we found no instructions as to which keys did what.  It took time using the trial and error method to learn these, and to top it off there is no game play instructions for the user to read either.  This is yet another area we are considering as needing further improvements.

There are a few bugs that we have identified as well—in the game, the player is supposed to enter their profit for the day in certain categories (i.e., pennies, dollars, dimes, nickels, and quarters).  Suppose a player has earned two dollars and forty five cents in profit…the only input that the game accepts is dollars: 2, quarters: 1, dimes: 2 – any other combination, even if correct (i.e. dollars: 2, quarters: 1, nickels: 4) will tell the player that their input is incorrect.  Another bug is the pennies category…never is that used.  It is a category listed for the player, but the player is never put in a position to use pennies.  We could possibly use the “added events” that the developer is interested in being added to create possibilities where pennies could come into play.

There also APPEARS to be another bug, but I’m interested to see if my team has had the same results.  I’ve tried on several occasions to buy supplies…however, I intentionally bought more than I could afford.  What I noticed on these occasions is that it appears that the program allows me to buy the amounts I ordered even though I didn’t have enough money to pay for it.  While my “cash on hand” was zeroed out, I had “extra” supplies that I should not have been able to buy.  I’m curious to discover if I am overlooking something or if my team has had the same experience…since there is no documentation that may be another question for the developer…and quite possibly something else we could look at correcting.

There are a few other areas where we could improve the game play, but I’ll wait until our team meets again to put those up in the ether.  After Thursday’s success, I am feeling pretty confident that we chose the right activity to get involved in…all that remains now is a successful meeting—and some answers from the developer.

Thursday, March 3, 2011

Updates Galore

Well I received an email Tuesday night from the planners of the Posscon convention letting me know that they would have Friday's schedule finalized by sometime Wednesday...and they were true to their word.  In fact, it looks like they've changed many of their workshops around.  From what I'm seeing now, it looks like I'll be attending the 9:45 workshop with David Both on "The Great Open-Office Challenge" and the 1:15 workshop with David Duggins on "Starting a Business on the Cheap Using Open Source."  I'll plan on coming up with some questions over spring break for these two speakers and probably 2 others (in case I am not able to chat with both of them) and list those questions in an upcoming blog.

My team and I are excited about focusing on Sugar Lab's Lemonade Stand for the remaining portion of the semester.  Each of us were able to build this add-on yesterday, but all of us are having an issue with getting it to execute.  There is a workaround that Jamie mentioned on Tuesday that she had found with her group's Sugar Lab's add-on experience, and we'll ask her about it in class today (and test it if time permits) to ensure we all have it working.  Being able to open the individual add-on without using Sugar Labs OS will be beneficial with our workspace, testing and possible conflicts (like Browse) that have already taken up enough of our time.

Reading over chapter 8, I thought it would be yet another brow beating rendition of the importance of documentation; while it did have lots to say on the importance and proper ways of documentation, I learned of several new tools that I never heard of before.  First, Beautiful Soup is a parser that is totally new to me.  From what I gathered from that portion of the reading, it can be used to parse digital files such as documents and web pages.  It is slower than other parsers, but can be customized and even set to parse only a part of the file if desired.  It is well worth another look and some playing around with later.  The rest of 8.1 really focused on documentation...as I expected.  There were suggestions and examples pointing to the importance of clear documentation.

8.2 is going to be an interesting assignment and I thought that I'd spend some time looking at the wiki and IRC functions that will be a bit clunky at first.  In hindsight, I probably should have installed the IRC feature on my box--seeing as I can't use my laptop at work, and we can't install anything on government computers.  I did spend some time with wiki just to make sure that I could create a new wiki, create new pages and link to them from the main page in a timely fashion--since we will only have about an hour for the project today.  While I am still not sure how the best way to go about working this project in class, if I have no problems getting the IRC to work then I think that I'll be fine.

8.3 through 8.8 dealt with documentation, technical writing and ways to use documentation and technical writing to gain a positive reputation in the FOSS community.  (I did think it funny that in 8.6 they used the "waterfall method" to creating documentation--which is probably an acceptable use of this method, but over the past 2 semesters we have seen how it is not the best method to use in designing a system) 

Tuesday, March 1, 2011

Project & Posscon

Much of the past few days has surrounded our group project and details of the Posscon convention.  After another weekend spend re-installing Ubuntu and Sugar Labs yet another time, I have come to the realization that "Browse" is unattainable.  I created a snapshot in my VB before I started experimenting with their suggestions only to find that their modifications (not only wouldn't get browse to work, but also) would not allow my activities to open in Sugar Lab as before.  So I roll back my changes at my snapshot only to discover that my activities still would not open.  No matter what I tried, nothing worked and I was forced to start over yet again.  So after a few expletives I vowed to forget about "browse."  This meant that our project for the remainder of the semester cannot deal with that cursed activity, so we all started looking at different activities within Sugar Labs.  I know that several of us like "Lemonade Stand" as it offers some possibilities to work on, and there are also runners up that I like as well "Poll 27," and "Visual Match 28" to name a few.  We'll be meeting later on to nail down a particular activity.

With that done I started focusing on which speakers that I'd like to ask some questions...and then I ran into trouble.  I'll have to work Wednesday and Thursday, so the only day that I can attend is on Friday...the problem is, that they have 8 workshops listed for that day but they have not listed who the speakers will be for that day.  I did see 1 workshop that I'm particularly interested in: "Starting a Business on the Cheap Using Open Source" and another that might be interesting to me: "OpenOffice."  I did contact them about the missing info and will be waiting for their reply.  As for the 3rd possible person (if the two speakers in my workshops aren't available) I'd like to chat with, I was thinking that Janet Claggett might be my 1st choice because she works in the IT field--what I'm most interested in.  Mel Chua would also be interesting because of her hacking abilities and that is interesting to me as well.  Perhaps the last person on my list would be Dr. David Wheeler because of his software security expertise.