Another year, and we are ready for another round of Connect.  What is Connect?  Connect is the 4 days before fall term classes begin. It is a chance for new students to begin to “connect” to OSU. There are a range of activities that help to connect you to academic resources, discover all the ways to get involved, learn about traditions and meet other new students.  With this year’s connect we are launching version 2 of our OSU Connect App.

 

Connect Events Screen     This version, available for Android and iOS, will feature the OSU Scholar Symposium events, and the ability to “favorite” events, by dotting the O.  What you don’t see is all the work put in behind all of this to adapt to an upgrade in the framework we are using by Appcelerator.  The Alloy framework introduced MVC programming into Titanium, and with the help of staff and one of OSU’s very own computer science students, Seth Toda, we’re refactoring the code to make it more modular.  This will enable OSU to be able to launch our apps faster and add features faster as well.

 

So look for the apps and app updates in the iTunes Store and Google Play store, and don’t forget to keep your apps up to date.  To the new students arriving at OSU, it is time to Connect.

OSU Search is powered by a Google Search Appliance. One of issues we’ve had to overcome from day one is the relevance of search results. One of the main criteria for search result relevance is how many pages link back to a page to figure out how relevant a search result is. This is one of the areas where OSU Search can’t keep up with external search engines like Bing, Yahoo or Google because OSU Search crawls, and is only aware of, OSU related websites.

In other words, if a site is being linked to by many external websites or groups this information is not used by OSU Search to improve results.

The good news is that the Google Search Appliance has a feature called Self Scorer. With this functionality turned on, the search appliance can improve the search results relevance by observing which links the users click on after they do a search. We had this feature turned on, but since we don’t use the search appliance directly, we weren’t taking advantage of it. In the latest version of OSU Search, we ported this feature over. Now, whenever you do a search in search.oregonstate.edu, the search appliance will make a note of what search result you clicked on and if enough people click that search result, it will move it up the list. This should make a difference in the relevance of search results end users see.

Another advantage of having the Self Scorer enabled is that we can run advanced search reports. What this means is that we’ll now be able to get reports that tell us things such as:

  • The ranking of the search results that people are clicking on, or
  • How often people use the next/prev links to find what they’re looking for instead of finding it on the first page

This extra data will allow us learn how useful the information that OSU Search is for different types of search queries, so that we can improve them.

One of the issues that had plagued EvalS (an evaluation performance application/portlet) from the beginning was a performance issue. EvalS was the first jsr 286 that we wrote for the Luminis portal. During the first several releases we worked hard to improve the performance by reducing the # of queries and caching whenever possible. In the past, whenever a person would first load the portal page containing EvalS it would take about 5-6 seconds for it to finish loading the page.

This EvalS performance defect affected all users, only after their initial login. This type of performance was not something we were proud of, so over time we worked on improving the code base, and performance of the backend code. A few months ago, we dedicated some resources to finally fix the problem once and for all.

Our initial assumptions were that the EvalS specific code was slow due to it not being optimized for the number of employees and jobs at OSU. This assumption proved to be incorrect once our development environment included enough random data to match the amount of records in production. After a careful analysis of EvalS and the differences between production & development, a small piece of code external to EvalS, but which EvalS relied on was the identified as the culprit.

The problem:
When a person first accesses EvalS, the application needs to figure out the ONID username of the person. It was this piece of code causing the problem and slowing down the application for the person when they first logged into the application. We never expected this piece of code to be a problem, that’s why we didn’t look into it at first.

The Luminis portal doesn’t store the ONID’s username in the User_ table of the portal. Instead it uses a random # and stores it in the “screenName” column. This is the column where the ONID username would usually be stored. We use an sql query to translate between the random Luminis # assigned to each user and their ONID username. One of the joins this query was using didn’t contain the necessary indexes. This was making the query slow.

The solution:
The fix was rather simple once the culprit was identified. The owner of the external query created a new table that we queried instead. This table contained the necessary data along with needed indexes. EvalS now queries this table and the speed has improved drastically.

We should have challenged our assumptions when we were troubleshooting this performance issue, but we have learned some valuable lessons from our mistakes, which will be helpful in the future. In current and future projects, we now test & analyze the performance of the application early during the development stages. Our development environment now includes enough random data to match the amount of data in production and allow for growth.  Moving forward in this way allows us to demystify application behaviors.

On Monday, February 18th, if you hadn’t seen information about or attended the training sessions, Central Web Services and Media Services released a new version of Kaltura’s MediaSpace.  This is version 4 of MediaSpace.

The new version of MediaSpace, OSU’s open source and cloud-based media solution, integrates many requested features and some important new functionality, including privacy / access control, captioning, HTML5 support, and improved layout.

One of the best ways to understand the new features is to watch the video in MediaSpace about the new version.

