Going Paperless

It’s been the goal for a really long time - let’s get rid of paper and live digitally. Well, how are we (people… humans… earth dwellers) progressing and what more can we do to get there?

It’s takes a long time to turn a big ship. Actually, not that long, but so goes the analogy. And it takes a long time to change habits. Paper has long been an integral part of our world and for many - especially the older generations - hitting print is the ingrained habit.

I have a rather progressive grandma, but the average person over say 70 would not consider a picture a picture unless they were holding it. They wouldn’t consider themselves formally invited to a party without the ink and cardstock to prove it. And they wouldn’t imagine approaching the security line at the airport with nill but a weird QR code on their phone.

There’s a new generation afoot though. My son is 18 months old. I think about the things that I find commonplace that he’ll find bizarre and antique - home phones, thumb drives, CRT’s, wired mice, inkjet printers (not that I know what will replace them), and optical media (IMHO). Screwdrivers and shovels will still be staples (in the Foster home anyway), but anything run by bits will be altogether different when he’s old enough to form memories.

I recently did a Twitter poll and most of the respondents (as you would expect from people using Twitter) were at least 80% paperless. I do believe we’re making progress.

I recently witnessed a fascinating facsimile storm between my wife’s parents. She was visiting us here in Seattle and some “paperwork” needed to happen and it needed to happen NOW, and so they did what anyone in their place in our culture would do. They started faxing! The flurry took a few back and forths, and before all was said and done, I think there were some considerable charges racked up at our local FedEx Store. Would you believe it can cost $18 to receive a fax? Obviously it depends on the number of pages and I’m not sure how many there were. This is not an isolated event. There was actually a line at FedEx and I don’t think you’d be surprised to hear that it wasn’t the younger generation standing in line.

Now, obviously, you can’t go entirely paperless, because you’re still going to get the letter and photos from grandma, the junk mail in your mailbox, and the receipt at the store (Home Depot will email me my receipt and save my preference, but they still print the paper one too). But you can reduce your own personal dependence on the printed word and the number of times you deliver paper to your fellow man.

Scanning all of the documents you have is fun (in one sense of the word) and will save you storage space, but it doesn’t directly save any trees because of the sunk cost theory which dictates that the paper you have stored has already been printed - already incurred the cost.

One of the best effects you can create is to start filling out forms on your computer. Most places have an online applicaiton, but many of the places that don’t will still offer a PDF version of their application. When you make a doctor appointment, get the PDFs off of their website, fill them out, and email them.

Unfortunately, I’m not aware of any tricks to getting mortgage or mortgage refinance paperwork turned digital. I have still had to drive across town to sit across from someone, sign 87 lines on a 300 page document, and then trust that they’ll deliver (on a truck) that heap to the right people. Because a lot of my paperwork and processes are paperless at this point, however, I was able to get back to my mortgage broker within 5 minutes most of the time with my tax information, bills, identification, or whatever else. It’s fast, it’s free, and it’s efficient!

TIP: fill out forms using Nitro Reader

Here’s my trick for filling out forms paperlessly.

Download Nitro Reader.

Open your PDF in Nitro Reader.

Hit CTRL + T to switch to text mode, click on a form field, and start typing.

Click the QuickSign button to set up your signature.

To create your signature, just sign a blank piece of paper and then get it saved as a PNG. You’ll have to figure out how to knock the white background out in your graphics software of choice.

Save your results and email away.

TIP: use your phone as a scanner

I don’t keep work receipts anymore. I immediately take a picture and save it in a OneNote notebook. Unlike real receipts, they’re always in once place, they don’t fade, and they’re searchable… vastly superior.

TIP: ditch the filing cabinet and get filing boxes

Where you store your paper - in a cabinet or in a desktop box - is mostly a matter of quantity, and that’s the point. Many people keep far more than they need. See about trimming your archive down to one or two IKEA filing boxes that you can put on the shelf above your desk. That way you won’t be tempted to fill a lot of space. I experienced the same thing when I lived on a sail boat in Seattle. I didn’t have space for stuff and so I didn’t acquire stuff. An alligator will only grow as large as its home (I have no idea if that’s true, but it sounds good).

TIP: get your head in the clouds!

Use OneNote or EverNote or some kinda note that gets your brain into the cloud. The strong advantage to a note system like this is that you have access to the data from anywhere - your phone, your tablet, your PC, your pocket watch, your glasses, etc. And in that case, you reduce the need to write on a post it note (will those be around when my son is older? hmmm) and carry paper around with you.

