28. March 2013 08:26
I've started a new section in my on going series on programming. I'm focusing on Technical Debt.
I also spent the evening upgrading my dev environment on my Windows 7 desktop system. I've installed VS 2012 Ultimate (thanks again Dreamspark.) About the only problem I experienced is that my wife uses this box as her primary desktop. She was constantly kicking me off during the install. User switching worked well and the installation didn't have any glitches, despite the constant user switching.
(Once you're comfortable with user switching, allowing others to use the computer while you are trying to perform some task is much less painful.)
17. March 2013 10:12
I've received my Windows Phone on 2/20/2013. It's a Nokia Lumia 822. This is a short synopsis of my experience so far:
- Email is my most useful app. I have setup my work account and two other public email accounts. Email works well. I've turned off automatic updates to cut down on battery usage.
- The app Battery+ is useful for understanding how my device is consuming battery resources
- Apps like Facebook, Twitter and Linked in can drive you nuts during the day due to all the "updates." I've turned off auto updates and blocked the apps from background processing.
- The camera and movie captures for this phone are excellent for my purposes.
- Skydrive is really useful. Used in conjunction with OneNote, it's a life saver and more effective than EverNote.
- The Kindle reading app is a pleasant find. I like being able to access a book and read a little when I have some spare time.
- SMS messaging on my smart phone is a bit easier in some ways. Although, it only just now (last update) allows me to text my whole family to meet me for dinner, etc.
- I miss the speed dial features of my Samsung Convoy II. I miss that feature a lot.an option for touching the tile so it will auto-dial the mobile number. (Perhaps associating
- Setting up a playlist on the phone is difficult. Need much improved documentation on this feature.
- The applications need to make their background usage and potential for high battery usage plainly available. Some of my favorite apps turned out to burn through battery charge at a very high rate.
- I want an app that allows me to view the event logs on the computers in my house. I'm not looking for rdp. The screen is too small for that. However, I do want to examine the health of the systems.
- There needs to be an easier way to turn on the battery saver option. Currently, you have to touch the settings options, scroll to battery saver and then enable or disable it. Way too much navigation. (And why is leaving the battery saver "always on" not recommended?)
Overall, I am still learning. I am still transitioning from a "feature phone" to a "smart phone." I don't intend to use my smart phone as my primary device for internet, email. I don't play games, so I cannot offer any opinion on games or gaming with this device.
- I became enamored for a few days with 4 square, but I'm passed wanting to "check in." I'm old enough my friends prefer to call me to join them for dinner.
- I don't care about Facebook updates at all hours of the day and night.
- I don't care about Linked in updates at all hours of the day and night.
- I don't really care about most twitter updates. I like to grab the ones that highlight new articles or blog posts about programming subjects I follow.
- I use the heck out of OneNote for just about everything. I'm thankful I have the app via DreamSpark.
- Ideas for speed dialing: I don't like having to find the tile for my wife on the start screen, touching it and then selecting the mobile phone number to talk. I want to hit 1 on a keypad and call her. Or at least, I'd like to associate a default phone number with the tile. I'd like to be able to touch the tile for my wife on the start screen and have it dial the default phone number.
16. March 2013 07:48
I was on call last week, during some incredibly hectic network switch overs and server patching. I learned a lot about our infrastructure, and unfortunately, found out about several Windows Services that only one or two people knew about (and only one of the knowledgeable people was accessible.) This little incident caused quite a few managers to be awakened in the middle of the night to handle a problem that was really quite simple to fix - if we had a smidgen of documentation. This event was a very stark reminder to me that companies have to spend time documenting their environment.
If we had a cross reference of services running on the affected servers, we could have solved our problem in a couple of minutes instead of a few hours.
The problem that all companies face is staff turn over. When a staff member leaves, and there is no documentation, the knowledge is lost. If the company is lucky, you might be able to fish the information out of an email archive. But mostly, the company is stuck with re-learning the process. This is expensive, embarrassing when it affects customers and time consuming.
You have to make time to document your processes and develop operating manuals.
26. February 2013 19:54
I had a most interesting experience today. I've been assigned to correct and improve an SQL procedure that was performing poorly during a critical holiday period.
The queries contained in the procedure had been transformed to dynamic queries in order to handle linked servers based on vendor type and geography. From the start, it was apparent that the original author did not understand how to pass parameters to and from parameterized queries. Instead, the transformed queries inserted records into a table var for later recovery.
Well, there is an excellent mechanism for passing parameters to dynamic SQL using sp_executesql. A quick check of MDSN presents several excellent examples. Here's my rendition of the problem.
DECLARE @sqlCommand nvarchar(1000)
DECLARE @campgn1 varchar(20)
declare @startdate datetime
declare @campgnname varchar(50)
SET @campgn1 = 'ABC1234'
SET @sqlCommand = 'SELECT @stdt=startdate, @cname=campaignname FROM ' + @linkserver + '.' + @targetdb + '.dbo.mktcampaign WHERE campaigncode = @campgncode'
EXECUTE sp_executesql @sqlCommand, N'@campgncode nvarchar(20), @stdt datetime output, @cname varchar(50) OUTPUT' , @campgncode=@campgn11, @stdt=@startdate OUTPUT, @cname=@campgnname OUTPUT
select @startdate as [Start Date], @campgnname as [Campaign Name]
As you can see, it's pretty simple to pass parameters into and out of dynamic sql using sp_executesql.
2. February 2013 16:22
I spent two hours riding cross country on my mountain bike today. Have some awesome pictures. First picture is of a power line trail I was riding:
As you can see, it's an incredible day to be outside
Here, I am about to go over a "cliff" in a very real sense. 40% grade over this rise and thorns and rocks at the bottom. Incredible feeling, my heart was in my throat:
This is 1st gear-1st gear hill. Those of you with two sets of gears will know what I am talking about. What you can't see is around the bend of the road is a six foot drop off into a rock bottom gully:
And this hill damn near caused my heart to burst. Looks mild and flat. It's a 25% grade. Awesome for building thighs and buttocks:
Here's some wonderful eroded rock formations I came across: