Sunday, July 27, 2008

More Japanese Convenience

A couple of weeks back, I had posted about how things in Japan are designed at a better level for people. I found another good example in the plain, humble, everyday egg. When you buy a dozen eggs in America, the date of expiration is printed on the box. However, if you use the handy egg-basket tray that comes with the fridge, you probably through the box away, right? So, how do you know when the egg is past it's due date.

Most of the farms in Japan have come up with a simple solution: they print the expiration date right on the bottom of the egg. I am not really sure how they do this and the font looks like a dot matix style ink jet of some sort. Clever, isn't it?

Wednesday, July 23, 2008

Project management in IT companies

I've moved from a consulting company targeting smaller companies to a fairly large global company and it's interesting to watch the differences in IT management. There are a lot of similarities, too.

On the differences:
  • Budget: Most of my clients in Seattle had to be convinced, cajoled, or outright pushed to by high quality hardware. In my current company, they are so paranoid about downtime that they through money at redudant hardware that they really, really don't need.
  • Schedule: Right now, I was working on an "accelerated" project - I only had three months to plan and deploy it. I don't think I had three months to plan anything with my Seattle clients.
  • Turf: There arent't enough people in a small company to really generate big turf wars whereas larger companies can't seem to function without them. There were definately some "I built it, you can't touch it" moments with my Seattle clients but the amount of time spent manging that was quite small compared to now.

Similarities:

  • Dithering: When it comes to tech related issues, there are always "what if" dicussions - "what if we build a custom app instead of buying it?", "what if we outsource it", "what if they have a new version?", "what if we using an open source product?", and so on. The amount of time that it takes to explore options, discuss things with leadership, and get approvals for things seem to take the same amount time. Even though my current company is 700 times bigger than my largest Seattle client, they don't actually move noticably slower. I'm actually kind of suprised by that.
  • Managing change: It seems that both small and large companies don't do a good job of actually preparing thier employees for major changes. Very few of my clients would send employees to training before pushing a new software (Office, timesheet tracking, or whatever was being deployed). I tried very hard to push for end-user training in my Groove project but it was delegated to local offices instead of being pushed from HQ. And that has devolved to "go read this website" rather than any structured training. And now, I am not surprised that most of the questions I get are "what is this thing and what can I do with it".
  • ROI: Both my Seattle clients and current company seems to suffer from an odd approach to new technologies. They seem to start with some big plan that will have some big benefit (new communciation tool, smoother operations, time savings). Then, about half way through the planning process, the technical details take center stage. Whenever there is a hiccup, the project shifts towards ease-of-implementation rather than maxium-user-benefit. It seems that the big picture goal gets forgotten slightly - it's subtle but very noticable.

It's only been a short time, though, so I'll keep an eye on other interesting things as it develops.

Yup, it's hot

89-degree F and 79% humidity today and likely to stay that way all week: http://www.intellicast.com/local/weather.aspx?location=JAXX0085

Ouch...

Tuesday, July 22, 2008

It's pretty dang hot

We've had four or five days of over 30-degrees (Celisius) weather here in Tokyo. That means at or above 90-degrees Fahrenheit. Humidity is up in the tropical levels (~80%), too. Chiho and I haven't quite gotten used to that.

It's likely to get hotter over the next week or two. Kyoto and other cities south of Tokyo have been at 36 or 37 C (96-99 F) and the warmth is moving north. Oh well...... at least we have air conditioning.

Adding sites to Trusted or Internet zones

You can add sites to the Internet zones in Internet explorer by manipulating the registry directly. I normally do this via VBScript but that is starting to become an unsupported technology so I suppose I will have to learn to use PowerShell or something. The documentation for this is a bit scattered in the MS documentation, so here's a quick explanation:

The path in the registry related to the URL. The pattern is 2ndlevel.TLD\4thLevel.3rdLevel.
  • http://share.domain.com/ = HKEY_CURRENT_USER\Software\Microsoft\Windows\
    CurrentVersion\Internet Settings\ZoneMap\Domains\domain.com\share
  • http://audit.workspace.domain.com/ = HKEY_CURRENT_USER\Software\Microsoft\Windows\
    CurrentVersion\Internet Settings\ZoneMap\Domains\domain.com\audit.workspace

