Tag Archives: Web Application Development

Posts related to the the Web Application Development work-group.

Please welcome Melissa Floyd in her new role as a Business Analyst in ITS

We are very excited to announce that Melissa Floyd has accepted the position as a Business Analyst on the Administrative Systems Team in Enterprise Applications.  Melissa will move into her new role effective April 1st.

Melissa has been at Middlebury since November 2015 where she has worked as a Software Engineer on the Web Technologies and Services Team.   Prior to coming to Middlebury, Melissa spent 13 years at IBM filling numerous roles including Project Manager, Software Engineer, and Solutions Architect.

We are very excited to see Melissa transitioning into her new role as a Business Analyst.

Top 10 GO shortcuts in Fall 2013

We recently took a look at the server logs for the GO service over the past 29 days (September 22 – October 21) and thought it might be interesting to share the most-used shortcuts and their aliases.

  1. 3,317 hits per day — go/webmail, go/mail, go/email
  2. 1,220 hits per day — go/bannerweb, go/bw, go/ssb, go/timeentry
  3.    759 hits per day — go/keysurvey
  4.    649 hits per day — go/papercut
  5.    550 hits per day — go/lib, go/library, go/libraries, go/read
  6.    546 hits per day — go/middfiles, go/midd+files
  7.    527 hits per day — go/coursehub, go/hub, go/course+hub
  8.    444 hits per day — go/moodle
  9.    393 hits per day — go/menu, go/menus
  10.    371 hits per day — go/directory, go/dir

While some people access these shortcuts by clicking on links embedded in our various web sites, the vast majority are directly typed into users’ browsers.

Which shortcuts (one of these or others) do you find most useful in your normal day?

Group support added to WordPress

We are pleased to announce the addition of a much-awaited feature to our WordPress site network. As of today groups added to sites can automatically maintain their membership over time. Site administrators will no longer have to go back into WordPress and regularly bulk-add groups to grant access to new group members.

In the WordPress Dashboard
When you add users to a WordPress site by group the new default option is to keep the group in sync:

Adding a new group to a site, keeping the group in sync.

Adding a new group to a site.
Note the new “Keep in Sync” option.

All users currently in the group will be added to the site with the role you specified. Members of the group who already have a role with greater abilities will not have their permissions reduced. Members of the group who already have a role with less abilities will be raised to the role specified for the group.

The groups synced are shown in a list and can be removed if desired.

The groups synced are shown in a list and can be removed if desired.

Over time, as people are added to the group, their roles in the site will be updated whenever they log into WordPress. If a person is removed from a group they will have their role in the site removed when they log into WordPress if their role hasn’t been manually changed to a different level.

More details about group-synchronization are available in the LIS Wiki.

In the Course Hub
In tandem with this new feature in the WordPress dashboard, the Course Hub now automatically adds class-groups to WordPress sites when adding WordPress Resources. When you add a WordPress Resource to the Course Hub the screen now includes an option that lets you specify what role to give students in the WordPress site. (Instructors will always be administrators of the site.)

Choose which role to give students in the WordPress site.

Choose which role to give students in the WordPress site.

When you save the WordPress Resource in the Course Hub three class-groups (instructors, students, and audits) are added to WordPress site and kept in sync. Instructors no longer need to do the extra step of going to WordPress and adding the class-groups to the site. As well, new students enrolled during the “Add/Drop Period” will automatically have access to the WordPress site when they log in after their enrollment has processed.

The instructors, students, and audits groups are automatically added to WordPress by the Course Hub.

The instructors, students, and audits groups are automatically added to WordPress by the Course Hub.

If you delete the WordPress Resource from the Course Hub the users and class-groups it added will be removed from the WordPress site, however the site itself will not be deleted automatically.

Looking back at comment-spam in WordPress

In February 2012 we started noticing a large influx of new comment-spam coming into our sites.middlebury.edu WordPress system that the built-in anti-spam plugins weren’t able to handle. To combat this annoying plague we created a new plugin that instantly killed any comments trying to submit an “author URL” along with the “author name” and “comment text” now that the “author URL” field is hidden.

In the year and a half since this plugin has been in place across our blog network it has blocked an average of 40,000 spam comments every month.

| year | month | spam blocked |
| 2012 |     3 |       14,814 |
| 2012 |     4 |       19,956 |
| 2012 |     5 |       18,225 |
| 2012 |     6 |       15,937 |
| 2012 |     7 |       29,232 |
| 2012 |     8 |       24,073 |
| 2012 |     9 |       25,973 |
| 2012 |    10 |       42,514 |
| 2012 |    11 |       49,265 |
| 2012 |    12 |      106,128 |
| 2013 |     1 |      103,850 |
| 2013 |     2 |       72,944 |
| 2013 |     3 |       38,336 |
| 2013 |     4 |       35,125 |
| 2013 |     5 |       32,975 |
| 2013 |     6 |       35,011 |
| 2013 |     7 |       28,218 |

