For Want of a Scrollbar

The start of an adventure usually starts when I tweet an annoyance:

Who has two thumbs and regularly disables Sharepoint’s overflow: hidden CSS to re-enable the scrollbar? Me…

A coworker asked a good question, which is, “Any easy/lazy way to make it automatic-like?”

My response was a Greasemonkey script should do the trick. Okay, so, how to make it happen?

Pretty sure like me, my coworker uses Chrome. This is good, because in 2009 Chrome acquired native Greasemonkey script support. They are treated as Extensions. I like this because there is one place to look for the scripts rather than a separate queue like I am familiar in Firefox’s Greasemonkey plug-in.

So I found some pages on writing Greasemonkey scripts. What I wanted to do looked easy enough. Which, of course, meant I spent a few hours stumbling around the Internet confused why it did not work. In the end, I wrote this <filename>.users.js did the trick:

// ==UserScript==
// @name Sharepoint Scrollbar Fix
// @namespace http://sharepoint.oursite.com/
// @description Removes the overflow:hidden which is buggy in WebKit browsers
// @include https://sharepoint.oursite.com/*
// ==/UserScript==
document.body.style.overflow = “scroll”;

From my research WebKit browsers have an issue with overflow:hidden going back years. Chrome and Safari are WebKit browsers. (Guess I could have saved myself time just using Mozilla.) Using either overflow:scroll, overflow:auto, or even removing overflow brings out a second usable scrollbar.

Probably GM_addStyle is a better approach, but this one worked first.

Protocols matter. Most of the time I spent confused was solved by having http in the @include address when the Sharepoint site uses https.

Testing it was interesting as Google does not allow just downloading from anywhere on the Internet. So uploading it to my web site was not a good way to get it into the browser. Just open up Extensions and drag and drop the file in there. It prompts to make sure you are. In the end, it is much more efficient that way.

Conclusion: Pretty easy to create and test. Very lazy fix. The information online about making one is not great.

Any coworkers who want to use it, I added it to the Content area on my site.

Solving Internal Communications With Blogs

I'm blogging this.
I'm blogging this.

Through the grapevine, a coworker heard in another organization a top administrator wants the rank and file to start blogging. My coworker was opposed. I thought it could be a cool way of internally communicating. Though the conditions to make it work very much depend on the organizational culture:

    1. Encouragement not forced. Managers are asked to pay attention to the things about which the rank and file are proud or excited. Encouraging employees to post about how they created or solved things provides an outlet to express good pride. Something arbitrary like everyone must post something every week will become forced and a drain on morale.
    2. No rules or judgement from on high. The more rules there are around what employees should say or how will stifle them offering real ideas. Instead, only regurgitated ideas from managers would be offered. An echo chamber of everyone imitating each other becomes boring really quick.
    3. Peer judgment is not discouraged. Knowing my peers throughout my organization read this blog cause me to delete about 30% of the potentially work-related posts I start. I value what they think. When I realize what I wrote is not good enough, I am willing to dump it in favor of a complete rewrite or more time to think more to maintain my reputation. Self-editing to make sure I present only my best work requires me to understand myself.

Writing is a good skill to have. Writing for a blog is different than writing an email, a web page, a report, or a presentation. Like presenting, blogging is a useful way for an employee to grow in interesting ways. The hard part is the readiness people have and growing into becoming bloggers. One especially does not want them to become discouraged early. Because then you end up with a morale problem.

At work, we have a blog built into Sharepoint. While the CIO uses it, I am not sure it is the place for me. The audience there is internal to work. My audience is both internal and external.

There is also the idea getting the rank and file to blog is some kind of weird study in improving internal organization communication. Walking around to find out what everyone is doing takes too much time. Regular reports become, “I am working on exactly what I think you want me to be working on,” regurgitation. Blogging is an interesting and difficult to pull off right idea.