MyUW 2016-10-25 release


Today MyUW promoted a new release to production. This post highlights some aspects of this.

Edits:

  • Updated to reflect new name uPortal home and new git repository location for what was once called AngularJS-portal

This release

This release upgraded MyUW to uPortal home v5.4.1 from v5.2.4.

Highlights for Apereo community

  • Continued implementation of Material Design. Piggybacking on Google’s Material Design in higher education web applications is an opportunity to raise the baseline for design and consistency without having to invent and maintain that design guidance using scarce higher education resources. To the extent feasible, we’re trying to use MyUW design resources on unique-to-MyUW design problems rather than on web-application-general design problems. Also, Material Design theming is rocking the skinning problem, supporting different color treatments across the many Wisconsin system campuses MyUW serves.
  • Continued development of lightweight notifications technology. Notifications now have optional associated actions and more options for priority treatment and end-user option to dismiss unneeded notifications.

Lessons to learn

  • Semantic versioning is important. We had a hiccup in this release because a rest-proxy change wasn’t backwards-compatible as regards endpoints.properties. In retrospect, the properties file configuring this product is its API so breaking changes would be better signaled with a MAJOR version change (and avoided when not strictly necessary).
  • Deep linking is important, enabling better communication about and leverage of content in your portal. This release fixed support for deep links into uPortal home content.

Calls to action

Talk about what you are doing.

It is only possible to discover opportunities to collaborate, to share code, to compare notes on the practices of portals in higher education if we talk about what we are doing.

Adopt and collaborate on microservices.

You don’t have to adopt everything MyUW has adopted to find something that would add value to your local projects.

Likewise, maybe you’ve got some microservice projects and products we could be collaborating on if we knew about them.

Adopt uPortal home.

uPortal home is a modern user experience layer to plop down in front of your uPortal.

  • You don’t have to adopt it all at once, for everyone, for every user experience in your portal. MyUW variously implemented it as opt-in, opt-out, at certain hostnames, for certain identities, for certain experiences within MyUW. It’s been a long walk using the new technology for more and more experiences, and we’re still using the traditional uPortal rendering pipeline to render some maximized portlet user experiences. uPortal home is engineered to be flexible because it had to be.
  • You don’t have to stay stuck on AngularJS 1. We too want to migrate forward to AngularJS2, when time and technology allow.

Andrew Petro

Related Posts

CAS 6.0.0 RC4 Feature Release

...in which I present an overview of CAS 6.0.0 RC4 release.

Apereo CAS 6.0.x - Building CAS Feature Modules

An overview of how various CAS features modules today can be changed and tested from the perspective of a CAS contributor working on the codebase itself to handle a feature request, bug fix, etc.

CAS 6.0.x Deployment - WAR Overlays

Learn how to configure and build your own CAS deployment via the WAR overlay method, get rich quickly, stay healthy indefinitely and respect family and friends in a few very easy steps.

Apereo CAS - Jib at CAS Docker Images

Learn how you may use Jib, an open-source Java containerizer from Google, and its Gradle plugin to build CAS docker images seamlessly without stepping too deep into scripting Dockerfile commands.

Apereo CAS 6 - Administrative Endpoints & Monitoring

Gain insight into your running Apereo CAS 6 deployment in production. Learn how to monitor and manage the server by using HTTP endpoints and gather metrics to diagnose issues and improve performance.

Apereo CAS - SAML2 Metadata with MongoDb

CAS distributed SAML2 metadata management using MongoDB, where you learn how to store metadata documents inside MongoDB for CAS as a SAML2 identity provider and all other registered SAML2 service providers.

Apereo CAS - Slurp Configuration with Groovy

Learn how CAS configuration may be consumed via Groovy to simplify and consolidate settings for multiple deployment environments and profiles.

Apereo CAS - Configuration Management with MongoDb

CAS distributed configuration management using MongoDb, where you learn how to store and secure CAS configuration settings and properties inside MongoDb.

Apereo CAS - Integration with HashiCorp Vault

CAS distributed configuration management using HashCorp Vault, where you learn how to store and secure CAS configuration settings and properties inside Vault.

CAS 6.0.0 RC3 Feature Release

...in which I present an overview of CAS 6.0.0 RC3 release.