Outlook Tips

Here are some Outlook tips and tricks that I find very useful.

Hide/Show Buttons

Hide buttons if you want more vertical navbar space.

image

Customize the Quick Access Bar

I have mine optimized for TabletPC use.  I can do a send-receive, undo, delete,  show/hide navbar and show/hide reading pane.

image

Additional Windows

Right click on a button and choose Open in New Window to open an additional window with that item type.

image

Schedule an item with drag and drop

Drag and drop an email or to do item onto the calendar in the to-do bar or the calendar that is showing in another window to schedule a new calendar item.  If you do this with an email it will drop the email message into the memo portion of the calendar event.

image

Dropping on a date/time on a full calendar the event will default to that date/time.  Using the to-do calendar you will need to specify the time.  You can also customize your to-do bar to show more months, filter what appointments are displayed and choose to the task list by right clicking on it.

Keyboard Shortcuts

Write a new email with <CTRL>+<SHIFT>+M

When viewing an email <CTRL>+R to reply to the selected email.

<F9> do send-receive.

Here are a couple of articles with many more keyboard shortcuts:

http://www.groovypost.com/howto/microsoft/outlook-2010-keyboard-shortcut-keys/

http://gadgetinspiration.com/blog/outlook-2010-keyboard-shortcuts

Your Turn!

What are your favorite, but maybe obscure power user tips/tricks?

The "I" in Team

We often hear the expression, "There is no I in team!" Let's take another look at that. Where are the I's in team? To me, the first thing I think of is the individuals that make up the team. Some “I's” that are associated with the individual are individuality, initiative, imagination, insight and intrinsic motivation.

I know some of you are going to find this hard to believe, but individuals don't always agree on everything all the time! Individuality and respectfully differing opinions should be welcomed on the team. It makes us stop and think about why we should take one approach and not another. We have some creative people on our teams, so we shouldn't be surprised that there will be multiple (noncompatible) solutions offered. Perhaps we can splice and merge together from the solutions offered to create an even better solution!

It will help in these times of differing opinion to consider that the other person, like us, is working toward the same common goal. A shared vision for a common good has been embraced by the team. It is important that there be open, respectful communication within the team since there will be people with differing personalities and skill sets. In a team setting like this, we come to expect that individuals who are subject matter experts will work with other members to achieve the common goal and to mentor and help them grow as well. The individual is truly valuable in what they bring to the overall health of the team.

Our team members show initiative! If they spot or think of a potential problem, they will bring it to the manager’s attention and most likely already have thought of a solution. Individuals bring value to the team when they've exercised initiative to find a better way of completing a common task and share it with the team. For instance, if a team member demonstrates to the team a refactoring feature, or does something with an advanced language feature, the whole team benefits.

One of the most valued aspects of the individual is his or her imagination. Software development is a creative endeavor, especially UI design. The UI designer must think about how a user will interact with the software, keeping in mind principles such as "least surprise" and "expected default" and presenting a visually pleasing interface. The business layer developer must think about how the classes will work with each other and consider where inheritance and polymorphism make sense. The difficult part for managers is knowing when and how to interject their own individual view on the solution.

Our team members bring valuable insight into our business processes. It is especially true that, in information technology, our development teams gain a deeper insight and understanding of the business practices the longer they have been with the organization. Oftentimes this insight can answer the question, "Why?" Be sure to create an environment that fosters true teamwork, pairing and cross training among all people on the team.

This individual we have been discussing is also likely intrinsically motivated to achieve his or her job goals and to continue professional development, while being a professional and doing high-quality work. Software standards and processes can be mandated and taught. However, until they become an intrinsic part of the individual’s personal software process, the team will not see the benefit.

A team is not merely the sum of the individuals that make up the team. I believe when you look at truly productive teams, you will find an environment of communication and shared vision working toward a goal of common good.

Authentic Dialogue

When I am talking with someone and I don’t understand or know the term/idea they are using, I say so!  Yes, there is some feeling of vulnerability.  However, the honest communication will lead to a more authentic relationship which hopefully translates into a more productive and enriching exchange.

Living in “the fake” will wear you out.  If you don’t know or understand, say so!

-- the truth will set you free!

Gut Alignment

Ok, so back to this coffee pot.  It is just too nice to give up on it.  So after another read of the manual and not learning anything from that, I looked at the coffee pot.  I tried to leave my preconceived notions of how it should work behind.

