Crawling FHU.edu

by Michael Clark
October 4, 2011 8:07 PM

A project that has been on my list for a while now has been a broken link and spell check application that we can use to verify the content on the FHU website. As it currently stands, the application back-end is probably 75% complete.

The broken link portion successfully crawls the website (any website for that matter) and returns the status code for it and every link on the page. This has enabled us to find instances where a typo was made when editing CMS pages or a page existed that no longer exists. The broken link portion currently only returns status codes of 200 (OK), 301 (moved permanently), 404 (not found), or 500 (internal server error). If the page returns anything but those, the applications records a status code of 99 noting that further investigation is needed.

The spellchecking portion is what I'm currently working on and has been a headache to say the least. I'm using the Hunspell dictionary with the NHunspell .NET wrapper. Hunspell is the same dictionary used by LibreOffice, Mozilla, Eclipse, Google Chrome and Mac OS X Snow Leopard. The biggest hurdle at this moment is parsing page content so that things like HTML tags are not checked. This has been problematic just because of the sheer number of cases to find and fix.

To parse HTML content, I've come across a free .NET library called HTML Agility Pack. The library used Xpath syntax and enables me to easily select different sections of code (nodes). From there I can either remove the nodes, split them, or add to them.

Once I finish the back-end portion, I'll begin working on a front-end that will grab data from the database and generate reports detailing the broken links and misspelled words on the website. The back-end will be a task application that runs periodically.


FHU Mobile for Android (Starting the Process)

by Lance Williams
September 27, 2011 5:00 PM

Recently I have begun the development of FHU Mobile for Android. At first it seemed rather daunting, and while there is a definite difference in building web applications and native application, Google has given developers all the tools they need to build responsive, powerful applications that take advantage of the mobile state of an Android device. 

After consulting the Android documentation, I was able to figure out just how to get everything up and running. The Android uses Java, so as far as I know, any Java-based IDE will work to develop Android apps. The developer's guide suggests using Eclipse, so that's what I went with. In the past I have used both Eclipse and Netbeans as development environments, but I must say I feel most at home with Visual Studio. First let me say that in my humble opinion, when it comes to IDEs, Visual Studio is second to none. Microsoft has developed a very intuitive (Microsoft?) powerful program that almost makes me feel as if it teaches me to code as a code. In the little time I have had with Eclipse I must say that it does offer most of the "perks" of Visual Studio, such as good error checking and an intelligent auto-correct, however it isn't as fluid as VS. Eclipse runs slow on my machine, whereas Visual Studio is rather snappy, even on my 2008 Macbook (Windows 7). Visual Studio's Intellisense shines even more after using Eclipse, in which its auto-prediction is rather slow and not that smart. 

As mentioned earlier Android apps are written in Java which is particularly awesome because it allows you to use most any of the large number of java libraries floating around on the internet. With that mentioned the actual logical coding of the applications are very similar to any other language I have used. It is the view-based components, and how the different methods work that have caused the biggest challenge to me. I am slowly learning my way around the Android framework and I believe I will continue to enjoy this challenge.


Only1 Version 4

by Michael Clark
September 1, 2011 3:37 PM

When I was tasked with revamping the current iteration of Only1, I was initially overwhelmed - especially given what was requested. The idea was to increase the security around our password management so that we no longer relied solely on the last four of SSN and DOB to verify a user. The solution was a set of three security questions set up by the user when they first log-in to change their password. Sounds simple enough, right? Kind of.

The first question comes from a set of pre-defined questions. These were pretty generic and similar to the ones you might see on other sites (mother's maiden name, high school mascot, etc.).

The second question allows the user to type their own question and answer. This was so it would be difficult for two users to have the same security questions and thus knowing one another's answers.

The third question, and one that I initially thought would be difficult to program, involves a set of images unique to the user. When a user logs in, their username is assigned a set of 10 images - these images will always remain the same for the user and will always appear in the same order. This type of user verification is similar to what you might see on a banking website. With this third question, we can be sure that no two users will have the same answers.

Once the account is set-up, the user is given three options to proceed - the old username/SSN/DOB combo and two new methods. The first new method allows the user to enter their username and current password which would take them directly a change password page. The second new option allows the user to enter their username and then answer the three security questions previously set-up as verification before proceeding to the change password page. The existing username/SSN/DOB method still exists and requires answering the verification questions.

Once logged in, the user can also manage their account. This is helpful in the event a user feels their verification questions have been compromised or forgotten.

Only1 version 4 has been live since Monday and seems to be running smoothly so far. 


FHU Mobile

by Michael Plyler
August 19, 2011 7:13 AM

FHU Mobile, our first native iPhone App, is now available in the App Store.

FHU Mobile is your portal to the heart of Freed-Hardeman University. Developed by FHU computer science students with the prospective student in mind, FHU Mobile connects you to FHU social media, news, current events, faculty, staff and our admissions office. You can apply here, then take a look at your dorm. And, if you are visiting campus, use the interactive campus map to get where you need to go, fast. FHU Mobile is the next best thing to actually being on campus.

Get it in the App Store: http://fhu.edu/fhumobile


GC Digital Signage

by Michael Clark
August 8, 2011 4:06 PM

Digital signage shows information, advertising and other messages utilizing electronic displays. You might be more used to seeing them in places such as retail stores and airports among other places.

As you walk into the Gardner Center, you might notice four plasma screens hanging above the Welcome Center. These screens used to display some basic static information so one of the projects I've been working on recently is an attempt to revamp them. Screen one now displays a static image with 'Freed-Hardeman University' displayed in the middle. Screen two is reminiscent of a slideshow, but is actually a series of .swf files playing in succession. Screen 3 shows all of the current guests currently visiting Freed-Hardeman (more on this later). Screen four displays more images in a simple loop, two banners at a time with information about upcoming events, and a simple flash flip clock.

In order to accomplish this, we utilized a set of free software called Signage Studio and Signage Player available for free from a company called Media Signage. Both Signage Studio and Signage Player utilize the Adobe Air platform to facilitate cross-platform development of signage.

Signage Studio is where the actual development of the signage takes place. Inside the Studio, you can manage layouts, resources (anything from .png images to .swf files), campaigns and sequences and even preview your presentation to get the kinks out before publishing. There is still a ton of functionality in the Studio that I haven't begun to play around with.

Once you are finished with the Studio portion, it's a simple matter of saving your presentation and opening Signage Player. Everything is linked to a user account set up with Media Signage so I can easily move between computers to edit and view my presentations. Once logged into Signage Player, I just tell it what presentation to load and view the results on the screen.

Before I close, I wanted to mention the current guests at FHU portion currently displayed on screen three. We created a simple program that allows for up to 7 lines of information outputted to an RSS file. The signage presentation then reads this RSS file and displays the information as it currently exists. This allows us to easily modify what is displayed as guests come and go on campus.

While there some kinks and nuances to learn once you get in the software, it's pretty straightforward to get some simple signage up and running.