Sunday, February 7, 2010

Kukui Cup Tech's 1st Milestone

After weeks of working with Joomla, I now have the ability to create and manage simple websites. I've learned a lot since we started working on the Kukui Cup project. This post will go through the implemented functionalities that can be used for the Kukui Cup competition.











This is the public home page. I made it so that public and registered users see different articles on the front page of the website. My public front page contains an RSS feed to Forbes.com's energy news and a sample chart made from Google Docs using their Visualization API. The energy news feed keeps the public on news that relates to the goals of this project such as energy literacy. The chart can be used to track of the daily energy usage of the participating buildings.













Another working feature for the Joomla mockup site is the implementation of UH CAS Login. I implemented it using the External Authentication plug in for Joomla. Once installed and configured, a UH user can login in fine. The only problem right now is the Logout part of this plugin. The CAS login uses session that the browser stores in memory. The plugin doesn't destroy the session instance when logging out. This results in the previous session being reused if someone tries to login right after a logout. I'm still working on getting this problem fixed. The author of the plugin is currently unavailable because he is helping with the next release of Joomla. He won't be updating the plugin until around summer time.













Once logged in, a different frontpage will be seen by the user. The registered user has access other parts of the website now. The frontpage now has a Google Calendar that would lists events for the competition. A Google Gadget is also implemented in the registered user's frontpage. For now a gadget that displays the top Green Products at Amazon is good to have. Later on the Stoplight gadget would be added to this page once its done. There's also a User Menu module on the left side which can be expanded as needed later on in the competition. The Latest Discussion module shows the latest posts from the competition forum. A workflow module is also implemented on the right. This can be useful later on for the competition administrator.













The next part is the Discussion Forum for the competition. The administrator can tweak this forum for whatever the needs of the project website. This forum is implemented by installing the Kunena plugin. The cool part of this is that it's fully integrated in the project website meaning its not running on another database. This eliminates the need for dual logins. Every website user would have a forum account automatically.










The standings page shows the implementation of two charts using Google Visualization API. Both were made from Google Docs spreadsheet. This makes it very easy and simple to create charts that shows the buildings' energy consumption. It's also easy to update the charts. Simply update the spreadsheet and Google Docs and the charts should be updated.

-David Joel Lazaro

Monday, February 1, 2010

Joomla: Status Update

So it's been weeks since this project started and I like our group's progress so far. In last week's meeting, we discussed the difficulties we faced trying to re-create the current mockup. We agreed that it's not the best way of creating a demo mockup for the competition website. Instead, we tried to replicate the mockup the way the CMS wants to do it. In other words, try to replicate most of the functions seen in the mockup even if it doesn't look exactly the same as the mockup images.

Last week, I was stuck trying to get phpBB3 to work with Joomla for our forum. I stumbled upon a Joomla plug in called JFusion. It's main purpose is to integrate other software like phpBB3 into Joomla. Installation was easy as always with Joomla. The problem is that JFusion failed to do what I wanted it to do. The dual login module of this plugin wasnt working for some reason. I spent hours reading the forums and other websites for possible fix but failed to fix the problem. After two days of trying to get it to work I finally gave up and looked for ano
ther way to get a forum running for our project. This is when I found Kunena. Kunena is so much easier to work with and the best part, it's integrated in Joomla as a module! No need for dual logins because every website user will be part of the forum. I also like that it opens up within the Joomla website instead of going to a whole new different page.

Another goal that we achieved this past week was the implementation of Google Gadgets. It's actually pretty simple to put any gadget in our Joomla website. I installed a Joomla module called Mod HTML. This allows developers to copy and paste a script and act as a module in
Joomla. I then did some manipulation to get the module to be in an article so that I can post it in the home page once the users log in. So far everything is running smooth. I have a Bejeweled game gadget on the home page of our Joomla website. I also tried to implement a work in progress Stoplight gadget that the other group is working on.

For next week, I will try and add more content to the website to have a fully working Joomla mockup site. Another feature that I will try to implement is UH's CAS login. This is what UH uses to authenticate the users of their web services. Below are some screenshots of what I have so far in Joomla.



















































-David Joel Lazaro

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