Anyway, those are just some musings by codefoster about our increasingly paperless society and how we can all participate and advance the notion.

Hope it helps!

Windowing in Windows 8.1

Windows (the OS) has always had windows - rectangular portals into an application that allow shrinking, expanding, moving, maximizing, minimizing, and whatever else. A window is a foundational element of many UI’s. It’s not right for every UI, but it’s great for many and is a part of many popular operating systems.

In Windows XP, I used a utility app called Resizer (I think that was the name) that allowed me to quickly relegate a window to a certain quadrant of the screen (upper right, for instance). It also showed the width and height in pixels of the selected window to allow for easier web development compatibility checking.

Windows 7, then, introduced some nifty windowing features obviating the need to install a third party app (for me anyway). In Windows 7, you could use WIN + LEFT/RIGHT to send a window to the left or right half of the screen and WIN + UP/DOWN to maximize, restore, and minimize it. I quickly developed a dependency on these shortcuts.

Desktop windows in Windows 8 still listen for these keyboard shortcuts, but the new Windows Store apps introduce a dramatically different windowing model altogether.

In 8.0, Windows Store apps are in snap mode, fill mode, or full mode and the WIN + . (period) shortcut toggles between them. This was pretty cool, but snap and fill windows modes were destined to live a short life. Windows 8.1 demolished them with a fluid windowing system that allows apps to be any size the user wants down to a minimum determined by the developer.

I want to show you how to use your keyboard to get some pretty cool control over this windowing in Windows 8.1. You can try this at home, but don’t try this with Windows 8.0 or you’ll be sorely disappointed.

First, let’s get some modern apps open. I’m going to open Bing Food & Drink, Alarms, and Windows Reading List. These apps are all Windows 8.1 apps that recognize and take advantage of the new windowing system.

Note as you’re playing with this that the classic desktop itself acts like a single app, and individual desktop apps do not participate in the new windowing behavior. So you’ll see the entire desktop as a single entity appear as if it’s a modern app.

So I’ll start by opening Bing Food & Drink from the Start Screen.

And that app opens full screen. I now have a single Windows Store app running in addition to a bunch of stuff running in desktop mode.

Now, while still in the Bing Food & Dining app, let me hit Start and launch the Alarms app the same way. It will also open full screen, replacing the Bing Food & Drink app.

Perhaps you haven’t seen the new Alarms app in Windows 8.1. I think it’s really cool with some nice radial controls and lots of features.

Now let’s get our hands on the keyboard. Try just pressing WIN + RIGHT once. That will send the active Alarms app to the right half of the screen and leave the left half unoccupied. Now press WIN + TAB and you’ll see that the Bing Food & Drink apps will occupy the left side. That was two quick keystrokes to get ourselves into a great side-by-side workspace. Notice too that the slider control between the apps has a a subtle glyph rendered on the left side indicating that the Bing Food & Drink app is the active app.

WIN + LEFT/RIGHT sends the active app to the left/right
WIN + UP maximizes the selected app
WIN + DOWN closes the selected app (unlike desktop mode where the app is restored/minimized)
WIN + TAB switches through open Windows Store apps

Now try tapping WIN + RIGHT again to swap the order of the windows. The Bing Food & Drink app is sent to the right effectively swapping it for the Alarms app. Notice that the Bing Food & Drink app is still the active app as designated by the glyph on the slider.

You can also use WIN + UP and WIN + DOWN to maximize or close the active app. Try that now with the Bing Food & Drink app.

Let me show you another shortcut now. First, get your two apps back to split mode.

WIN + . (period) “grabs” the active app and used repeatedly toggles through all visible apps and the slider itself.

So with Alarms on the left and Bing Food & Drink on the right as the active app, press WIN + . quickly one time. Not much happens, right? The Bing Food & Drink app does a small animation indicating that it is being “grabbed”, but when you let go of the WIN key, it goes right back to where it was.

Now hold down WIN and press the period key repeatedly. You can see that you are changing which visible app is “grabbed” and when you let go, you find that you have activated another app (or the slider).

While holding the WIN key, repeatedly press the period key until you have activated the slider. Without letting up the WIN key, press the left and right arrow keys. You are able to incrementally change the position of the slider and thus the size of the adjacent apps to your hearts content. That’s pretty fun.