After some study of how I thought the filter should go in and how it sort of worked, I tried something different.  I noticed a “trough” of sorts at the bottom of the basket.  This time, I rotated the filter 90°.  That made all the difference in the world.  The filter now fits snugly into the basket and all is right with the world.

So, when I let the coffee pot reveal itself to me I gained insight and now there is a symbiotic relationship!

In our relationships and work environments it is important to try and understand the motivations of our employees, employers and customers.

For instance, reflect on what is important in life to you, your values.  Then consider the goals of your employer.  If there isn’t some alignment it is likely that you won’t be happy there.

Bad coffee pot! X^(

I know, I know! Back to the coffee pot. We were trying to make adjustments to the process and having trouble. The management (my wife) noticed the problems I was experiencing. Most noticeable were the backed up coffee and grinds overflowing onto the counter.

So, we were losing time, precious resources (beans), creating a mess and had nothing to show for it. Management said, enough!

The coffee pot was removed and we went in search of a replacement. We ended up with a high quality (and high initial expense) specialized single cup brewer. This works out really well since I am the only coffee drinker in the house.

I've gotta say, after the team metaphor with the last post, my team was really dismayed to hear that the coffee pot got swapped out! The moral of this post is therefore left as an exercise to the reader.

New Team, New Rules

I have had my old coffee pot for years.  It uses a basket filter.  I grind my coffee beans right before brewing.  Over time I had figured out the proper amount of beans and the correct granularity of the grind.  The result was great coffee every time! :)

My wife recently got me a new coffee pot.  It is much nicer with features like a clock, timer and higher capacity pot.  The new machine uses #4 filters instead of the basket style filters.

So, I followed the instructions for doing the initial “cleaning” runs.  I went to make my first full pot of coffee and I used the amount of coffee and the granularity that I have been used to using.  Then I heard the sound of coffee on burner.  What?  The grounds had gotten up and around the filter and clogged the dispensing hole.  :(  I chalked it up to the shorter filter.

Tried another full pot on another day with a new improved bigger filter.  Similar result, grounds in my coffee.  No bueno!

Then it occurred to me, I was grinding finer than “drip” granularity and this was causing the problem.  Maybe the cone style basket doesn’t need as many grounds either.  I guess I’ll have to check the manual!

As always, I’m thinking of how do these lessons translate to software development?  To me, I pull away that we can’t use the same procedures we’ve always used when we have a new environment.  In this case the environment consisted of the coffee maker, water, filter, beans and grinder.  (Let’s not consider condiments!)  Change any of these critical components and you can’t expect the same results.

So, if your team changes, your management changes, the tools you use change, etcetera, expect that your process must change as well.

Transference of process or technique

You know how you're always hearing about work-life balance.  It really is a good idea.  You can pull from experiences in "outside" activities to enhance your software development skills/process.

What?

When you participate in other activities like camping, hiking, bicycling, toastmasters, painting, etc you learn new techniques.  You gain insight into that activity that you can likely bring to your software development practice.

Give me an example

For instance, you're into bicycling.  You've picked up different bicycles for different types of terrain/activities.  You've added various accessories to your bike to make the experience more enjoyable.  You carry a back up tube and air pump for emergencies.  Water and a power bar and gel are along for the ride as well.  You've come to realize that you can go farther and faster over more difficult terrain when you're riding with a buddy.  After training for a while you are stronger and have better riding technique, know the bike better and how to adjust gears for the terrain.

Reflecting on the above you ask yourself:

  • Do I have or use different tools for different projects?
  • What accessories can I add to my development environment to make the process more enjoyable?
  • Where's my development safety net?
  • What do I do to keep going while I'm developing?
  • How can a buddy help me go further and faster creating software?
  • Am I better developer now-- that is, do I have better technique now? Do I know my tools better?
  • What would it mean for me to "shift gears for the terrain" in terms of software?

Summary

In summary, that work-life balance/outside activities can make you a better developer.

I encourage you to evaluate your experiences from other activities and bring that knowledge to your software development craft.

Vista Gadget for following the Missouri House

Over the holiday break I updated my Missouri House Vista Gadget for the 2009 Legislative session.  This gadget has links for frequently accessed pages on the Missouri House web site

This session there are also three new custom Google search tools added as well.  The Legislative Search indexes the combined sites of the Missouri House, the Missouri General Assembly and the Missouri Senate.  The RSMO search indexes the Revised Statutes of Missouri.  The Constitution search works through the Missouri State Constitution and the Preamble.
Please use the gadget forum or Twitter to let me know how the gadget works for you!
image

We've come a long way, baby! (TabletPC's)

