loading...
Cover image for Matt's Tidbits #54 - Caches, deployments, and IT - oh my!

Matt's Tidbits #54 - Caches, deployments, and IT - oh my!

mpeng3 profile image Matthew Groves Originally published at Medium ・4 min read

Last week I reviewed my first year of tidbits! This time, I have a story (and some lessons learned) to share around a recent website deployment.

As anyone I work with already knows, I recently helped deploy a new internal web portal for our team. This started as a simple project to re-launch a page we used to have that had everyone’s photo and some interesting facts (tidbits?) for each person listed on it. Over the past several months, this morphed into a much larger initiative that involved gathering requirements, research, design iteration, pitching the idea to internal stakeholders, etc. What we landed on is a whole new site built using Microsoft Sharepoint that allowed us to integrate with existing contact & calendar systems. In addition to the “team bios” page with everyone’s photo & a short bio, we also have an events calendar, hosting for our newsletter, a blog where people can write about the cool things they’re working on, and links to important information.

It has been really fun getting to work on this, but also frustrating at times. One of the most critical parts of the site is having people’s profile photos appear — that meets the requirement of having a way to figure out “who is that person I just saw”, and is instrumental in bringing people together. I thought I had figured out how to have people set their profile photos, but several weeks ago I discovered that some people’s photos were not appearing. I tried calling the help desk, but they didn’t know how those systems worked. I tried submitting a ticket, but it got kicked back too. Finally, I managed to get a little time with a local tech support person who helped me troubleshoot further. They were very helpful, but inevitably put me in contact with yet another group of people. Everyone agrees that there is something wrong (some sort of caching issue), but nobody seems to know who to ask to look into this further.

Anyways, with that in the background, we decided to push forward with the plans to deploy the site last Friday, and hope for some resolution. The deployment itself was carefully planned and tested (verifying that people from each of our different offices is able to access the site properly, planning out the rollout/announcement of the new site, etc.) Needless to say — I have much deeper appreciation of (and sympathy for) my web developer colleagues — these things are not easy to do!

And, as you might be expecting, there were a few hiccups. Things were going well, until I had added everyone to a new group (that was set up to have automatic read-only access to the site) and started getting notifications of people requesting access to the site. Confused, I checked and it looked like only 50 of the ~200 or so people I had added to the group had access to the site. I tried refreshing the page — no change. I tried manually adding people to the member list for the site — that failed. Then the panic started to set in. I sent out a message to my group alerting them of the delay. Unfortunately, I don’t have access to any of the more powerful site consoles — I’m only a single-site owner.

Just when I was about ready to give up, one of my coworkers sitting near me noticed that they suddenly had access. So we tried someone else… And theirs worked too! I quickly went and found the last person I had added to the group, and even theirs worked! The count in my own browser still only showed 50 people with access, but we decided to proceed with the announcement of the site, and it all worked!

Immediately after the launch, one of my other coworkers noticed that we were seeing different things — he saw the full list of people in the group, and his profile photo, which was missing from my laptop, showed up on his. At his suggestion, I cleared my browser’s cache, and voila! Tons of new photos suddenly appeared.

I still don't have a definitive answer on how long it takes for people's pictures to appear, or why some won't show up, even though they were set months or years ago, but at least more of them are showing up now.

So, what did I learn from this?

  1. Web deployments are hard — it is very difficult to account for everything, whether it’s differences in environment, or how the site will respond to demand at-scale, or the dreaded “why doesn’t this work in IE/Edge/Safari/etc.”
  2. Browser caches can hoard stale information — if you think something should be up-to-date, try clearing your browser cache and see if it fixes the problem. If it does solve the issue, and you can help control how your web page is built, you may want to look into reconfiguring how the cache-control for various elements on your page works.
  3. Being able to talk, face-to-face, to a real person about a problem you’re facing is so much more productive than waiting for a response to an email or support ticket.
  4. It takes a team to build something like this — thanks to Rachel, Ross, Christine, Molly, Katherine, and Kathy for all of their help!

I hope you learned something, and if you ever have questions about Sharepoint sites, I might be able to provide a tiny nugget of advice. What are your caching/deployment horror stories? Let me know in the comments below! And, please follow me on Medium if you’re interested in being notified of future tidbits.

Interested in joining the awesome team here at Intrepid? We’re hiring!

This tidbit was discovered on January 31, 2020.

Posted on by:

mpeng3 profile

Matthew Groves

@mpeng3

Software engineer with 10+ years of professional experience in C++, C#, Java, and Kotlin.

Discussion

markdown guide