Monday, January 25, 2010

Joomla!: My First CMS Experience

Last week, our kukui tech prototype group's task was to narrow down our selection of CMS for
the project. After our first group meeting with Professor Johnson, we now have a better idea on what to look forward to with the project. Our initial comparisons consisted of 10 different CMS. We read up on Anahita, dotCMS, Drupal, Elgg, Joomla!, MODx, Ning, Pligg, Silverstripe, and Wordpress. We found a lot of good information about these CMS. We setup our review by categories which were based on what we already knew about dorm energy competition. The categories that we gave importance were ease of use, social networking, and
extensibility. We then decided as a group to select dotCMS, Drupal, Joomla!, and Silverstripe to do actual testing. My task for the coming weeks is to get familiar with Joomla and try to create mock up pages for PublicHomePage and StudentHomePage.

So far I have set up my machine (Macbook Pro) to be able to host and manage websites locally with the help of MAMP. MAMP allows me to set up my machine to act as a personal web server. After setting up the web server, I went ahead and downloaded a copy of Joomla. Setting everything up from MAMP to Joomla was pretty easy. So far, all I have are the default pages that Joomla provides. I'm still getting used to how everything works by playing around with the backend administrator settings. There are lots of things to be learned and hopefully by next week I will have a full page mockup.

-David Joel Lazaro

Tuesday, January 19, 2010

New Semester and New Projects

This semester, our software engineering class is all about UH Dorm Energy Competition. Our main goal for this semester is to plan and build everything for the competition for next Fall. Our class is divided into groups. Each group has a specific task that benefits the overall project. For the first milestone, I was assigned in the Kukui Cup Technology Prototypes. Our group's goal is to explore various technology infrastructures for the dorm energy competition.

For this week, our group's task is to research content management systems. So far I have read articles and watched videos about CMS such as Drupal and Joomla. Other group members are doing the same. Our plan is to meet up before our first group meeting with Professor Johnson and discuss everything that we researched so far. We will then try to come up with the best technology out there that we can implement in the dorm energy competition. The way we intend to accomplish this is by creating categories and grading each technology that we researched on. We will then tally the scores and discuss the selection before presenting it to Professor Johnson.

-David Joel Lazaro

Friday, December 18, 2009

Software Engineering Experience

Taking this course really helped me mature as a developer. I learned so much in just one semester. The thing that I liked the most in this class is that we worked on real world applications unlike ICS 111 and 211. Another aspect of the course that I liked is the collaboration of students. In the past we were not supposed to share our work with other student in class. This course is proof that two minds are better than one. It's good to work with other people once in a while. I think it's a win-win situation because everybody gains from collaborating with each other.

I mentioned that collaboration is the best part of this course for me. I've met some awesome people and I'm glad that I was paired up with them. Even though there were times where it was really tough for us working late at night at Sinclair, we were able to keep the morale up high. The tools that were introduced to us in this course will be really helpful in the future as a developer. Version control like SVN and software ICU are some of my favorites. I'm actually looking forward for the next level of this class.

-David Joel Lazaro

Ecologineers v2.1

Our web application has come a long way since version 1.0. We've done a lot of bug fixes and added a couple of new pages that gives user's useful information. One of the pages we've added was the Home page. This is simply an introduction of our web application and what the other pages does. The second page that we added is the StopLight page. This page provides the user information depending on the carbon intensity of SIM_OAHU_GRID. It has four categories, green, yellow, red, and no data. This gives the user an idea of when they should be plugging their devices to the outlet. The third page is just a modified version 1.0 grid info page that displays the carbon intensity chart for SIM_OAHU_GRID. The user can now select a start and end date for the time period that they want a chart generated for. The user can also select from a pull down menu SIM_OAHU_GRID's sub-sources.

We tried to implement some extra credit features to our web application. One of them is the addition of nice urls for the links. Instead of the wicket gibberish url that it displays in the address bar, it now shows a nice bookmark-able link that is easier to remember. This means that the StopLight page is now called "stoplight" and the GridInfo page is now called "gridinfo" in the address bar of our browser. We also added an ajax page refresh for the StopLight page. What it does is it refreshes the page every minute so that it can update the users quickly instead of waiting for another hour to manually refresh the page.

Working on this application thought me some valuable lessons. It's clear that one person can only do so much. After trying to implement something for hours, I had to walk away from it and pass it to one of my group members. It's also nice to learn something new. The wicket framework can be really useful if I continue to learn it.