This post is in response to a blog post by Jim Lehmer.

Why/how do I use my Gateway M-285 Convertible?

I use the tablet in slate mode when reading or annotating PDF's, going through email, going through RSS feeds with Google Reader.  Having a Tablet PC comes in handy with drawing applications.

With PDF Annotator you can mark up and annotate a PDF.

I use the Grab and Drag add-on to FireFox so that I can use my stylus for sliding the page I'm viewing up and down.  Using Google Reader in "expanded view" mode with the slate configuration you can quickly and easily go through lots of feeds while sitting on the couch.

With Tablet Extensions for Outlook (TEO) you can use the stylus to easily create and send emails and appointments, etc in slate mode.

As far as keeping the screen clean, it really hasn't been an issue for me.  When I notice that it's getting a bit too smudged up, I'll pull out the cleaning cloth (magic 3M fabric) that's included with most (all?) Tablet's.  Or I'll just use some screen wipes.

Sure, I'll agree, that the current generation of machines still is lacking in the pen on paper feel.  However, I'm sure we'll get there.  Years ago I used a special stylus from Cross on my PDA and it had a great feel.  It was a bit unsettling how it wasn't smooth.  At least today's styli like those in the M285 aren't itty-bitty toothpicks anymore.  Some devices even have an electronic "eraser" at the other end of the stylus, like on the M255.

When you are meeting with a client, or you're in a setting where you're taking notes, slate mode with handwritten notes is the way to go.  Other people aren't distracted by the keys clicking and you've removed the physical barrier that the screen creates.  The technology blends into the background, letting you focus on what you're really trying to do.

Many people are much faster typing than hand writing.  So why do they take notes on paper in meetings?  Because it's more natural?  It doesn't get in the way?  It's less constraining?

Enter the killer app for the TabletPC - OneNote.

If you take your notes with OneNote you can easily add in more space to the page - even in the middle!  Not something you can do with pen and ink.  Keep the pen toolbar handy and you can easily change between pen types, colors, and widths.  Or pick up a highlighter.

With OneNote you can do handwriting recognition & search.  OneNote will do conversion from handwriting to text.  Yes, it's not 100% perfect.  You can correct it, but I've found it's best just to leave it in handwriting.  Why do you need it in text?  Odds are you don't.  So, after a meeting I'll often email notes out to participants in handwriting.

OneNote also offers voice recording & search within the audio.  Although, the practical aspects are such that I don't use this capability.

A feature I do use is image search.  You can snap a picture of a white board or scan a document in and you can search the text within the image!

One Note offers some integration with IE and OutLook.  Send documents from IE to OneNote.  Create OutLook tasks from within IE.

I'm just going to gloss over this, but OneNote notebooks are shareable via network drive, USB Flash Drive or SharePoint.

So, use OneNote just like all of those paper notebooks and notepads you have laying around and get everything in one place that's searchable, shareable and malleable.

There are other features of the application I haven't touched on that make OneNote just as home on a traditional laptop or desktop computer.  You owe it to yourself to check it out!

Prior blog posts that mention TabletPC's & OneNote:

How our Dev team uses OneNote

Tablet PC Head to Head

Developer Tool- Digital Camera

Who maintains the burn chart?

jamescarr asks random agile question: who should maintain/update the burn-down, customers or developers?

In an ideal world, the developers mark completed and the customers mark accepted/rejected.

This information is then reflected on a stacked burn-down/up chart like in projectcards.

Of course in (my) reality we schedule our iteration and often end up with quadrant I stuff that gets thrown into the mix along the way.  So what you see down below is iteration story churn.  We're a small team with many projects going at once.

Often the PM serves as the customer proxy and updates the status of tasks reflected in the burn-up/down charts.  It is important to note that the PM really does check the product and verify acceptance with the customer.

clip_image002

The browsers in my life

In the post I'm going to cover which browsers I'm currently using and why.  I do try and check out a variety of browsers so I can I see what features are out there and how our users may be viewing our sites.