You can also switch it to LOCAL_MACHINE instead of CURRENT_USER if you want to make this setting apply to Local Service and machine controlled access systems.

At each location, you then create DWORD values. The name of the DWORD is the protocol and then the value of the DWORD is set to match the zone you want to use. I find that I use these protocols the most:

  • http
  • https
  • ftp
  • file

The values are:

  • 1 = Intranet Zone
  • 2 = Trusted Zone
  • 4 = Prohibited

If you enter 3, I don't think is does anything.

Minor note on Junction

I recently deployed a big VBScript that used the Junction software from Microsoft that I wrote about earlier. When you use Junction the first time, you get a EULA pop up. Since that would be very, very annoying as a logon script, I found a way around it.

The only thing that the EULA pop up does is set a particular registry key. If you set that key in advance, you won't get the pop up at all. The registry key is:
  • HKEY_CURRENT_USER\Software\Sysinternals\Junction
  • DWORD: EulaAccepted
  • Value: 1

Once that is set, via VBScript, a REG file, or whatever, the user won't get a pop up.

Wednesday, July 09, 2008

List recovery model of all databases

I put together a quick SQL query this morning that can be run against an SQL database to retrieve the list of database names and thier recovery models. I only tested against an Microsoft SQL 2005 server but it should work against any SQL server.

The blog will wrap the text incorrectly, of course. when you copy and paste, the commands should work correctly.

USE master
GO

-- Declare a variable to store the value [database name] returned by FETCH.
DECLARE @dbname sysname, @mode varchar(1000)

-- Declare a cursor to iterate through the list of databases
DECLARE db_recovery_cursor CURSOR FOR
SELECT name from sysdatabases

-- Open the cursor
OPEN db_recovery_cursor

-- Perform the first fetch and store the value in a variable.
FETCH NEXT FROM db_recovery_cursor INTO @dbname

-- loop through cursor until no more records fetched
WHILE @@FETCH_STATUS = 0

BEGIN
Set @mode = CONVERT (varchar, DATABASEPROPERTYEX(@dbname,'RECOVERY') )
PRINT 'Database Name: ' + @dbname + ' Recovery Model: ' + @mode

FETCH NEXT FROM db_recovery_cursor INTO @dbname
END

-- close the cursor and deallocate memory used by cursor
CLOSE db_recovery_cursor
DEALLOCATE db_recovery_cursor

Sunday, July 06, 2008

Mimi

A little bit of bad news from Japan today, Mimi, our lop-eared rabbit, passed away last night. Mimi had started to not eat and drink much in the last couple of days ad we had brought him to the vet to make sure it wasn’t an infection, abscessed tooth, or something that could be fixed. He seemed to have good energy and was cheerful all the time. According to the vet, it looks like it was just age. While she was packing, Chiho found the receipt from Jones & Co. pets and it showed that we bought Mimi in the summer of 1997 so that made him about 11 years old. That was really, really old for a typical rabbit so we just have to console ourselves that he lived a long life. We’re still going to miss him, though.

Tuesday, July 01, 2008

Groove Project going well

The Groove project that I've been working on is going well but it is really sucking up a lot of time and energy. The software itself it only medium complicated and the infrastructure was all rolled out weeks ago. I've been writing up documentation, an absolute ton of documentation, really. I've been writing deployment plans, backup and recovery plans, data retention plans, security policies, installation instructions, help manuals, FAQs, and more. I feel like I'm writing a damn novel or something. I've gotten some assistance in writing up this stuff but only one person seems to be actually completing things on a schedule. I try to coordinate and delegate but I'm not really thier boss so I don't have much control over thier work.

Honestly, the only really silly part of the whole software is how it forces the local workstation to put everything on the C:\ drive. I wrote about this before and I found a manual fix for it, but now I'm trying to come up with an automated solution for a 7,000+ desktop roll out. Really, what other software published in 2007/2008 requires you you create a VBScript hack to change where the data is stored? At a minimum, couldn't they have made it a sub-folder under My Documents so that if you already pointed My Documents somewhere with more room, Groove would just go with that?