Friday, September 08, 2006

Good to Great and Zebra Ulcers

I recently made a connecting between too different books I've read: Why Zebras Don't Get Ulcers and Good to Great. I know many, many people have read 'Good to Great'. Probably not so many on 'Zebras', so here's a quick break down on the concept of the book.


One of the points of GtG (Good to Great) is the concept of a 'Level five Leader'. The traits of this level five leader are many, but a primary focus of this leader is that when things go good, they credit luck and other people as the source of the success and, when things go bad, they take the blame upon themselves. This is in conflict to the view those underneath of such a leader would describe, saying that the leader is the source of the success and is hardly ever to blame for any failure.


In 'Zebra', many styles of stress are described. A classic example of both how stress is relative and created in our minds is zapping a rat. One rat receives 25 zaps an hour while another receives 5. Then a change is made, and both rats are receiving 10 zaps and hour. The rat going from 25 to 10 thinks that things are getting better and his stress indicators will decrease, while the other rat, seeing in increase in zaps, thinks things are getting worse and thus his stress indicators will rise. Ultimately, both rats are in the same boat, but with complete different reactions to the new zap level.


So this brings us the relativity of stress: another major trait to how stress is handle is the amount of control a person has, even if the control is illusionary. People are much more capable of handling a stressful event IF they believe that there was little they could have done to change their present situation. If things are going good, they take credit and say, ahh, this is the life, good for me, and stress is low. If things are bad, they take the weight off their shoulders and say, well, this isn't my fault and thus I should feel to bad about this. There's a fine line to this, as people can also feel hopeless.


Which, of course, is in direct conflict with our 'level five leader'. Another point made in GtG is the general quietness and almost zen quality these leaders posses. It would seem to me that one of the special things about these leaders is how they take on the bad things and give away the great things all while somehow having a very level headed approach to the immense stress such a life-attitude must create.


Not only that, a level 5 leader frees those below him from this cycle of stress: imagine working under a person where you not only allowed to make mistakes, but some of the blame would be taken off your shoulders, and when things are great, you get the credit! I can just imagine how people would blossom in such an environment.


There's two classic sayings that pretty much give away the wisdom contained by these leaders: "I may not be able to control my situation, but I can control my reactions to the situation.", and the every classic Serenity Prayer.


For those of you who haven't read 'Zebra', I highly recommend it. It's a great 'meta' book, and has helped me think about my thinking process and recognize stress reactions that I then choose to control. It really has made a difference in how I react to things. It's a bit of a heavy book, but it is science, which, to me, makes it all the better. This isn't a mumbo-jumbo self-help book.


I think is still more to learn on how level 5 leaders react to stress and how level 5 leaders effect the stress level of those below them. Beyond that, I would hypothesis that a level 5 leader has less stressed out minions than average and that this lower stress level has many positive influence, both in productivity and creativity.

Tuesday, August 22, 2006

Add persitent state management with ASP.NET 2.0 and SQL Server Express

So I had to dig a bit to figure out how to add persistant SQLServer state management to ASP.net 2.0.


I'm using Web Developer Express (and the rest of the express studio suite) and I'm also using Sql Server 2005 express.


Ultimately, I found the tool located in:


C:\windows\Microsoft.NET\Framework\v2.0.50727

and I had to run:


C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql.exe -ssadd -sstype p -E -S .\sqlexpress

which gave me the results I wanted.


Here's the error message I was getting before I got things cleared up:


An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.SqlClient.SqlException: An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[SqlException (0x80131904): An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)]
System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +575
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +160
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +122
System.Data.SqlClient.SqlConnection.Open() +229
System.Web.SessionState.SqlStateConnection..ctor(SqlPartitionInfo sqlPartitionInfo) +149

[HttpException (0x80004005): Unable to connect to SQL Server session database.]
System.Web.SessionState.SqlSessionStateStore.ThrowSqlConnectionException(SqlConnection conn, Exception e) +276
System.Web.SessionState.SqlStateConnection..ctor(SqlPartitionInfo sqlPartitionInfo) +491
System.Web.SessionState.SqlSessionStateStore.GetConnection(String id, Boolean& usePooling) +248
System.Web.SessionState.SqlSessionStateStore.SetAndReleaseItemExclusive(HttpContext context, String id, SessionStateStoreData item, Object lockId, Boolean newItem) +213
System.Web.SessionState.SessionStateModule.OnReleaseState(Object source, EventArgs eventArgs) +713
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +167
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +117

Thursday, August 17, 2006

How to fix a broken Spextrum DX6 Antenna, part 1

I have a Spectrum DX6 transmitter/receiver combo for my model airplanes that I love. I just really got into model airplanes and the horrors of dealing with crystals and the glitches that go with old-school transmitters is something I have never experienced. When I dropped a load of cash to get all my equipment, I went for the cutting edge and it IS good.

Anyway, for all it's technological glory, the transmitter/control has several weakness, one of which is a physically weak antenna. Yep, I broke mine. It was my fault, I... stepped on it. Yeah, I know, dumb. However, upon trolling the internets, I found that I was not the only who had snapped the fragile chunk of plastic otherwise known as an antenna. Seems Spektrum had to cut corners some where to mass-market their new tech.

The thing with with the Spextrum technology is that it uses the same band of the radio spectrum as microwaves, some cordless phones, 802.11x wireless, and variety of other things. This great because it gives the average hacker, like myself, a plethora of equipment and parts with which, to, well, hack the thing with.

So, in disgust of the sad, sad antenna and in the spirit of co-opting things for unintended uses, I'm going to replace above mentioned broken antenna with a removable antenna like god intended.

So, two parts are required:
  1. U.FL to RP-SMA Female Bulkhead 6"
  2. 5.5dBi Rubber Duck Antenna

Based on what I've been reading, these two items should get me back into business. And on top of that, I'll have a nice, high quality, removalable antenna so that the next time I break it, I can replace myself. Again.

Granted, I haven't even ordered the bloody stuff yet as my buddy 'cash flow' and I aren't getting along at all right now. But wait for pay day, oh yes, just wait for payday.

Tuesday, August 15, 2006

Blue sky

Ahh, blue skys. I have to take pictures of them because, well... yeah, nothing in this life is simple =). Not that things are bad, becuase they aren't. The marvels of modern life are firmly going in my favor. That doesn't mean it isn't complicated or mucho-grande work. It is. However, distractions keep me happy.