Chrome

I like the process separation.  This is especially nice when you have a lot of tabs open like when you're surfing eBay.  The clean UI and speed of this browser are also very nice.  I really like the "new tab" feature that picks up on your frequented sites.  On the downside are no extensions/add-on's.

Safari

I really liked this browser when it came out.  Again the speed and clean UI were very appealing.  On the downside, no extensions and really super annoying Apple updater that wants to give you iTunes and QuickTime and Open Office!  Hey, I'm a fan of open source, but you can't just install stuff on peoples machines!

Internet Explorer

Using IE7 and IE8 beta 2.  Need to make sure our sites work with the browser most of our visitors use.  On the plus side I can wedge in the Google toolbar.  IE8 seems to be nicer.  It's a recent install for me, so I can't really say a lot about it.

Mobile Internet Explorer

I do check our PDA page with the IE browser on my Windows Mobile 6.1 smart phone.  I also check the couple of pages that link off of that.

Flock

This is an interesting browser in that it tries to integrate social networking, email and blogging into the browser.  The end result is a funky, distracting, somewhat awkward and cluttered interface.   On the plus side you can use Firefox extensions with it.  This browser just didn't "work" for me.  The UI seemed confusing, forced and cluttered.

Firefox

Firefox is my browser of choice for most of my surfing needs.  Why?  Extensions and the user UI customizations that are possible.  I'm using the Google toolbar add-in.  I've installed the "better" gMail and Reader extensions.  I've found add-on's that change the appearance to something I like a bit better and the tabs look more like Chrome.  There are also add-in's and options that make life easier for a web developer.

I would really like to see the individual process and "new tab" feature of Chrome brought into Firefox.

How our Dev team uses OneNote

I like the OneNote 2007 product.  I use it for both personal, academic and business uses.  Today I'm going to share with you how my team uses it to support our development process.

OneNote Basics

OneNote is the electronic equivalent of a notebook binder which can contain multiple sections and numerous pages per section.  ON2007 adds the major feature of being able to have multiple notebooks.  Notebooks can be shared on a network drive or via a SharePoint Server (they can also be stored locally or on a flash drive).  ON has on-line/off-line capability with notebook synchronization.  While ON has some features that are best used with a TabletPC - such as being able to write or draw on the page, a TabletPC is not required.

OneNote also has a great search capability which includes grabbing text out of images and searching in audio files too!

Operations Manual

We have put together an “operations manual” in OneNote.  The idea is to document routine and some times not so common tasks.  We originally started off with a single section in a notebook with lots of pages and now we have a “section group.”  So my suggestion here is start off small and let your sections reveal themselves.

For example, we now have tabs (sections) for:

  • Original information we haven’t moved anywhere else yet--a catch all.
  • Daily tasks
  • Nightly tasks
  • End of session
  • Server specific stuff
  • A section that is a data dictionary

Each section can have from a few to many pages under it.

Where does the Operations Manual content come from?

Basically, if we come across a task that we don’t know how to do, we ask the person that is the expert to document the task.

Then someone else runs through it with the expert – making additional notes or changes.

Now, we have at least two people that have run through it plus it is documented by the expert with “newbie” notes.

To me, one of the biggest advantages of using ON is that you can focus on what's important--the content.  When deal with a word processor to document processors we quickly get bogged down in the proper formatting of the document and in making the tool happy.  Did I mention that it's really easy to search all of the pages in ON too?  With multiple word processor documents, you'd need a desk top search of some sort and have to deal with more pessimistic file locking when editing them.

Project Documentation

We also use ON for capturing project information – meeting notes, tasks, pictures, diagrams, etc.  ON has OutLook integration so at the end of a meeting you can quickly email the notes that were taken to all of the meeting attendees.  You can set task flags on items as well.  I have found that even handwritten minutes can quickly be mailed out to everyone and that they are acceptable.  ON does have a feature to convert handwriting to text.  However, it is not 100% accurate.  If you intend to email out plain text you are almost better off taking notes via keyboard.

In an earlier post I talked about taking pictures of whiteboard diagrams and dropping them in OneNote.  ON also has the ability to capture from TWAIN devices such as a scanner.  So if you have printed source material w/out a digital version, scan it in.