Also, try this. While holding the WIN key, repeatedly press the period key until you have “grabbed” an app. Without letting up the WIN key, try pressing the left, right, up, and down arrow keys. Left and right have the same effect as WIN + LEFT/RIGHT, up allows you to maximize the window size, and down allows you to close the app.

WIN + . (period), ARROW KEYS also allow for moving windows left and right, maximizing, and closing an app

5 Ways to Be Effective

What effect do you have on the world?

Do you affect it consistently and positively? Do you affect it efficiently? Do you affect the world at large? How about your small world - your family and your work team? How about the customers that buy the widgets you make?

I know very few (and I don’t know them for long) that don’t have any desire to have an effect. It’s a core desire. It’s a healthy desire.

I’ve composed a list of just 5 (of the enumerable) ways that you might consider to increase your effect on the world.

Number 1. Minimize and refine your scope

Your scope is the definition and extent of what you are committed to doing.

It’s critical that you define your scope. If it’s not defined then you won’t know if you’re minimizing it. If you don’t minimize it then you won’t even be able to fulfill it. If you don’t fulfill it then you’ll be stressed out and those around you will be disappointed.

Defining and then minimizing your scope is going to take some deliberation on your part. If you haven’t spent some time thinking about it, then you won’t be ready for the moment when it comes - the moment where someone asks you to adopt an obligation. In fact, some people are so out of tune with their scope that they don’t even think before saying yes to commitments - they also don’t usually follow through with them. If you have given some good thought to it, however, you will be ready with an appropriate yes or no.

When you’re defining your scope, don’t think about just one facet of your life such as your job, your family, or your recreational activities, but rather consider the whole of it. Everything that you are obligated (whether by election or not) to do is not only going to take minutes or hours out of your day, but it’s going to weigh on your mind while you’re trying to sleep.

I’ll tell you how I do this practically. I use OneNote to maintain a list of the various roles I play - roles such as human, husband, father, employee, and church member. Within each role, I list the responsibilities it implies. I have a huge, two-column table of these roles and responsibilities that each fulfill the following sentence: As a {role}, I am responsible to {responsibility}.

Here’s a sampling…

  • As a human, I am responsible to brush my teeth every morning and evening
  • As a husband, I am responsible to take my wife on dates
  • As a father, I am responsible to spend good time each day engaged with my son
  • As an employee, I am responsible to complete monthly status reports

The list could get indefinitely large, so I try to keep it focused on things that actually take minutes and hours out of my day. This responsibility list is similar to a task list, except the responsibilities are more ongoing and are more proactive than reactive.

Once you have that list, be careful about letting anything be added to it. Saying no to someone when they ask you to take on something that’s outside of your scope is not nearly as rude as saying yes and then being overextended and either incapable of fulfilling the role at all or even being less than fully effective at it.

After creating this list for the first time, you may come to realize that you have too many responsibilities, and it might be time to have some conversations with people around you. Think about how you would feel if someone came to you and said “Hey, I’m trying to organize my life and time better and I don’t think I’ve done a great job with responsibility X to you. I would be realistic and opt out of the commitment instead of continuing to disappoint you.” In all likelihood, that would be well received and even respected. Don’t try saying that to your spouse though. :)

Number 2. One task list, one calendar, one file store

If you maintain task lists here and there, you’re asking for trouble. Just like a computer system has to do a little bit of busy work to switch from one thread to another, our brains have to do a little work to recollect where all we have things recorded and from which list to retrieve them.

A single task list accessible from your phone, your tablet, and your primary workstation (if that’s not your tablet :) is not too much to ask these days. Drop a new OneNote notebook in your SkyDrive and add it on all of your devices. Then create a single, top-level page in the notebook for your tasks. In my opinion, this is better than trying to use a task app because there are fewer controls and restrictions around task entry and maintenance. It’s also better than a paper system because it’s everywhere at once.

Multiple calendars is normally a very bad idea. These days, however, we can maintain multiple calendars and overlay them to get the one view we need to see our whole week. Each Sunday evening my wife and I sit on the couch and look at the next two weeks. My work calendar, my personal calendar, her calendar, and perhaps a couple more are all visible in one view. That’s important.

Also on the topic of calendars… be careful with your reminders. Too many reminders may encourage you to dismiss them and completely lose their intended effect. Only set reminders when needed and avoid the habit of mindlessly dismissing them. If they’re trivial enough to dismiss without a thought they are likely trivial enough to have omitted in the first place.

