Main

March 21, 2007

Google SoC 2007

I have just sent in my application to Google for the summer of code 2007. My proposal covers a BitTorrent Tracker Module for the Drupal open source CMS system. Below is my abstract with a link to my application.

Edit: I have been contacted by Drupal and I have revised my proposal, the new version can be found here Edit: The latest revision.

Continue reading "Google SoC 2007" »

January 19, 2007

First week of school...

  1. Fix homepage header
    • Removed target from the link to the VCU homepage
  2. Adjust Sitemap.html
    • Removed all references to port 83 from the sitemap page.
  3. Adjust Rotating Content System
    • Rewrote the javascript that parses the XML for the dynamic content system.
    • Adjusted the XML scheme to match the parsing system.
    • Added PubMed and Lexis Nexis to featured resource.
  4. LinkScan new site
    • Generated a list of third tier pages to be updated.
    • Found problems leading to many 404 errors.
  5. Validate Web Manual Pages
    • Moved style_new.css & print.css from production to staff.
    • Added print.css to generic_navpanel.
    • Fixed header problems on staff site.
    • Created the print icon for web manual pages.
    • Adjusted the footers' copyright to 2007.
    • Made "Staff Web" clickable from the staff header.
  6. Research custom list icons
    • Tested different icons sizes to determine the maximum icon dimensions.
  7. QuickSearch.cfm adjustments
    • Modified QuickSearch.cfm to redirect to catalog.cfm, to generate a better entry link into aleph
  8. Caching Engine
    • I have created a engine in perl that caches a website periodically to avoid slow-down due to outside resources.
    • The system uses md5 hashes to determine whether the files have changed since the last caching.

January 5, 2007

Update for the first week of the new year.

So here is a list of everything so far this week:
  1. Fix JBC Special Collection pages
    • Finished Comic Book Pages
    • Finished Mason Pages
    • Finished Stove Pages
    • Finished Sykes Page
    • Finished JBCBIO Page
  2. Featured Resource
    • Added PubMed to the featured resource rotation
  3. Fix Headers
    • Added a trailing slash to the ask a librarian link
    • Removed the target attribute from the VCU Link
    • Moved to production and ssl
  4. New Staff Side Header
    • Remove fly-downs and replace with links used on the staff web.
    • Removed font-change and Ask a Librarian links
    • Moved to staff production site.
  5. Fix CSS Validation Errors
    • overflow-x is CSS3 and we are using CSS2, so this did not validate. Replacing overflow-x with overflow caused the page to break, removing all scroll bars
    • Removed the padding-left from the page-footer in layout.css
    • Added the footBlock div into the footer to contain the text and provide a left side margin, Without requiring an overflow property.
  6. Fix Page Validation Errors
    • The search box's query field does not have a label attached to it. To meet section 508 compliance it needed an ALT attribute attached to the input box.
    • Adjusted the label for the search type to point at the corect element, previously there was a capitalization error.
  7. Search Header Files
    • To get a general idea of how many pages use each specific header the template search BASH script was modified to search for and count all occurrences of calls to the various header files. Some sample statistics are below:


    Header FilePercentage of Pages
    HEADER.HTML84%
    HEADER_BRIEF.HTML2%
    HEADER_BRIEF_JBC.HTML10%
    HEADER_BRIEF_TML.HTML3%
    HEADER_VCU.HTML1%
    HEADER_ILL.HTML0%
    HEADERSSL.HTML0%

December 13, 2006

Rounding the bend...

Quick Update...
The new library homepage is almost complete with an expected roll out of December 15th. Everyday we get closer and closer to a finished product and now we are down to the days of polishing every last detail before the final change over. Almost all pages on the production server have been touched with a majority being put into templates for easier updating in the future.

November 13, 2006

Onward to a new port...

Today marks another step towards website redesign implementation. If you are lucky enough to be able to reach the <a href="http://www.library.vcu.edu:83/">redesign port</a>, kudos to you, you may now view the development of the web site. If not, um... wait until December like everyone else. With this new port we can test all links as though they are in the root of the production server. This in turn will hopefully limit the amount of errors that occur during roll out. Anyway I had nothing to do with making the port it is just really cool.