OneNote also includes a screen clipping feature like SnagIt! So you can easily put screen captures in with the project information.  There are also send to ON tools for OutLook and IE.  If you want to preserve formatting you can print to ON.  So, if there is an email that has particularly relevant information you can send or print it in with those project materials.

That just made me think about another nice feature.  Say, you do have a nice PDF document you got from a vendor.  You can drag-drop that PDF onto a project page, choose to insert the file and now it's part of the ON document!  So, you can keep notes, pictures, sound files and other files all together in the same notebook.

Summary

OneNote 2007 has many more features than I have mentioned.

I find OneNote 2007 to be an affordable and indispensable tool that supports our operations and development roles.

Team member opening

We currently have an opening for a full-time entry-level member on our team.  We are also considering applicants for an intern program.

If you are interested in being a team member in an environment that uses agile techniques such as pair programming, test driven development and iterative cycles please review the job description and submit an applicationBe sure to mention in your cover letter that you found out about the job here!

Software Rot

I have an apple sitting on my desk right now.  As I was looking at it, wondering if I'm going to eat it before it rots I couldn't help but think of that time lapse photography where you see fruit decaying.

You've probably heard about bit rot.  So, I was thinking how does this apply to software?  What can we do to preserve the fruit.  I didn't like the notion, that no matter what you do, the apple is going to rot.  Then I thought, hey maybe software is more like a new car.  If we take care of the car, keeping it clean and maintaining it we're going to have a useful automobile for many miles.  We may eventually choose to replace it because of upkeep costs or changes in style... people are fickle aren't they?

Now, the car that doesn't get the maintenance... it rusts, it fails, it falls apart...and it's like the "broken window" idea... as it decays we want to take even less care of it.  We want it to fail so we can replace it with something new.  Or because it is in such poor shape, when the mirror busts off we just slap on another that doesn't really match.  But, we don't care because everything is in such a poor state anyway.

Or maybe the car was put away in the garage because the original owner is gone...and it doesn't age gracefully.

These are things that happen to software.  What can we do?  Take care of our software.  As we learn new concepts keep our systems polished.  Revisit the application with code reviews, this also helps out the new people on the team.  Then you don't have to worry about not having available the one person that knows the code.  If the system was developed with n-tier design then maybe a new paint job (GUI) is in order?  I am sure you can think of other things you can do to keep your systems from rotting.

So, keep your systems clean, polished and maintained!

XOBNI out again

Well with the latest push update of Xobni that included LinkedIn integration, which I liked, my Outlook decided to start crashing when you looked at it funny.

I noticed that when you tried to resize the Xobni toolbar it would crash.  Also, when trying to move a group of tasks from the past to today it would crash.

After uninstalling Xobni, Outlook complained that the plug-in wasn't available and proceeded.  I think I got one more crash out of it.  I've rebooted since then and now all is well.

I'll keep an eye on the progress Xobni makes towards release and may eventually reinstall.

Windows Mobile 6.1 Upgrade Experience Report

There is a new WM6.1 release out for the Motorola Q9c sold through Sprint.  After reading a bit about it I decided I wanted to do this upgrade.  This is my experience report from upgrading my device.

I started off by going to the Motorola website and downloading the upgrade tool.  This is about 18M.  I thought sweet, this is going to be easy.  I was wrong.  The upgrade tool is merely a downloader type tool.  The first part of the install this tool verify's the device and then it proceeded to download the update--about an hour on DSL. 

You are also told to make sure you have the device backed up as it is wiped as part of the install.  However, they give you an option to keep personal information.  I did this.

When doing the update you'll see a black and white DOS like screen on the device.  I did end up with an error in the install process.  The software on the PC detected the condition.  I had to power cycle the Q9c by removing the battery.  The process picked back up where it was when I plugged it back in.

Around this time the device reboots and you'll see a graphical Windows Mobile 6.1 screen.  Status on the PC indicates around 34% complete. 

Soon thereafter a manual reboot is requested by the software.  During reboot I see the Sprint screen.  When I reconnected the device nothing happened.  I power-cycled it again while it was plugged in and this time it was detected.  ActiveSync was seeing the device with a guest partnership.  The software continued loading the device and then went to load my personal settings.

Next, it looked like partnerships were removed and the device rebooted.  It might take a couple of seconds before the auto-reboot.  Don't panic.  After it rebooted is when it recreated the partnerships.  If you end up with an ActiveSync screen that is showing a guest partnership, reboot the device.