File stores are where I see a lot of people get disorganized. Do you have files on your laptop, your office PC, your media center PC, on a myriad of external hard drives here and there, some in the cloud, and then a Carbonite account that’s backing up some subset of all of that? Well, stop it. That’s confusing.

Instead, on each device, install the SkyDrive desktop app and configure your libraries so that all of your documents are saved to your SkyDrive. If you have to and if you can, pay for a bit of extra storage on SkyDrive.

If you’re like me, however, all of the data that makes up your digital life and past don’t fit in SkyDrive (unless you’re willing to pay for the 500GB option). So here’s the solution…

On one PC (perhaps your office PC at home or even a NAS drive if you’d prefer) store the whole shebang - the entire superset of files you own. Back that one PC up to Carbonite (or whatever online backup service you prefer). On that PC, keep the files that don’t need to be available on other PCs in the normal document storage locations (c:\users{profile name}\documents, c:\users{profile name}\pictures, etc) and the rest in the SkyDrive folders (c:\users{profile name}\SkyDrive\documents, etc.).

With this system, you can easily log in to that one PC and move a file from the SkyDrive location to the regular document store to effectively archive it and determine that it will no longer be copied to the cloud and synced to your other PCs.

Number 3. Collaborate

Don’t go it alone. You can be more personally effective if you incorporate diverse perspectives from other people. It sounds like the contents of a course you might take starting a new job, but it’s also true - diversity is an asset.

One thing you can do practically to co-labor with someone is to run your task list and calendar by them. Ask them to listen to you explain what it is you are trying to accomplish (generally speaking) and then show them your list and your calendar and ask them if it looks like it lines up. You’re sure to get some wonderful and useful perspective on what you’re spending your hours on.

When they’re done talking, add some of their considerations to the task list itself. For example…

  • Consider implementing a consistent wake up time
  • Consider finding a Meetup where I can find others that are doing similar things
  • Consider cutting the one-on-one meetings out to spread my effectiveness

Notice, that they are perhaps all considerations at first. You can decide if and when you want to implement them as you have time.

In your collaboration, don’t neglect the face to face.

It’s tempting in this digital world to believe that we can do everything in front of a terminal. We can’t.

Sure we can order groceries and find freelance work and buy stocks and transfer money and sell houses and start businesses. We can do all of that with just screen and keyboard. But the really important things in life still happen in the context of relationships. Don’t forget to spend time on the phone or better yet over coffee getting real work done.

How many people do you know that spend all of their time in front of their heartless computer terminal and get incredibly good at things, but are all but incapable of applying their work to the real work because they aren’t in touch with the real world? Don’t be that guy.

Number 4. Keep your balance

A healthy investment portfolio has a little of this and a little of that. Concentration might be good for a swing trade when you see a trend that’s going to happen in a day or two, but if you want your portfolio to cross the oceans of time and weather all of the storms along the way, you’re better off diversifying it.

Likewise, if you spend all of your time doing one kind of software development, taking one kind of photograph, executing the same phase of a business deal, or adding the same adding the same door handle to the same door on the same factory floor, you’re going to type cast yourself. You’re also, if you’re anything like me, going to bore yourself to insanity. Learn something altogether new. I’m not just talking Visual Basic developers learning Erlang. I’m talking about Visual Basic developers learning Portuguese. I’m talking about librarians earning their Class A skydiving certificate. I’m talking about stay-at-home moms taking a welding class at the local community college.

In days of old (very old), man couldn’t afford to be a specialist. He had to be a hunter, a farmer, Mr. Fixit, dad, and everything else.

I am a big believer in a theory that I call general inspiration. By that I mean that an author can go to a symphony and be inspired in his book writing. Likewise, a flamenco guitarist can inspire me to draw. If this theory is true (which is likely considering I devised it :), then all of the ventures you take from whatever your definition of normal is are less likely to distract and more likely to enhance it.

Number 5. Clean

It sounds like a mere matter of preference, but I submit that if you clean and organize your home, your car, your workstation - if you clean and organize your life, you’ll be more effective.

Everything we do from dawn to dusk is about organization.

The guy that restores old cars - he is essentially organizing the parts to work and look good.

The guy that writes software - he is putting bits in a certain order so they are sensible and add value.

All of the tangible things around us want to default to their most base and chaotic state. We spend our 4 score on earth just trying to make sense of some of it. For some of our organizing, we get paid, but for much of it, we’re not. We are just designed to put things in right order.

So spend some time going through that stack of papers on your desk (that quite frankly, you’re never even going to look at anyway, right?).