Now off to what I did today. On the standard footer for most VCU Libraries there is a "Updated" section, this is dynamic for all pages using the .html extension. Coldfusion files on the other hand are not parsed the same way as .html files and as such do not have a truly dynamic footer. I have been researching various ways to implement this "Updated" feature, but I had only succeeded in confusing myself. When first researching I came across "event gateways" in Coldfusion which run a .cfc file when an event occurs, such as a file system change like a file addition or a file being saved. I did not realize that this was meant mainly for creating custom logging systems, not the dynamic "Updated" feature. After more research I found a code example that looked like this:

<cfdirectory action="list"
                   directory="#ExpandPath(".")#\"
                   name="qGetLastdateModified"
                   filter="#ListLast(CGI.SCRIPT_NAME, "/")#">
<cfif qGetLastdateModified.recordCount>
    <cfoutput>Updated: #DateFormat(qGetLastdateModified.dateLastModified, "mm/dd/ yyyy")#</cfoutput>
</cfif>
Sadly this did not work, rather nothing happened and I assumed that it was just a busted snippet of code. After consulting liveDocs I decided to take apart the code and see what went wrong where. The main issue was in the line:
directory="#ExpandPath(".")#\"
notice the "\" at the end of the line. This code was meant for a windows system. After replacing it with a "/" the last modified date was returned as "11/13/2006". Now off to livedocs again to figure out how to use DateFormat. In the end the result for the "updated" was:
<cfdirectory action="list"
                   directory="#ExpandPath(".")#/"
                   name="qGetLastdateModified"
                   filter="#ListLast(CGI.SCRIPT_NAME, "/")#">
<cfif qGetLastdateModified.recordCount>
    <cfoutput>Updated: #DateFormat(qGetLastdateModified.dateLastModified, "mmmm dd, yyyy")#</cfoutput>
</cfif>

November 1, 2006

SpryEffects...

With the redesign we have many opportunities to integrate new technologies, due to the fact that computers have higher performance capabilities and the number of internet users on broadband increases, allowing more content to be moved faster. One of these new technologies is using client-side scripting to alter the presentation of the content. For instance the redesign now has a hidden element that blinds down after the user clicks a button. The effects used come from the Spry framework from adobe labs. They were created for inclusion in an AJAX framework that adobe labs was putting together. After some experimenting and slight modification the effects code now fits our needs. Also better accessibility features have also been integrated. Adjusting the text-size has been made easier by the inclusion of a small bar with preset font sizes displayed. Once the user clicks one of the font sizes the site will adjust accordingly changing all the fonts to the desired size. Due to the modularity of the code it is possible to have the elements resize based on the font-size allowing the site to keep its look-and-feel at various font-sizes.

October 26, 2006

Piercings & Junk Yards

This past weekend was pretty intense. I drove home last Thursday at 11PM with a busted window. It was cold all the way back to VA beach. After I got home I helped Dad work on my truck then we went to Pick-n-Pull with my little sister to get some parts for both of our trucks. Kriston and I left Monday evening, but not before going to the piercing parlor because she wanted to get her nose pierced. After a lot of indecisiveness we both decided to get something done. She got her nose pierced and shortly afterward I had my eyebrow pierced. It did not hurt like I thought it would, just a slight amount of pressure. Back in Richmond everything is going awesome with Kriston, tonight we are going to see the movies in the commons which should be a lot of fun.

October 25, 2006

Link colors and headaches galore...