To try our updated web application, click here.

-David Joel Lazaro

Tuesday, November 24, 2009

GreenDepot Review

In summary, GreenDepot is on the right direction and just needs to fix some major bugs to get their application running smoothly. Right now the application is dependent of Ant. I would check the jar.build.xml to see if it's compiling the needed components for the system to run. I also suggest that a separate session class be created for getting and setting user input. Software ICU and Continuous Integration data shows that the group was working on it consistently. To view my full review, click on the link below.

GreenDepotReview

-David Joel Lazaro

Monday, November 23, 2009

Ecologineers Wicket Application

After working on WattDepot, it's time to put it in practical use by building a web application that can take advantage of it. We had to build a wicket application that shows the carbon intensity of a certain day. Our group name is Ecologineers. My partners for this project were Paul Galiza, Shaun Ramento, and Jarret Mizo.

Overall I believe that the project went well. Everybody did what they can to contribute to the project. We helped each other out when one needed help. The only thing I observed that got in our way of working on this project was our other class works. Me and Paul have midterms and C++ homework to work on. Meanwhile, Jarret and I also had some lab report to do for our networking course. I think we got most of the job done because we were always able to meet and work on the project as a group.



As for the current state of our application, our group was able to implement most of the requirements. We just couldn't tackle a couple of bugs due to time limit. One of the things that doesn't work is the color coding of the table in the webpage. It shows the text Red, Green, and Yellow instead of the actual color. We only need some more input validation in our date entry forms. Our system could also use some more test cases as you can tell from our hackystat image above. There were times where the system wasn't touched at all because we had other stuff to do. But when we do work on it, we all do it together as a group.

Click here to download and try our wicket application.

-David Joel Lazaro

Monday, November 16, 2009

WattDepot Ekahi Version 2.0

This assignment enabled us to correct the mistakes we made in the first version of our WattDepot system. Armed with better knowledge after being reviewed by our peers, our group made sure that the second version of our system is way better than the first. The main fix that we had to do was refactoring our code and break it up in different classes for each commands. Doing this enabled us to clean up the system. It also made test cases easier to do because we now have each commands return something rather than being void.

After doing the refactoring, we were able to implement the commands in a much more efficient way. We took many unnecessary codes out also. I believe that we were able to fix most of the issues that the reviewers have raised. The design of the system went from having one giant class to each commands being in their own class. At the end of it, we were able to get a 62% coverage in our system. I think if we worked on it some more then we could easily bring that coverage up.

My partner (Paul Galiza) and I worked pretty well as a team. We both had other things to do outside of this class but we were still able to pull through and work as a team with no problem. We met outside of class to work on the system as much as we can. In our group, we pretty much just worked on whatever was needed to be done. I think we both did a good job of carrying our weight when it comes to working on the system.

A new concept that was introduced to us while building this version of the system is Software ICU. Software ICU is a way of tracking the "health" of our project by monitoring the vital signs of the system. To do this, we used the system called hackystat. In a nutshell, hackystat monitored almost everything that we did involving the project. The screen shot above shows the current health of our system. Although it could be improved, our group really worked hard on getting the system up and running with minimal flaws.

The following questions are something that we are able to answer after getting our system up and running:
  • What day and time during the month was Oahu energy usage at its highest? How many MW was this?
    The timestamp 2009-11-02T20:00:00.000-10:00 netted a high 995MW.
  • What day and time during the month was Oahu energy usage at its lowest? How many MW was this?
    The timestamp 2009-11-02 netted a low 493MW.
  • What day during the month did Oahu consume the most energy? How many MWh was this?
    No available data found for this month to answer this question.
  • What day during the month did Oahu consume the least energy? How many MWh was this?
    No available data found for this month to answer this question.
  • What day during the month did Oahu emit the most carbon (i.e. the "dirtiest" day)? How many lbs of carbon were emitted?
    The timestamp 2009-11-05 is one of the dirtiest day which emitted 29,959 lbs or carbon.
  • What day during the month did Oahu emit the least carbon (i.e. the "cleanest" day)? How many lbs of carbon were emitted?
    The timestamp 2009-11-07 is one of the cleanest day which emitted only 22,908 lbs of carbon.
Click here to download the Ekahi branch of the WattDepot system.

-David Joel Lazaro