Bad Stuff

While my settings were retained and information that was on my SD card was left alone, I did have to re-install all of my applications.  I also had to reinstall the GPS application. 

Partnerships & Blue Tooth

Even though my Exchange partnership was showing up, it wasn't working properly.  I ended up removing and recreating it.

I also ended up with a second partnership on my personal Outlook account on my home PC.  I removed the original partnership and renamed the newly created partnership.  I started getting some synch errors on the PC, so I backed off what was being synched and added them back on one at a time.  That seems to have taken care of the synch problem.

All BlueTooth settings were lost.  I need to recreate those pairings.

Cool Stuff

I now have my Yahoo! small business email accounts set up and working.  They use SSL connections so I wasn't able to configure the email client to work with them previously.

A feature I really like is that I can now lock and auto-lock my device with a PIN or password!  They still haven't updated the software to display owner information when the device is locked.

Other cool new features include a "slider" home screen, zoom feature in the web browser and the threaded text messaging.  Microsoft got it right when they made it very easy to see a text "conversation" and respond without having to create and address a new text message.

Summary

Overall, a worthwhile upgrade.

You need to plan several hours for this upgrade and for reinstalling applications--oh yeah and for playing with, I mean learning more about it.  It is not for the faint of heart.  You need to be at your PC that you normally sync with--you'll be using ActiveSync.  If you're using a laptop, make sure you're plugged in!  Losing power or Internet during the process and you could have a bricked device.

ProjectCards Evaluation and Installation

I'm looking at ProjectCards as a tool to augment my current project management process that uses OneNote.

What do I hope to gain from using ProjectCards? 

  • I would like to have a management and user friendly dashboard for reviewing project/release/iteration/task status. 
  • Be able to determine how much time there is in unscheduled stories.   This can be accomplished by creating an "unscheduled" iteration and moving all unscheduled items into it.
  • Be able to easily review and work with unscheduled stories -- release planning?   There are numerous filters and planning group options available.
  • Be able to link to detailed information in OneNote.  Using the custom fields URL type I can link to OneNote or a HelpDesk ticket.  However, with anything other than a standard web URL you end up with a funky empty "error" browser on your screen.  The ProjectCards staff said they would change this in the future so it will let the OS handle the URL.
  • Be able to determine overall project time
  • Be able to set up multiple users with various access rights.  Besides being able to easily set up and manage users, there are a handful of default roles built-in to the system which seem to do the job nicely.
  • Be able to identify in what release a feature was added/enhanced or changed

How will OneNote continue to be a part of the process?

Detail information - notes, pictures, technical data, etc for the stories will reside in OneNote.

Installation

The installation instructions were a little confusing for the windows server since it talked about needing TomCat.  It ended up being a very simple install.  No configuration was needed.

Hm. How do I specify where the repository is located?

I later discovered how to configure the project data directory in the following post:

http://www.projectcards.com/forums/viewtopic.php?t=850

I pointed out to the ProjectCards guys this oversight in the manual and they agreed that it was a pretty big omission and belonged in the next manual.  On the down side it seems that the install directory for the web reports is fixed, UNLESS you use another different web server.

The first time I used the client to connect to the server I took their advice and changed the admin password.  It then promptly gave me a "corrupt license key" error.  I quit and logged back in with the new password--everything went through OK.

Evaluation

So, now I can take a look at the product and the manual to determine if it will meet our requirements outlined above.

Sketch out the project using "themes" and putting cards under them.  For example, the Search feature theme may have search by name, search by room number and search by parking spot under it.

You have to go into each individual story to set it's time and status.  It'd be nice to be able to do this from the dashboard grid.

Use drag and drop to schedule a task in an iteration.

Filtering in the theme view allows you to quickly see unscheduled stories.

I'm finding it annoying that a single account can only be logged in from one location.  So, when I'm working at the desktop pc and then I go over to the TabletPC to do something, I'm logged off of the desktop and any unsaved changes are lost!

I can link to a OneNote section using a custom field of the URL type.  However, it thinks it's a bad link format.  Also, it tries to open it in a ProjectCards wrapped web browser.  So, you end up with an empty blank browser and the correct OneNote document open.  Maybe, "dumbing" down this feature may be appropriate.  ProjectCards guys indicate that they will do this in a future release.