Usually you can change the color of a link with:
a:link{ color: #000;}
When working with the new events template I found that the above code would not work. After a few tests nothing seemed to change the color of the links. I found to change the color I needed to specify the id of the div where the link resides. So my code ended up looking like:
#maincol a{	color: #000;}
#maincol a:visted{ color: #000;}
#maincol a:hover{ color: #999;}
#maincol a:active{ color: #000;}

#footer a{ color: #000;}
#footer a:visited{ color: #000;}
#footer a:hover{ color: #999;}
#footer a:active{ color: #000;}

October 24, 2006

Updates...

Here are a few updates:
  • Focus Groups: I sat in on a focus group and the redesign is looking very snazzy
  • Event Template: I created a template for library events. This is my first Dreamweaver Template and I like how it has come out.
  • NewsGrab.cfm: I created a script that reads in the Library's "Whats New" feed and extracts the first news item and two other random news items and returns them within <li> tags. Including the file is simple through a SSI.
  • VALIDATION!!!!: Another cfscript, this time working with components, through a cfcomponent the validation function is called as a method of a cfobject.

October 9, 2006

The lump of clay begins to take form...

I am still working on the redesign, we are slowly leaving the realm of moving large chunks of the layout around to fine tuning and determining the best margin to put where or which tab should come up first. I got the chance to write some more ColdFusion today. I implemented my RSS functions to pull the first news item from the library news feed, then pull random items from the rest of the feed. All of this is pulled in through a SSI. There should be a link at the bottom of this post showing the source of newsGrab.cfm. Also I took an oppurtunity to work with CSS position and z-index commands. They are essential if you want things to float above or below something cleanly. Overall I am really happy with the work that I have been producing.

Continue reading "The lump of clay begins to take form..." »

October 5, 2006

Redesign...

The past few days have been nothing but start and stop. I have been working on the redesign lately and it is an awesome project, but it can get frustrating. I can spend an hour where nothing works, then all of a sudden I am happily coding away and everything falls into place. On a good note in a couple of days the front page has been created from scratch with some new technologies and a sleek look-and-feel. I have definitely learned a few things from putting it together, mostly in the CSS float area, but also in client-side scripting. I am becoming more proficient with DOM-based javascript which I think will definitely help me out in the long run.

October 2, 2006

There is a 5 foot diameter propeller spinning at many thousand rounds per minute coming straight towards me and I am not running...

This weekend my grandfather called me up and said he was going to Dinwiddie County for the annual EAA (Experimental Aircraft Association) Fly-in, and asked me if I wanted to go. I have not been in two years, but before that my cousin and I had gone for three years in a row and every time it was a blast. I said sure as I remembered the fun times I had in the past. So I jumped in Kriston's car and headed down I-95 S. When I got there I followed my grandfather in to the back of the airport through an industrial park. and on to one of the runways that they closed. This runway was closed because every year some volunteers at the fly-in choose to camp out at the airport and the best place is on of the runways facing away from the airport. I arrived a day early so there were not that many airplanes there yet so we decided to save our aircraft ogling until Saturday. On the way to dinner the first night the tram from the camp area to the hangar containing all the food passed by a helicopter, it turns out that the VCU Life-Evac helicopter operates out of Dinwiddie County Airport. It was neat to see the school's helicopter after reading about it a few weeks ago. Anyway we had a pizza dinner and turned in early. We got up just before dawn and it was freezing outside. I grabbed a sweatshirt and headed over to the hanger from the night before and grabbed a pancake breakfast. Afterward I headed over to the volunteer tent to get signed up and to pick my job. I signed up for aircraft parking and I was tossed over to the "tail-dragger" area. So the first few hours of the day had a few planes come in, but then everything really picked up. The other parking area had become full, so we had to handle all incoming aircraft. You don't realize how powerful these aircraft are when they are coming at you, but when we had to spin a few of the larger aircraft around to fit them in their space, you get hit with the "prop wash" and get blown away by the shear amount of air being forced at you. I stopped my shift at 2, 3 hours after my shift was supposed to end, I didn't mind working the extra time, because it was fun and I got to be in the "action" if you will. I left later that afternoon to come back to Richmond, mostly because of the 3 tests I have this week. Overall it was an amazing experience and I definitely want to do it again next year.

September 25, 2006

Bring forth my fine-toothed comb...

I have been progressing on the web manual more and more each day. The first few days were a bit rough with trying to grasp what I was trying to do and determining how I would approach this project. After deciding on a structure I moved on to applying it and adding other content. After many days of wrangling Word HTML I now have a slightly presentable website. All the styles are cleaned up, everything looks nice, all pages pass spell check, and all content transferred over. All that is left is minor tweaks and changes. I am happy to have finished this project, and I am pleased with the result. I have added to my library of code and I have explored different structure and control schemes.

Continue reading "Bring forth my fine-toothed comb..." »

September 19, 2006

And then it exploded...

So a few days ago I went into the whole development.html thing. This was a huge HTML file covering many aspects of the web publishing guidelines. After careful consideration it was determined that there was just too much there. So I split the file into its sub-components, and because of the careful structuring it took less time then trying to redo everything. I found that all I had to do was copy and paste and do a couple of find-and-replaces to change the headings. So kudos to hard work paying off. I am slowly coming towards the end of the web manual project. Almost half of the appendices was formatted using my structured methods before we decided to split it into seperate files like the development file. Once I finish putting the content into place the final step will be simple CSS clean-up and formatting.

September 18, 2006

I am thinking of nested lists, hmm...

Continuing with the structuring, implementing, & clean-up of the Word HTML I have run into a few bumps, but the actual coding is completed. All of the web manual pages are now within nested lists. I have also put the CSS in place to ignore indenting in certain areas and keep the list style if it is an example. I think this new approach is something innovative that shows an alternative to tables and really long unformatted files. All that is left is the touch-ups and possibly including the appendices. Also I took another look at the did you know source, after a few quick tests I discovered I could optimize the function that determined the range of the random number used to pick the item. I add the value of the maximum number of items to an empty string. From there I can get the length of the string and that tells me whther I am dealing with 1-10 items or 1-10,000 items. All in the name of scalability :) .