Every department hopes for collaboration and cooperation among all of its members. Here at Central Web Services we are working towards making that a reality. In September, our office had a face lift. Out went the dull grey cubicles and in came new wooden desks and an open work space. The removal of the cubicle walls created an open and inviting workspace. Here are some pros and cons we’ve noticed since the redesign:

 

Pros

  • More space in the office
  • Easier to talk to one another
  • Collaboration among different areas within the department is easier
  • The office appears brighter and more inviting
  • Seeing who’s in the office at a glance

 

Cons

  • Nosier at times
  • No cubicle walls to hang things on
  • Spontaneous drop-ins by visitors can cause more disruption then previously

 

Although there was some hesitation on taking down the cubicles, we all agree that the change in the work environment has helped strengthen the team dynamic.

Connect IconWith the beginning of a new school year just around the corner, something big has been brewing. Connect Week is all about connecting new students to Oregon State through events that introduce them to the different resources available on campus. Since the events are not restricted to just new students, they have the opportunity to connect with returning students who have already been through the ropes and can give them some tips. To help with the transition, this year there is a Connect app! The app helps you:

 

 

  • Keep track of the new student events
  • Get up-to-date info through social media sites like Twitter and Facebook
  • Information about the assortment of food options  open on campus at the time
  • Connect week FAQs
  • Connect week and new student news

 

What did the lead student developer, Nicole Phelps, have to say on the release of her first official app? “The OSU Connect app is a great way for students to get involved at OSU’s Connect week. Its theme is ‘Connect the Dots’, so I see it as an allegory for how each new student comes to the school with a blank slate, ready to connect their own dots.” You’ve connected the dots your whole life; from connecting the dots to discover the picture on the page to connecting the dots between classes to earn your diploma. Now you can use the app to help you stay connected at OSU while you earn your degree. It’s a connection to important up-to-date information on what’s going on and where to be right on your phone. This app provides a searchable campus map for the term (or multiple terms if you have luck like mine) that you have a class in a building like Wiegand Hall and you have no idea where it may be. Its list of the open food establishments on campus keep you informed and on time for meals. I wish I would have had an app like this during my first year on campus to save me from learning the dining center hours the hard way and showing up too late for a meal. Save yourself from the disappointment of missing new student events, and meals, and check out the app for Android and iOS!

 

iOSU Flash Screen

It’s here!  Central Web Services and the iOS App Development Club have been busy over the last several months getting the next version of the iOSU App for iPhone ready to release to the Apple store.

So…why did it take us such a long time for our next release?  In the initial release, we identified a number of items that needed further investigation to fix some quirks that existed.  It also took us a little time to get the specifics going with the iOSU App Development Club.  If  you are a student and don’t know about the club and are interested in iOS App Development, you should visit the Student Leadership Site and search out the group.

Why did we wait and not just put up to the store a while ago when we  did our initial beta release? It was important that the App be of a quality level high enough for us to put up, and we were waiting for the budget to have additional training to enhance our skills so we could move in a knowledgeable and purposeful direction.  We were able to go forward with the training in August of 2011.

After the onsite training by a company named Appcelerator we learned a few better methods to develop for their Titanium platform, so we have taken that to incorporate a couple new features with the addition of Videos and iTunesU to the App. While we were in our beta phase, we received some good feedback, through the use of the feedback method available directly in the App!  We also received some small praise on its value, with one person even using it from India to look up contact information back at OSU.

iOSU Dashboard

For the current release, we’ve incorporated some of the feedback, and made some additional changes, such as the removal of the mobile site button, and a few other other enhancements.  And of course what would a release be without fixing some previous bugs.

What was the process we went through for this release, you ask?  We planned for a release prior to class start as part of our roadmap and strategic planning.  After releasing 1.1.0 to our Enterprise customers (that is everyone at OSU), we discovered a few additional bugs that delayed our originally scheduled pre-start-of-classes launch.  So we went on to version 1.1.1 to do some additional fixes, and then on to 1.2.0 for a few more feature changes.  After checking against iOS5 and those pesky last minute fixes, we were ready to go.  The next step was to go through the various steps to get an App submitted to the Store.  For those who don’t know, it’s a step process, where we have to enter all the various information you see, submit images that you see on the store, and then submit the built app for Apple to review.  Once Apple reviews, and the App meets Apple standards, they send us a notification that it was accepted.  At that point it is ready for the World to download!

iOSU Dashboard 2Now saying all this do we, as a Software Organization, expect a 100% bug free application?  Not at all.

However, we will fix the issues that we see or hear about, as we did with version 1.2.1 which came out shortly after to fix some bugs that came directly from your feedback, and some accessibility issues that we noted ourselves.

There is of course still more to do working with partners around campus to deliver more features, and for all the Android fans, we haven’t forgotten about you. The purpose of the training was also to take what we have and deliver an Android app in the near future. So that will be coming. Stay tuned!