Manage users can be used to create users that are used through out the ProjectCards application--that is they are good for all projects.  You can use Manage Project Access to set a users access level in the project--that is you can set what role they have in this project.  You can create custom project roles.  Unfortunately, they are only good for that project.

If you have a single team that is working on multiple projects (a program in PM parlance), then you'll want to check out the "planning groups" feature.  This same feature also works well for multiple teams working on a single project.  Tip: once you have one item of the planning group type on the release plan, drag and drop other items under the planning group and they will have their planning group automatically assigned.

I'm still warming up to how the iterations work.  Basically, you set your start day and then specify how long each iteration is in length.  So, you don't have the flexibility to say nothings going to happen this couple of days so we don't want to start the iteration until the 1st of the month.

Support

I've emailed with the developers on a number of occasions and they have either provided an answer to my query, engaged in a dialogue to better understand what I was trying to do and added items to their feature requests.

Transferring large files from Mac to Windows

As it turns out, one of the last big bastions of incompatibility is the file system.  Windows machines can't do anything with the Mac's Hierarchical File System (HFS).  However, Mac's can read Microsoft's NTFS format.  But they can't write to the NTFS disk. 

Both platforms do support the FAT32 file system.  However, when you are dealing with large files, for example home digital video, FAT32 is lacking.  FAT32 supports a maximum file size of 4Gig.  So that hour video you made that is 11Gig ends up getting truncated.  So, how do we get the files from the Mac to the PC?

I tried FTP - way to too slow and timed out eventually.  Also, tried sharing the PC disk and making an SMB connection from the Mac to the PC.  However, it looks like there is the same 4Gig file size limit in the SMB software.

What I ended up doing was putting the video files on a Mac formatted portable drive.  I then took the portable drive to the PC and used a piece of free software called HFSExplorer.  With this software I was able to open the Mac volume and "extract" the files to a local NTFS drive.  It worked great!  I started it running before going to bed (45Gig to run through).  Although after only a couple minutes it had already "extracted" over  a gig.  Much faster than any of the other methods I had tried.

I used HFSExplorer on a Windows XP machine.  However, it is written in Java so it should be useful on other platforms as well.

Xobni

Xobni looks like a nice Outlook add-in. However, within a couple of hours of installing I was getting familiar with scanpst.exe . Coincidence?

I removed Xobni and no corrupt pst's since.

2008.05.14 UPDATE:

I determined that it was possible that I had an undetected corrupt ost file before the Xobni install. I'm giving it a whirl again.

2008.05.21 UPDATE:

So far, so good. No additional Outlook corruptions. The feature I like the most about Xobni is the quick access to the phone # for the sender and the list of files you've exchanged with them (and can click on to open).

New Language Features in C# 3.0

Overview

C# 3.0 adds several new language features.  In this article I will review Auto Implemented Properties, Object Initializers, Collection Initializers, Local Variable Type Inference, Language Integrated Query (LINQ) and Anonymous Types. 

I picked up this material from an excellent video by Luke Hoban.

Auto Implemented Properties

public string CustomerID { get; set; }

The private variable is no longer necessary.

Object Initializers

Customer cust1 = new Customer()

{ CustomerID = "ALKI", ContactName = "Marcel" };

Even if a method doesn't have an overload which lets you fill in some properties right away, you can use the Object Initializer to accomplish the same thing.

Collection Initializer

new List<Customer>() { cust1 };

As above but for collections.

Local Variable Type Inference

var customers = new List<Customer>();

How sweet is this?!  But, only for local types.  You won't be doing this with class level variables.

Language Integrated Query (LINQ)

Enumerable.Where(customers, c=>c.city == "London");

customers.Where(c=>c.city == "London");

var query = from c in customers

where c.City == "London"

Select c;

Where is an extension method

LINQ uses Lambda expressions.  Here c=> c.city == "London" is the Lambda expression.  The => is read "goes to."

LINQ can be used to query against XML, objects or SQL.

Anonymous Type

The neat thing about anonymous types is that you can create a type on the fly with no name/type, hence anonymous.  This new type can have a different number of properties than the query source.  For example, say you're doing a query on the customer object, the query result can be set up to only contain the customer ID and name.

Var query ...

select new

{  CustomerID = c.CustomerID,

   ContactName = c.ContactName };

// the property names above are optional, if not specified the property name of source object is used.