Continue reading "I am thinking of nested lists, hmm..." »

September 14, 2006

XaraLX that's right the LX means Linux

I was browsing around slashdot about a month ago when there was a release of some "Scaleable Vector Graphics" software that rivaled Adobe Illustrator. I decided to check it out and apparently the source was released for Linux and BSD machines for free where if you want it for windows it is $80 minimum. My linux laptop was down at the time so I decided to hold off until I had a stable system. Well last night I decided to give it a shot since everything is running smoothly now (except maybe Xgl). So I went ahead and grabbed the source for x86 (amd64 wasn't available) and I went about the usual process of configuring and making. After about a half-hour of compiling I ran the software for the first time and it is amazing. The capabilities of this program are astounding. I will post a few screenshots soon, but Wow.

Gelly Buttons and Web Design

A couple days ago I was browsing around on the web and I came acros an article linking to the Microsoft Windows Vista home page. I really liked the buttons along the left side, especially since they matched the Aero UI of the upcoming windows release. When you roll-over the button it changes color, but if you notice they use images for their "Gelly" buttons. I think tomorrow I will look into create the same style interface with extremely small images and a few layers in CSS when I get it all finished I will post it up here for some good old fashioned testing. On a side note I really need to do something to this blog, it looks so... bland. /* UPDATE */ So initial tests walloped me, but I am still working on it, I think I will have something functional by the end of the week.

Development.html meet "find and replace"

Today I had the joy of working with the development page. To start things off I pulled all the data in from the .html file that was generated in word. Anyone who has had a look at the source of any html file generated in word will tell you it is bloated with un-necessary tags, styles, and a rediculous amount of "&nbsp;"'s. The first thing I to do was rid the source of un-necessary styles and <span>'s. So I used "Find and Replace" along with regular expressions to remove a good portion of the irritating source. After that I took a look at what the page should look like when it is done and I noticed that it was basically a bunch of nested <ul>'s and <ol>'s so I started to go through line by line and I applied this structure to the document so when it comes time to style the lists, everything should cascade nicely. Click on the link below for a sample. I have almost put all of the content into this stucture, it has been pretty annoying because of mis-matching tags and missing content, but I should have it finished Monday. Once I finish with this page it should take minutes to apply the same model to all the other pages in the web-manual. Hopefully I will have all the structuring and CSS done Monday, but you never know what will happen.

Continue reading "Development.html meet "find and replace"" »

September 13, 2006

Gnome and XGL

the first time I tried XGL I got it to work for 4 hours before it did not want to respond, since then I have wiped the Linux side of my system and completely reworked my laptop from the ground up. I was attempting to use Gnome 2.16 before it was unmasked in portage, but that ended up blowing up in my face. After many hours of unmerging, then re-emerging to a lower verison everything is back up and working. I am running Gnome 2.14 on X and I am trying to run Xgl. I have discovered a way to keep all of my X settings and have Xgl on my system at the same time. Using this I can test one configuration in a nested window vs. trying a set of settings then turning around and re-enabling X. Other than Xgl being a pain everything else seems to be working. Hopefully I will have some more good news soon, since I am re-compiling Xgl with the Ubuntu code base.

Oh ye little web manual, how you haunt me...

Today I continued my work with the web manual. I am happy to say that four of the 6 pages have been re-arranged or re-ordered to follow the same format and navigation has been added to all of these pages. I have put together some useful styles that will be useful in the upcoming redesign. I am still having problems with the development page where the text is running over the edge of the div it is contained within. I think I will have to re-copy all of the data over and work from there. I have noticed that this content was definitly pulled from Word mostly because of the use of 50 cajillion (I think that's a number) "&nbsp;"'s just to shift the text over a little. I have worked around this by placing the text within a <span> tag with the style="float: right; margin-right: 20em" this floats it to the right, but then kicks it back from the right edge so it looks correct in any browser and the code is clean. Hopefully I can tackle that tomorrow and move forward on the CSS unification, becuase I know that has the potential to be a lot of work.

September 12, 2006

Line by line with an eye for detail...

Today I helped error check some code with a fewoptimizations here and there. In the end we ended up removing at least 50 lines of code. Then I got to work on the new web manual, this is definitely going to be an interesting project, filling it out with content and somehow making it navigable.

September 11, 2006

1,249,309 Hits!!!!

This is kind of a boost, knowing that a project you worked on has been accessed over a million times. I put together statistics from our web usage systems and our homepage has had 1,249,309 hits since January 1st. It is kind of interesting to see how users navigate the site and the most frequently accessed pages. On a side note while putting this information together the one computer within the library that has accessed the homepage the most is the first computer you come to on the first floor when entering the library with 1.05% of all the hits from all the public computers. I am still unifying the CSS it is pretty slow because all this information is spread out into many files and condensing it into two files is daunting to say the least, but if approached from a structured standpoint everything can be done easily at the expense of adding a div or two to create the structure. This structure would allow cleaner HTML and CSS files across the board, including easier roll-outs of new designs and greater control over the "look & feel" which will come into play later during the redesign.

Continue reading "1,249,309 Hits!!!!" »

Gnome 2.16 and portage fun...

The dual-boot laptop is coming along slowly, it took few hours, but now X and Gnome have both been emerged. As of a few days ago Gnome 2.16 was released, but it was masked for testing in portage. After a few unsuccessful attempts and many profanities, portage is allowing me to install Gnome 2.16 as an update. After reading up on the release in the forums it looks like everything works with very few bugs. I want to try and enable the compositor within metacity so that I can have some of the cool XGL effects without having to go through the painful process of XGL. I will update with some more news and maybe a screenshot or two later.

September 8, 2006

New Blog, Yay! I think...

So I am starting this blog and we will see where it goes. I have had two blogs in the past and they both lasted a few weeks (maybe). But we will see what happens. I think I have created enough categories so finding something to write about won't be that hard. The general "look and feel" should be changing in the upcoming days. It all depends on how long it take me to re-do everything. Well here it goes...

September 7, 2006

Gentoo on my HP zv6000, v1.0

I say v1.0 but really it is like v3.0, but for the sake of documentation it is v1.0 . I have just finished the basic installation of Gentoo 2006.1 amd64. I think I am going to wait until Gnome 2.16 gets unmasked in the portage tree before emerging X and Gnome. Until then I am limiting myself to the console to set-up drivers and advanced functionality.

"Did you know?"

So today I found myself getting familiar with the web manual (39 page word document). It shed some light on the reasoning behind certain practices. Next I moved on to "Did you know?" formatting and links. So far I have found a few links, but progress is slow there. I am also putting together a few .css files that will contain all CSS data for the site. A layout file containing everything for one, two, & three column layouts and a general style file containing standard colors and sizes to be used site wide. Hopefully that should come together in the coming days, but right now ye olde three column layout is giving me a good thrashing. I have been looking at http://www.bluerobot.com/web/layouts/ for some css help. Another usful tool I found is a "Lorem Ipsum" generator it creates text to fill spaces where content will eventually go well It's something different. Until next time, ~Chris

July 18, 2006

Example Blog Entry

So this entry is to test the CSS I am trying to implement...

Heading 1

Heading 2

Heading 3

Bold Italic Underline Spanning Text
A Div
A Code excerpt
With multiple lines

P text

 Pre text