Adding Viemu to the Toolbelt…

October 12, 2010



Since I’ve been using MacVim more and more in my personal development projects, I’ve grown to have a significant amount of muscle memory. Pretty frequently now I find a string of ‘jjjj’ in the middle of my C# code as I’m trying to take a look at what it’s doing. So I figured it was time to explore the possibilities of getting viemu up and going. The biggest hurdle was my concern about losing CodeRush/Refactor Pro! support. I am heavily dependent on them so they had to play nice together. Good news. This worked out of the box. After a quick install of viemu and a firing up Visual Studio, I was off and running.

Small tweaks

I did have to make a couple of small adjustments. First was my key re-mappings. In my configs , I snagged a couple of key mappings that I’ve found really helpful. I needed these same behaviors in viemu in order to take advantage of all my muscle memory. The key was creating the .viemurc file in my home directory since it picks that file up by default.

I also had an issue with colors – I prefer dark themes both in vim & Visual Studio. By default, the highlight in viemu clashes so strongly with my theme that I had to disable it. I couldn’t get it to switch up the color schemes appropriately either so I’m guessing I’ll have to dig a bit more to get that working but overall I’m pretty happy. If I find a way to get this working properly, I’ll update the post.

David O’Hara is a Principal with Improving Enterprises in Dallas, Texas.


Introduction to CodeRush: Part 1

September 1, 2008

I believe that anyone not using a productivity tool with their IDE is wasting time and, quite possibly, ripping off their employer/client. I don’t care if it’s CodeRush, Resharper, CodeSmart, or whatever but you should get a tool, get familiar with it and use it for everything it’s worth. I enjoy using the CodeRush/Refactor Pro! tools. As a matter of fact, I feel like I can’t hardly use Visual Studio without them. The only drawback I’ve found with CodeRush is that discoverability is just not there and with the vast array of capabilities, a lot of folks would rather do without than flounder so I’m hoping that this will help to ease that learning curve.

This “episode” is the first in a series screencasts I’ve been trying to put together for a while and I’m hoping that it will introduce the new user and maybe even show some existing users a few things that they didn’t know. I’m certainly no professional video editor so please excuse the quality while I try to find the right mix but I would appreciate your feedback.
Anyway, we’ll take a look at the structure markup that CodeRush does to help enhance readability and decorate code to make certain aspects visually evident. And we’ll be introduced to the mnemonic templating system and how just a few keystrokes can turn our intent to code.

Setting up GTD Contexts…

January 6, 2008

When breaking down your “stuff”, tasks get assigned a context. These contexts are an important piece for a functional GTD system since they allow you to quickly move to the next task based upon certain criteria without having to re-process your entire list of work. Given their key role in the system and highly personal nature, they’re also a big point of contention among practitioners. Here are a few things that I’ve found.

Context Types

Contexts generally fall into 3 types:

  1. Location based contexts – “Home”, “Work”, “Errand” (specific store)
  2. Tool dependent contexts – “Mac”, “Browser”, “Phone”
  3. People specific contexts – “Boss”, “David”, “Spouse” (please use their name)

Given the broad range of people and tools we interact with on a daily basis, this list could get out of hand really fast. If you’re trying to figure out what contexts For people contexts, I’ve found that keeping the top 5 people I see the most and the least handles most cases. If you’re unsure what your contexts should be, keep a log for a week. Record where you went, who you saw/talked with, what tools you used at regular intervals throughout the day and the compile your list from that. Don’t forget to record the weekend.

Be Wary of “Anywhere”

“Anywhere” is a catch all and can be a dumping ground so be careful. It should only be for “thought” items since your brain is probably the only things you carry with you 100% of the time. Personally, I skip it so I don’t have to worry about it getting out of hand but you could always rename it to “brainstorm” a la Merlin Mann. Don’t put “Read & Review” items on here – that’s just redundant.

One and Only One

Nothing should ever have more than 1 context. If you think it does, you haven’t thought the task through completely. “I could do this at home. Or at work if I have [noun]”. That noun should be your context not “Home” as it is your real dependency. Often times envisioning yourself completing the task will help in finding the right context.

Too Much

If a context gets more than about 15-20 items, it may be too general – or you may have committed to too much. Go back and do a fair assessment of your current commitments and see if you shouldn’t put off or turn down some of your projects. Trying to function with a list of that many items means you’ll have to re-process the whole list in order to figure out what to do next and that’s wasted effort.

To Tag or Not To Tag

Ok, so they’re not EVIL really unless you try to use them as contexts instead of what they’re really meant for – metadata. And, in my opinion, tags are not helpful since they simply expand the metadata around the task rather than adding to the effort to get it done. If you’re a total report monster, they’re cool to slice and dice but then I’d question how much work you’re getting done. I know I’ve burned numerous hours tweaking reports and graphs that later were completely useless.

Evolve your system. Change your contexts if you think that it will help – if you don’t like it, change it back or try something different. GTD is about find a setup that works for you within the framework.

David O’Hara is a Senior Consultant with Improving Enterprises in Dallas, Texas.

GTD Reboot…

April 2, 2007

I seem to reach a point at which I feel a driving need to change tools. First it was from paper to My Life Organized; then it was MLO to MonkeyGTD; now it’s MonkeyGTD to something else. Why do I feel the need to reboot my system?? Is it a symptom of not keeping things “squeaky clean” or just “tool-itis”?? Obviously if I’m rebuilding my system on a regular basis, I’m not getting things done so how do I stop this madness??

I know that there’s a tipping point which I must pass in order to really “get” GTD and most folks say it’s just time in the system as a whole but I’m beginning to wonder if system hopping is the same as pressing a reset button for myself.