Scott Smith


So, I dug out my old Boccia that I haven’t worn much since I got my first Apple Watch. It doesn’t have the same fit and finish as my Apple Watch; its band is not as easily swapped. It does not display the weather. It does not tell me when I should get some exercise. But it feels nice.
Source: The Apple Watch Turns Four: Some Thoughts — Pixel Envy

I am going to write about the Apple Watch at some point in the future, as I have had a lot of mixed thoughts about it. In the mean time, Nick Heer has really got close to a lot of similar feeling's I've had.

Read This Link

Source: Microsoft Provides Sneak Peek of Edge on Mac, 16 Years After Safari Replaced Internet Explorer - MacRumors

Microsoft moving Edge over to Chromium has been such a big story this year in the web development world and now we have a preview of the upcoming Mac version.

In the very early days when I was first learning about web design, I remember when Internet Explorer 5 on the Mac was released with a big splash. It was ahead of it's Windows cousin in terms of page rendering and offered a theme selection to match your candy colored iMac.

Today, I see this about Edge coming to the Mac and have to wonder who is this for? Other than web developers who are going to test their site while using a Mac, what is the selling point for non-developers?

Read This Link

As someone who has used jQuery for many. years and has recently become a Vue convert, I thought it would be an interesting topic to discuss the migration process of working with one to the other.
Source: Making the Move from jQuery to Vue | CSS-Tricks

When I first starting to work professionally in web development ten or so years ago, jQuery was the all the rage as it was addressing a lot of short comings of native Javascript in that era. As time has gone on, native JS has pretty addressed all of those short comings. Although the main website I work on has carried over with jQuery, I wouldn't touch it at all in 2019 for any new site I would be building.

That being said... I really like working with Vue and for now it is addressing a new set of shortcomings that hoping will be superseded at some point in the future by Web Components and other new-age native features.

Having worked more than a decade now on the web, it is safe to say that the more things change the more they stay the same.

Read This Link

The Cal Lutheran website runs on Google’s Pagespeed Apache module to automate certain cache settings, CSS rewriting, image compression, and a host of many other page loading performance related enhancements. Since CSS stylesheets are generally considered to be static assets on a site, they aren’t expected to change often between user visits. This is where PageSpeed’s caching and rewriting helps us with getting that critical above-the-fold CSS delivered to the browser. If a page is not yet cached by PageSpeed, it will load a javascript on the client side to analyze what CSS declarations are likely to be needed to paint the page above the fold. This chunk of CSS code is then injected in a style tag at the top of the page. Every subsequent reload is pulling from that same cache. This greatly helps with page performance as the first visible CSS is loaded immediately.

This works great until you need to push out a new change to a stylesheet. While the cache does have a timeout until the next refresh, there are times when you need to force out an updated stylesheet out to visitors. The first way to do this is to add an additional parameter to the filename, such as styles.css?v=1. The browser will see this as a new file and be force to make a request to the server for a new version. Making additional changes on that version number will continue to force new versions, however this isn’t exactly sustainable to manually update every time.

How can we automate this in OUCampus? In our main XSL file used for template transforms, usually common.xsl or template-matches.xsl, I added a template match to catch all stylesheets requested off our own domain and append that version parameter to the filename. Instead of incrementing a number as I mentioned above, it is using the current timestamp as of publish as the versioning number. e.g. styles.css?v=4-29-19