While some spam is bound to get past any automated filtering, we hope that these efforts have alleviated most of the hassle of dealing with spam comments in WordPress.

Change Moodle site availability from the Course Hub

By default, when you create a Moodle site it is set to be “not available to students” to give you time to add site content before students can access the site.

Unfortunately, the “availability” setting can be a bit hard to find in Moodle settings. To make this important setting easier to change and its current state more visible, you can now set its value from right in the Course Hub when creating or editing the Moodle Resource:

New Course Hub / Middfiles integration

New for the Fall 2012 semester is integration between the “Classes Folders” on Middfiles and the Course Hub.

When you put files in the HANDOUTS/ or SHARE/ folders of your class folder, a “Middfiles Class Folder” resource will automatically be added to your Course Hub site. This resource provides a link that allows students to easily browse the files without having to mount a network drive. There is nothing extra you need to do. Read on for more details.

Continue reading

Showing Lab Availability in Drupal

You can now let people know how many machines are available in Middlebury computer labs in your department, building, or campus-wide. Add the following short codes to any content in our Drupal site.

[labserver] Shows the total number of available lab machines on campus.
[labserver 65] Shows the total number of available lab machines in lab 65, which is LIB 105.
[labserver 65,43,58,15,13,14] Shows the total number of available lab machines in multiple labs. In this case I’ve listed all of the labs in the Davis Family Library.

To get the number for a lab, you can go to the main LabStats page and click on one of the labs. The URL will content some text like “id=65” and that is the number to use in the short code. The LabStats site also has a lot of other information about our computing labs.

Thanks to Petar Mitrevski for helping out with some configuration on the LabStats site to support this new feature.


Middlebury’s Web Presence – Presentation

The Middlebury community has a strong culture of creating and sharing, whether it is a story on the homepage, an exhibition at the museum or a project in MiddLab. These sites balance visual appeal to keep our visitors engaged with what we are doing, with organization that makes the the abundance of information easy to find. Aligned with these goals is integration of social media elements that allow internal and external visitors provide comments and additional information and we push content to audiences in Twitter and Facebook.

We have been tracking activity across our web sites since January, giving us some good information on how our web sites are being used. Here are some high level stats based on data collected from January 1 – June 30 2012 across over 550,000 pages.

Visits: 3,933,170
Unique Visitors: 2,236,190
Page Views: 12,227,234

We are averaging over 3 pages per visit, with the average visit lasting over 3 minutes.

No surprise that the most visited page in our web presence is the homepage, receiving over 2,000,000 visits during the 6 month period. Placement can change based on the time of year, but the other top pages include academics, athletics, the portal pages, the online directory, and our login page.

To support these types of web sites and pages we have a number of platforms that we use.


Middlebury Web Presence – Presentation

Three main presentation platforms

Drupal – an application framework that we use to build CMS applications for the Midd and MIIS main sites, Davis United World College Scholars, Davis Projects for Peace and the Museum. Content is a mix of static (text, images and media stay the same until someone changes it) and dynamic (feeds of information update from other sources, like 25Live and blog rss feeds).

WordPress – self-service and flexible platform, supporting over one thousand sites. Provide the ability of the site owner to change the look and feel through a number of themes, and turn functionality on and off as needed. WP allows for the display of dynamic and static content. A number of plugins allow for pushing content to social media platforms, as well as pulling in content from resources like Google Maps.

Kurogo – modular framework for adding condensed views of content throughout our web presence, currently drives the mobile dashboard, the portal and the constituent gateways. The service contains very little content, almost all of the text, images and media are pulled from other sources.

There are other platforms that either support the presentation of web content, or provide a presentation for information that lives in another system.

Calendar: 25Live – generates the main calendar view, as well as spuds for individual departments. Provides a presentation layer for information in R25.

Course Catalog – Presentation layer of course information stored in Banner. Also provides course listings for academic departments and faculty.

Dining Menus – Presentation layer for our menu system

GO – a shortcut service and a way to keep persistent urls as web sites change. The addition of QR codes for every shortcut has made this a valuable tool for our print media.

Mediawiki – rarely used to build a web site because it is not easy for a wiki owner to provide an appealing look and feel, but the tracking and discussion features are useful for a site that requires a lot of collaborative editing for all content. This is the same platform that runs Wikipedia.

Middmedia – an interface to media storage, it provides embed code for audio and video streaming as well as direct links for download.

This post is a follow up from the Middlebury’s Web Presence – A Few High Level Snapshots post. Next up will be an overview of our curricular platforms.