Tuesday, January 3, 2012

Maxim - Communicate in the 2nd person

Communicate in the 2nd person.
As the diagram reads, this reminder to communicate in the 2nd person so you focus on the recipient of the message.  What will the reader want to know? What's important to them?  Not 100% recalling how this was arrived at, it could be a tangential application of any number of Dale Carnegie' topics, but actually is more likely due to a pet peeve of seeing emails overwhelmed with "I's.

Tuesday, December 27, 2011

Maxim - Acknowledge communications within 24 hours

A visualization to remind of the need to acknowledge communications within 24 hours



This is an reminder of a maxim from Harry Shapiro's Legacy, a book of business wisdom by a friend, previous client, and mentor, Dr. Irving David Shapiro.  His Maxim specifically advises to "Always return every electronic communication...the same day you receive it".  In this day and age, you may receive communication at all hours from various time zones, so 'same day' can be tough to measure, but within 24 hours at least reminds you of the theme if you wake up to messages from the previous day.

Tuesday, December 20, 2011

Maxim - Three email rule

A visualization of the three email rule
 

In a recent office move, there was occasion for me to take down a bunch of hand-written post-it notes that I had written myself to remind of various professional maxims or just general good work habits.  Figured rather than just put them back up at the new desk, would take a few moments to convert them into a more preservable format.  The goal is to be relatively visual so they are in my face, the words are often too easy to ignore.  But I'm certainly not anywhere decent in drawing, so block diagrams are my best play at something legible.

The maxims themselves are generally adaptations, synthesis or snippets of my reading, conversations, training or other knowledge.  I will try to credit them when possible.  This one is a generality I've seen in a few different forms, including a 2-mail rule.  Thought that sometimes refers to the request-response work flow, so i find the '3' email rule easy to apply by counting the number of messages in a thread. 

Wednesday, September 28, 2011

Connecting to Oracle from SQL Server - Initial steps

Have started down the path of connecting to an Oracle database from an SQL Server.  The Oracle database will be a key enterprise system, replacing a couple of legacy systems that currently are used to source a data warehouse.
Not fully complete in terms of integrating or loading data via an ETL tool, but first things first.  I expect to have futher posts as I work or relearn nuances of Oracle, syntax, etc.
To start with what ended up working:
Installed the Oracle Database 11g Release 2 Client (11.2.0.1.0) for Microsoft Windows (32-bit) from http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win32soft-098987.html
Used the Adminstrator option during installation to get additional tools for Oracle, including a Net Manager that managed Oracle-specific connections.  My gut feeling, of course is that this is hefty footprint (~600 Mb install) on a server to mostly get ODBC drivers, but thus far, haven't been able to determine what's needed and not needed.
After installing, in the install locations there was a seperate executable called odbc_install to run to get the ODBC drivers to show up
"Installed" (really just copy-pasted) Database Browser Portable to a server directory.  This tool provides a rudimentary, but platform-independent viewer to the database.  Oracle has various viewers in its client package, but at least some require 'Java' to be installed, but I'm hesitant to do so on a server.  The Windows server and SQL server have their own set of maintenance issues with updates and service packs, and since using the Oracle-specific viewers won't be used on a regular basis in production that seems like an extra maintenance vector.
Was able to use Database Browser Portable was able to connect to the Oracle database two ways:
1. Setting up an Data Source Name (DSN) in the ODBC settings.  In Database Browser Portable, choose an ODBC setting
2. In Database Browser Portable, choose 'Oracle'.  Now when doing so, it appears there is a drop-down for TNS names...  Mine didn't list any, but typing in manually what I new the TNS name to be worked

Thus far, not seeing any technical difference in Database Browser Portable between the two techniques, so suffice to say, i'll lean toward the Oracle connection type, to avoid the dependency upon the DSN.  Not sure yet if the DSN will be required, or even just come in handy, when designing the actual ETL packages i'll need to build.