Pull all the shirts out of the closet that are destined to collect dust, depart fashion, and finally visit Goodwill.

Consolidate all of your external hard drives and old DVD-ROM disks and finally make sense out of all of the data in your life. If it doesn’t belong in your life any more than hold down Shift when you hit Delete. If it does, then by all means, put it in the right place!

Make a list of all of the things you and your spouse have been meaning to talk about and carve out time to talk about them. Maintaining your marriage is infinitely more important than maintaining your Blueray collection.

By doing all of these things, you may seem to be stealing time from your primary function. You’ll likely find, however, invigorated and inspired to execute all the more effectively.

ReSharper 7 is Released

I got a note in my inbox a few days ago saying that ReSharper 7 had been released. I was pretty surprised since I assumed they still had a ton of kinks to work out, but I’ve got it installed and am flying through some Windows 8 development and haven’t run into any glitches so far.

I’m kind of always excited about ReSharper, but here are a few reasons why version 7 is keeping my fire lit.

It supports VS 2012 and Windows 8 apps. It works with any of the last few versions of Visual Studio even when they’re installed side by side. It’s impressive that VS 2012 is not even released yet and R# is all over it. Not only does it work in VS 2012, but it support Asynchronous Solution Loading so it starts up faster, it uses the Preview tab, and it supports both the light and dark themes.

It gives you a hierarchical view of your CSS. Sweet. Look at this…

…and I noticed that it shows a little glyph next to CSS rules that are overriding the a rule elsewhere. That’s helpful.

Version 7 allows you to remove unused references from your entire solution at once.

Also, it adds a ton of support for JavaScript. It extends VS’s native IntelliSense for JavaScript. The ability for anyone to make IntelliSense for such an insanely dynamic language is beyond me for sure. It even added support for Jasmine unit testing.

There’s quite a bit more that it offers that I haven’t shared here, so check it out. This is one tool you should just throw down on, because it’s worth it. Another tool you should throw down on is CorelDRAW, but that’s another topic for another blog post.

Finally, I like their little catch phrase – More color to Visual Studio. If you’re familiar with the story around the color in Visual Studio between the developer preview and the release preview then you’ll have to laugh. And the “7” is made of little colored tiles. Groovy.

Update on ReSharper 7 EAP

I opted out of the ReSharper 7 EAP beta for a little while just because it was throwing a lot of exceptions and I had to get some code written, but now I’m back and it appears they’ve made a lot of improvements to it. I am noticing a lot more support in JavaScript code in Windows 8 development, so that’s awesome.

Also, they made it work with VS 2005, 2008, and 2010. Although, if you’re still using VS2005, can I please ask you why? :)

Go here and download the latest build now and try it out. ReSharper makes you more productive.

Long Weekend

It’s the long weekend!

Time to breath a sigh of relief and take some time off. If you’re a tech head and love your job like me then it might be a bit of a discipline to shut down all the systems, unplug, and relax. But it’s worth it.

Surely you’ve had this experience a hundred times… you are fighting a bug or a seemingly insurmountable technical issue and you feel like you must… just… keep… working. Then you finally give up and step away for some length of time. Upon returning to the issue then, you have it fixed in 10 minutes. That happens to me all the time. So much in fact that I’ve learned to just walk away and try again later. I think it’s a good use of time.

Consider how productive you’ll be upon returning from this long weekend then.

I guess if I’m blogging then I’m not unplugged, so here goes. Over and out.

ReSharper 7 EAP in Visual Studio 11

I used to think that Visual Studio had an incredible set of keyboard shortcuts and productivity features. Then I installed ReSharper. Now a vanilla install of Visual Studio feels a bit vanilla.

Sure all of the refactorings are awesome, but what I end up missing when I’m missing R# is the little stuff. It’s the extend and shrink selection (Ctrl + Alt + Right Arrow/Left Arrow). It’s the next and previous member (Alt + Up/Down Arrow).

With R# 7 EAP, as with the Windows 8 Consumer Preview, I installed it the same day it was available. I was thrilled at first too – ready to blaze through my Windows 8 projects at the speed of sharp. But I discovered shortly that my IntelliSense was not working. For JavaScript behind Metro apps, I got an IntelliSense menu, but the entries were all wrong. And an acquaintance had the same issue. This was a deal breaker and I sadly uninstalled R# from my machine.

Today I tried again and low and behold everything works! So my mood swing is back at its acme and I’m ready to blaze through the code again.

Here’s the link to the EAP: