Our work is changing, as is really the entire nature of what many of us call work. Thanks to the World Wide Web, our ability to create and share resources has never been greater. The Design Mission is going to be getting back to its roots and has started a new project for inquiry based curriculum; Inquiry-Teaching.com
Look for new and returning lesson plans with an inquiry and active learning focus to be live in August of 2017. We’ll continue to update the site with new lesson plans and resources. In two years, we hope to be doing nothing but curriculum writing as our work focus.
While we like to focus on Open Source software, sometimes, there’s not much offered in a specific category. So far, we’ve not found a very good diagraming tool in the Open Source world. Open Office and its children have a fairly good tool, but these don’t have all of the features we really need to work in the business world. One key piece lacking in the OS world of diagraming tools is the ability to export to Visio format for cross platform compatibility.
OmniGraffle from the Omni Group is what we use extensively here. It’s made for Macintosh only, but covers more than we could ask for in terms of ease of use and it does export to Visio format for PC users to import and use, too. With OmniGraffle, one can build complex diagrams for infographics, network diagrams and process flows. The available objects are easily extended and one can add more “stencils” quite easily.
I suppose it sounds funny — thinking about how to managing disruptive work. If it is disruptive, how can one manage it, right? Most people have plans for their day, goals or tasks that they hope to accomplish, and many (perhaps most) people also have the kind of work that one simply cannot plan — things that halt, or turn sideways, all of those big plans you had for your day.
My place of employment has what is known as an “open environment” – no cubicles, an open floor plan, with lots of people in a common area. The theory behind open environments is that with no barriers, there will be more communication, sharing and collaboration. In theory, that’s how it’s suppose to work, and it may well do so for some. For me, however, it means wearing headphones and listening to music or something to provide white noise as a sound blocker is now an imperative. (This blog post, “Why Open Floor Plan Offices Suck, Hurt Employee Productivity & Satisfaction” nails it for me.) I’ve consequently become a Ninja at managing disruptions.
Here are the things I find work for making a disruptive work environment less so: Read more →
Writing documentation and specifications for developers is a big part of my day job. Writing clear, concise documents is very challenging. It’s one thing to write notes for yourself, quite another to explain complex systems and the desired outcome to others. Not only is determining a format or standard way of writing things important for clarity, but so too, are the tools one uses to communicate. This post will focus on the tools for sharing documentation and specifications.
The standard documentation and specification writing tool of most businesses is Microsoft Word, Visio for diagrams, and Excel for spreadsheets — or other similar tools such as Open Office, Apple’s Pages, Numbers and the Omni Group’s Omnigraffle. I have used all of these, but found each lacking in one fundamental way; they make ongoing “knowledge transfer” difficult, if not down right impossible.
When I say “knowledge transfer”, I mean the ongoing care and feeding of systems, troubleshooting a problem or implementing an enhancement to an existing system, or set of systems. Unless the developer, project manager or end user knows where to find the original documentation, be it a specification or write up of a process, it is much more likely that these individuals will seek out any human specialist thought to know about this program or system first and ask for a verbal “download” and knowledge transfer meeting. Not really something that is efficient in the long run as it relies on the ongoing staffing of these so-called specialists. I for one don’t want to be the first stop for questions about systems and programs I have documented in the past — I want my documentation to be the first thing end users turn to for help and guidance. Document management tools such as SharePoint, LiveLink and others help by providing a search function, but I have yet to see anything beat a simple wiki for knowledge transfer. (My favorite wiki being DokuWiki.) Hands down, they win out.
Let’s compare using SharePoint and Word/Visio/Excel to using a wiki to better clarify this comparison. When using SharePoint, an end user can search the contents of the SharePoint site and get a really excellent search results set showing screen previews of Office documents, filters for last updates and more. (Truly, the search results in SharePoint are great.) However, if all of the information is stored in a file, the file must be downloaded, or at best viewed online and edited with browser plugins. A large dataset of Office files also becomes something that must be indexed regularly and is processor intensive. What’s more, there’s ample opportunity for the document to be shared with others outside of the document management tool which may be seen as beneficial to some people, but for me is tantamount to storing the same data in several places with things quickly getting out of sync.
If all of the documentation is done directly in an easy to read, highly searchable wiki page, then even the questions the end user may have can be added directly in the document with updates and improvements to the documentation being done by the community of users. Every wiki I’ve ever seen tracks changes well and is extremely searchable – this is exactly what wikis were created to do. There is no additional application needed, you just use a web browser.
So why not use a wiki for both your documentation, specifications and runbooks all in one fell swoop? If even somewhat organized into separate namespaces, a single wiki can provide an organization with a very powerful knowledge transfer tool that doesn’t require any desktop application or special licenses. Diagrams are really the only tool one needs an application for to create outside of the wiki. (I would also argue for using a diagraming tool such as Open Office’s drawing tool, Visio or Omnigraffle – a future post on diagraming seems like a good idea.) A single reference point for all documentation helps prevent fragmentation of the process documents and helps facilitate a culture where knowledge transfer is done routinely, and information hoarding is no longer the norm.
[I’ll be updating this post shortly with some tips for how better to construct a wiki page, too.]
Who do you go to when disaster strikes? I’ve been told I’m a good problem solver, and am often a “go-to” person for others when there are difficult technical issues to resolve. What am I doing to be tagged in this manner? Note, I don’t know that I actually believe I am better at solving problems, I’m just aware that I do indeed work and get paid to do so, frequently.
I decided to put together a list of attributes that I think make for good problem solving in the technical world. I hope this perhaps helps others. I am more than open to feedback for improvement on this list – please weigh in if you see something missing or that can be improved.
Traits of a Good Problem Solver
Has A Good Memory
If you can’t remember what systems are “touched” by a specific action, you’ll be forced to rely on others that do. Or you will have to look up and research these dependencies on your own first, or discover them in a longer, even more painful path.
Solving a technical glitch can be difficult, especially when it is something that is difficult to reproduce. The most difficult problems I encounter are the ones that appear to happen randomly. The reality is that with a technical issue, this is really never the case; the challenge is in determining what conditions must be met to reproduce the issue. Is it only happening on a specific server? Could it involve caching? Have we established the exact steps taken to create the issue? What conditions in our testing environment might be missing in the production environment that could be part of the cause? It takes persistence to work through all of these permutations.
Has Patience While similar to persistence, this is a different trait in my view. Perhaps an example will help highlight why I think so. Often in web development or other technical fields, we are working on custom code or at least an integration of something in a unique environment. How long will it take to figure out what’s wrong when you are diagnosing something that perhaps has not been seen by others before? It could be two minutes due to some clarity or luck, or two days, or even weeks. Being patient and persistent is what will get you through these sorts of problems.
Documents Everything Very similar to having a good memory, being one who documents everything, including problems and their resolution, really helps problem solving. Have we seen something like this issue before? What did we do to fix it before? There’s nothing worse to me than diving down the same rabbit hole because you forgot how your resolved an issue previously. Write it down in a tool that has good search features, like a wiki, or Evernote.
Can Write Effective Search Engine Queries
Learning to broaden or restrict your search query is a skill. So is knowing what keywords to include in your search. LetMeGoogleThatForYou.com is often used as a joke by me as a none-too-subtle means of poking fun at someone’s poor attempt to solve a problem, but there are skills to using a search engine for sure. Develop them!
Has a Process for Change Management The first question I always ask when there’s a problem reported at work is “What’s changed?” Having a good change management system in place with a code repository as well as a testing->stage->production deployment path for your code makes answering this question easier. If code hasn’t changed, how about data? If neither, is there a new browser or an update that has been rolled out? Some other environmental variable change? Stable systems don’t usually just “break” — something has been changed that caused a problem or exposed an issue kept hidden previously.
What other traits make a good problem solver for you? Please let me know what you think.
I’ve been with 1and1.com for hosting for many years and by and large have been happy with their services. (Note, not necessarily their service, but their services.) One thing that 1and1 had always done well was spam filtering. Until recently that is.
Either they have changed their real time blacklists, had a few points of failure or spammers are simply getting better — maybe all of the above, simply put, the amount of spam I was receiving on an hourly basis was greater than my legitimate email. I contacted 1and1’s support staff on multiple occasions, tried different settings and such, but was still getting about 20-30 spam messages in my inbox every day. Something had to be done to keep my email clean and return it to be a useful tool.
Spam adds up to lost time very quickly for me. I check mail often at work and like to be able to respond in a very timely fashion to requests, issues, and such. Spam makes me not want to check my personal email but every hour instead of continuously. So many times the email notifications would be for nothing worthwhile at all. Worse, I was losing legit email in the midst of all of this garbage, too.
I didn’t give up on getting email under control even though 1and1 wasn’t able to resolve the issues. Instead, I decided to use Gmail; my domain’s email is now managed via Gmail’s Business Apps program. Given I only need about 4 email accounts, I’m also able to get by with the free version. I know other people who use all of the Google App features, but for me, getting a handle on spam is worth it all by itself.
UPDATE: As of November 2012, Google has stopped offering this free version. We were very lucky to be grandfathered into the free setup. If you’re having trouble with spam, the $5 per box per month charge is still a great deal in our view.
I don’t yet use Google Voice as much as I could, but have to say, the service is pretty incredible. My need for a second number, much less a primary phone number, is really not that great; I onlydo business via email and have for years. It’s one of the ways I keep my freelance time from intruding on my full time employment and rightly so.
From Google Voice’s introductory email you can get an idea of some of the things it can do for you —
Welcome to Google Voice. Google Voice gives you
a single phone number that rings all of your phones,
saves your voicemail online, and transcribes your
voicemail to text. Other cool features include the
ability to listen in on messages while they're being
left, block unwanted callers, and make cheap
international calls. We hope you enjoy using Google Voice.
If you need a secondary phone number, or a means of filtering your calls for business, this is a free solution.
Want to transcribe your notes? Setup a Google Voice account and call yourself. Voilà! It’s free, too.