What didn't work for me so far to get to this point were 'installing' only the 'InstantClient' from http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html.  'Installing' is in quotes again because it appears the basic technique is to unzip various modules that represent the Instant Client, and copy them to a directory.  Then only the aforementioned 'ODBC_install' is the only actual 'install' on the server.  Using this technique to get the base instant client and ODBC drivers would lead to a ~100-200 MB directory: still a large footprint for simple ODBC access to database, but especially since nothing is 'installed', this seemed hopeful.  Ran through the steps in this article, http://celemotan.wordpress.com/2008/10/22/instantclient/, though, including manually setting environment variables and wasn't able to get an ODBC connection to test successfully against the name I was using for the TNS name. 

An post on the support forum for Portable Database Browser asserted it would be possible to get it up an running with only the InstantClient in a directory.  This was intriguing as it would imply nothing needs to be installed, not even the ODBC driver, and perhaps then this native access technique could be used in SSIS or similar.  In my situation, wasn't able to get any combination of server, port and service name working. http://www.dbsoftlab.com/database-browser/1161-database-browser-on-oracle-instant-client.html

Thursday, August 25, 2011

SQL Server 2008 R2 in Virtual PC

After some travails, build a Virtual PC containing SQL Server 2008 R2, for testing, learning, and demo.

Ran into some issues installing in the VPC environment What ended up working was the lowest tech approach possible.

- Capture the ISO on the guest
○ failed - apparently a known issue with the iso capture feature in VPC
○ ○ Listed as a Virtual PC issue

- Mount the iso through virtual clone drive on the host, expose that drive letter to the guest as an Optical Disk
○ Install directly
§ Failed - unknown error during SQL install
○ Copy the files from the virtual drive to local
§ Failed - "DOS errors" when copying
Sync Toy to perform an incremental copy down to the guest
§ Would lock up SyncToy and freeze the entire VPC
- Extract ISO on the host, create a mapped drive to the extracted files on the host; expose that to the guest through integration feature
○ Copy files from the host drive
§ Slow…
§ Eventually get 'Unexpected errors' the device is not connected.
○ Sync Toy to perform an incremental copy down to the guest
§ Would lock up SyncToy and freeze the entire VPC
- Burn a DVD of the ISO, load that into the host, expose that drive to the guest OS
○ Success

Friday, July 29, 2011

Project Kanban


Setup a Project Kanban for my team's semi-annual governance - my biggest usage of the technique to date that is multi-party and scoped to a single project.


Matrixed by Deliverable on top and subject area on the left. We do a similar family of activities for each of 6 areas.


Here are the first 3 weeks. The whole effort is scheduled for completion September 10, 2011


Update: Added a fourth picture. Day before launch


Update: Added a picture at the end of launch day



























































































































































Wednesday, June 8, 2011

SkyDrive try

My experience with SkyDrive has been a drastic failure so far. I've been trying to put my toe in the water by moving a folder of IT reference articles, presentations, and policy docs that I've carried around for 10+ years up to the SkyDrive. Figured my access was usually 10% editing (or less) and 90% reading, so this would let me get used to having the files in the cloud without having synch be a major concern.

Of course, I'm too impatient to upload the files/folders through the web interface, so i immediately set out to get Windows file system access, and use a sync tool to at least push the files one-way.

It appears to be possible to Map a network drive (How to Map SkyDrive as a Network Drive), using a CodePlex project - SkyDrive Simple Viewer to nav your SkyDrive. Started by doing a Window Copy-Paste, of course it's dreadfully slow and errors out on Visio diagram, among other file types i didn't take note of.

So, on to using SyncToy to copy the files up - at least it will run unobtrusively, and I can review which files were exceptions. SyncToy 2.0 fails immediately upon running the sync, so i look into it... SyncToy 2.1 is out - i had never needed to upgrade... it doesn't fail right away... but every. file. failed. "Exception during run: The FileSyncProvider received an unexpected error while applying a synchronized change. Creating new file {File Name}", and the sync task stops.

Will park this for now... further updates as I retrench and rethink how to attack this