CBlog(handziuk)

Bradley Handziuk's blog

New desktop build

I recently came into possession of an older, 2008, HP Z600. I built my current desktop in 2012 so this Z600 is certainly older but it was a very good computer when it came out. My current desktop was, for whatever reasons, not running that well.so I decided to try to use this Z600 as my new computer.

My old computer specs were

  • AMD Athlon II X4 640.
  • 8 GB RAM (DDR3 1333)
  • Radeon HD 4670 graphics card. No where near top of the line but it do OK for a while ...Actually it kind of sucked but was the right price at the
  • I had various hard drives while I used this computer but the longest lasting of them was a Samsung 830 2.5". This guy was solid. I never had a hiccup and never had to think twice about my decision to go SSD in 2012.

The Z600 specs are

  • Intel Xeon Processor X5550 (There could be two of these physical CPUs on this motherboard. Maybe I'll buy a second for cheap one day)
  • 12 GB RAM (DDR3 1333). It's 4 GB x 3 channels. Same speed as my old computer but one more channel.
  • Nvidia Quadro 4000. This thing is solid.

I needed to buy a few things to get this to physically work:

  • A DisplayPort to HDMI cable. The Nvidia Quadro has 1 DVI and 2 DisplayPort outputs and my monitors only have DVI, VGA, and HDMI. So, I needed a converter. I wanted this to be one cable because I don't like the clutter of cable ends joined together. Unfortunately, the only one I could find came only in white. All my other cables are black.
  • A USB 3.0 Controller. The motherboard is pre-USB 3.0 but there are cheap PCIe controllers. NewEgg to the rescue!
  • A hard drive. This was the hardest thing to put together. and was a real learning experience. I'll expand on this...

Warning this is really long winded and mostly written for my personal posterity but rad on if you like:

The motherboard in the Z600 is not only pre-USB 3.0 but also pre SATA III. So, in my naiveté I thought I could get a PCIe SSD and skip the whole SATA thing. I also thought that an M.2 form factor = PCIe. Boy was I in for a rabbit hole.

I purchased a Samsung 850 EVO SSD in the M.2 form factor. What I did not appreciate is that M.2 is a form factor and not a transmission protocol. Also, the M.2 form factor is not the same as PCIe. Nothing about this was working. Buying a proper PCIe SSD (which are VERY fast) is also VERY expensive.

To fix my problem I had to do some asking around and concluded that I needed the Addonics AD2M2S-PX2 adapter. Normally people buy M.2 form factor SSDs for laptops but here I am with a desktop so I need somewhere to physically put this thing which this adapter does well. It powers the SSD through the PCIe bus but data transmission is still through a SATA II cable to the motherboard. So no miraculous PCIe transfer speeds for me.

There were about 4 weeks between me buying the 850 and realizing it's not going to work, then buying the Addonics adapter. During this time I set up the Z600 with an older 500 GB HDD spinner just to get moving. Moving my OS from one HD/computer to another HD/computer turned out to be much easier than expected.

I used Macrium Reflect to clone my Windows 10 drive. This put 128 GB (+/- the system reserved partition and the recovery partition) onto the 500 GB HDD so there was a big chunk of unallocated space and that's ok. The plan was to deal with that once I figured out my Samsung 850 situation.

Now with my old computer's OS cloned to a new HDD I can safely plug it into the Z600. The old computer is just as operational as ever so if something goes wrong I can just re-clone. When I booted Windows 10 on the Z600 from the cloned HDD it took a long time to boot. It had to do a lot of updated.

Windows saw that the whole computer architecture had changed out from under it so it did it's best to find all new drivers for everything. Processors, motherboard, graphics card, network card, etc. After a few reboots I was finally able to log in. The only thing I really had to do manually was tell it to go find a later version of the Nvida Quadro driver. It was all surprisingly smooth.

I then removed all the old drivers for my old motherboard and GPU. The system did not like those drivers and supporting apps which are set to run on startup to be trying to do things with stuff that doesn't exist.

With everything functioning properly, and me having figured out the whole Addonics adapter situation and having gotten it in the mail, I was then ready to enter the final form. Samsung 850 into Addonics SATA slot, SATA cable connected from adapter to motherbaord, adapter plugged into PCIe slot.

I used Macrium to clone my HDD to the new SSD just like before, except this time the Windows 10 instance is already configured for the new system. When I boot from the 850 it works like a charm! Success!

The only thing left to do is resize the data partition because my new SSD is 250 GB and the old one was 128 GB. I figured that'd be simple enough but it was some how very complicated.

Windows Disk Management (and DISKPART on the command line) does not let you move the recovery volume and the recovery volume is in the way of expanding the C: data partition. I even crated a live Linux CD with gparted on it and tried moving the recovery volume all the way to the last logical location on the drive and expanding the main partition. Bang. Windows can't boot. "bootmgr is missing" Great. I undid the partition reshuffling but Windows still couldn't boot. Ultimately I had to reclone from my backup.

Except this time I cloned only the system reserved space and the main OS volume and didn't use the recovery volume. I have other backup solutions anyway, right? I hope that doesn't come back to bite me later.

With nothing but unallocated space to the right of my OS volume I was able to extend the partition using Disk Management.

This SSD is lightning fast. a full reboot is less than 30 seconds and start up, after post, is like 5 seconds. Over all it's a huge improvement over my old computer even if this one is much older. The day to day winner so far is that ChromeCast works flawlessly now. I'm pleased with this extended Frankenstein computer build. And now I can throw the old one away (after salvaging a few parts, of course),

Joining strings to make a Select statement in Excel

I use Excel a lot to move data into SQL Server. But what I don't do is create a table in Excel, save it, import it into a database using the SQL Server Import and Export Wizard. I don't like that to have access to the data I'd have to create a table and remember to delete it.

Instead I think the easier route (especially with smaller datasets) is to turn the data in Excel into a Select statement which can be scripted into a #temp table or used directly.

Color Animal Place
Red Lion Africa
Blue Seal Antarctica
Purple Monkey
Dishwasher

When can be hooked up with this formula to make a Union statement.

Formula
Result
{="union select "&JoinStrings(",",$A$1:$C$1&"='"&A2:C2&"'")}
union select Color='Red',Animal='Lion',Place='Africa'
{="union select "&JoinStrings(",",$A$1:$C$1&"='"&A3:C3&"'")}
union select Color='Blue',Animal='Seal',Place='Antarctica'
{="union select "&JoinStrings(",",$A$1:$C$1&"='"&A4:C4&"'")} 
union select Color='Purple',Animal='Monkey',Place='Dishwasher'

The code for the JoinStrings can be found in another blog post here. Remember that the Excel formula has to be entered as an array formula (crl+shift+enter).

Now you have something you can just copy into SSMS, use once, and not have to worry about any cleanup:

select Color='Red',Animal='Lion',Place='Africa'
union select Color='Blue',Animal='Seal',Place='Antarctica'
union select Color='Purple',Animal='Monkey',Place='Dishwasher'

Variable Column Width in SSRS Matrix Report

If you have a tablix/matrix/cross tab report in SSRS you'd think making variable column widths would be easier because there are variable data in each column by design. Not so. Setting CanGrow = true on the textboxes which constitute the column doesn't make the width change, it only affects the height and then only if you have word wrap on it seems.

The work-around is to make a dummy column which can be toggled on or off depending on if you want a wide or skinny column. This process lets you have as many set column widths as you have dummy columns. It will not let you have 100% dynamic widths.

When you have your dummy columns inserted merge all the cells together so they are all treated as one still but they span multiple columns.

Once merged it should look like this

Now you have two columns; the left column will always stay on and the right column can be switched off if you need a narrower column.

Remember that whatever expression you use to set the visibility must evaluate to True or False where True = Visible and False = Hidden.

Mount Defiance, 2015

Awesome hike today up to Mount Defiance today. It was raining at the trailhead and at ~4000 ft it was sleeting and at 4500 ft it was snow that was sticking. I turned around at 5200 ft. I wanted to go all the way up to the peak but it was snowing too much for me.

The access road from I-90 to the trail head was about 3 miles long and very rutty. There was some tree clearing action happening and a bunch of mud/rocks were washed onto the road in the rain. My car barely went over it on the way in and with the continued rain I was worried about getting back over it again on the way out, but i did make it. Just had to get some speed up.

There were only 3 other cars in the lot when I got there and three of us arrived at the same time and I scampered out ahead of everyone. That last car must've been the guys I saw leaving up at Mason lake. They'd spent the weekend at Thompson Lake. It must have been a very wet weekend for them. I was the first person they'd seen since Friday apparently (it was Sunday AM at the time).

Crossing the stream leading out of Mason Lake was tricky. It was very full and fast flowing. There were enough rocks poking out of the water to jump across though. Again, I was kind of worried about getting back over that on the way down because the rain really picked up but it was fine, there was really no change in the flow.

Once out of the trees and along the ridgeline toward the peak it really started snowing. You can see on the tracks below where I turned around.

I didn't see another soul until most of the way down. There were another 6 groups or so starting out just as I was ending.

Mason Lake was beautiful and there are so many trails leading to many different places from that one trailhead. It seems like a great place to explore. This is going to be a place to be next Summer!

Mount Defiance Hike (kml)

Stairs through the rock fields

The remnants of fall colours

Mason Lake

For brief moments you could see far into the distance. But then the wind would blow and the view would cloud over.

Mason Lake again from a little higher

The trail spur to get off the ridgeline and start to the top of Mount Defiance.

Back toward Seattle

Rosalie Peak, Bailey Colorado

Rosalie Peak Hike (kml) (yellow line)

The hike we expected to do (kml) up to Mt. Logan (green line)

Gothic Basin

Gothic Basin Hike (kml)

Our 2015 Garden Harvest

This year was the best year for our garden! 2014 we also fantastic but we started in May (because that's when we moved into the apartment) which meant we didn't have the full season to think about what we were going to grow and to plan and we missed out on the whole spring season.

We had several improvements to the homestead this year the biggest of which was the chickens of course. But since we also have 6-4x8 ft planter boxes we tilled them all up and revitalized them by distributing a half cubic yard of fish compost from the Dirt Exchange. By the way, Dirt Exchange is really awesome. I don't think we'll be buying bagged compost/soil again. They have so many options and the prices are great! But, anyway, the fish compost was super rich and really helped out the beds.

Emma has been using this software called The Old Farmer's Almanac Garden Planner. It was great for laying out what would go where, how much we could get, and suggesting what plants should be planted when given your location and plant hardiness zone.

I've not been keeping particularly good tabs on general yields but this is the gist:

From our peach tree:

  • 2 gallons of frozen sliced peaches
  • 4 quart jars of canned peaches in syrup
  • About 3 fresh peaches per person for about 2-3 weeks

From our fig tree

  • ~3 pints of fig jam
  • A lot of figs fed to the chickens and a few eaten by us. They are really hit or miss though. Often they are dry or moldy. They seem to only be ripe for a day. The timing is crucial for picking them.

We have 2 plum trees which we ate a lot of fresh plums off of but didn't make anything from. We have in the past made plum tarts but the plums ripened with unfortunate timing this year.

We have 3 Black Krim tomato plants (larger tomatoes) and a half dozen Matt's Sweet Cherry tomatoes (very small heirloom tomatoes). Those provided many fresh tomatoes for us but Emma's co-worker also had way more tomatoes than she could eat. Mostly Sun Gold Cherry tomatoes. From our plants and her's we made

  • ~4 pints of tomato jam
  • Several servings of tomato soup
  • 4 pints of tomato sauce
  • Lots and lots of dehydrated cherry tomatoes
  • Many, many salads worth of Matt's Sweet Cherry tomatoes (and kale)
From our 6 kale plants:
  • Continually making kale through the spring, summer and fall. Lots of salads.

We planted several yellow bean plants and (even though Emma things the yield was low) I think they did very well. Maybe 6 grew well enough to make beans. There was never enough for a side dish of beans but they were always an excellent compliment to the cherry tomato/kale salad.

Emma planted 3 Marconi Rosso pepper plants which to her great pleasure actually made peppers this year!

  • ~2 dozen peppers

The squash did not do great this year. In summer 2014 we were getting almost a squash per day for like 2-3 months. We were keeping a sheet on the fridge with a tally of the squash count and we ran out of room on the paper. This year we had twice as many plants but probably only got half as many squash. Two of the plants were zucchini and two were Early Prolific Straight Neck squash (a bell shaped yellow squash). Both were slow to start and never made huge fruits. Regardless, there was always a squash of some size available for spaghetti sauce, omelette, or quiche.

Last December we planted garlic and in the spring picked it all and dried it out. We're still eating it. We got about 2 dozen heads of garlic. Still eating it. One of the best things we've planted!

The onions yield was terrible. The soil moisture was hard to keep right and they never got that big. We planted red onion bulbs and they expanded by about 3 times the size. Not much. They flowered early too and we were not aware we needed to snip the flowers off to keep the bulb growing. I guess it's the same logic as with a lot of other plants (e.g. basil you snip the flowers off to keep the leaves growing).

We have a few strawberry plants that were in one of the garden beds when we moved in. They keep creeping and making daughter plants but there aren't many fruits coming off of them. Plus Misty, our cat, keeps choosing to poop near them. She is disgusting.

The basil plants were one of the most successful plants in the whole garden. We had 9 plants I think and we made pesto several times. Every time we made pesto for pizza we'd freeze the leftovers in an ice cube tray and save them for later. many pizza later we have about a half gallon of pesto cubes in the freezer. Our home grown garlic went into each batch. The cubes should last into the winter!

We had small parsley and rosemary plants. The parsley was in a pot and the rosemary was in the ground. The parsley did ok but the rosemary died right away. BUT we left the rosemary in the ground and lo and behold several months later when the weather got a bit colder it started growing again! Now it's thriving. I couldn't believe it. We have another rosemary we got about 8 months later and it is suffering the same fate. I've been keeping it around in the hopes that when fall comes it will comeback to life...we'll see.

There were a few minor plantings in the spring of arugula and broccoli. Maybe 4 heads of broccoli.

Snap peas (spring) not on a trellis and didn't do great. Emma ate them all basically without giving me any. She's a much bigger pea fan than me.

We just planted snap peas, snow peas, romesco broccoli (~12), arugula, Rainbow chard (1) for the fall.

And that's about it. That's the summary of the 2015 plantings and eatings. I think we have most of this written in Emma's Almanac program but I wanted to document this for posterity, too. Hopefully next year will be just as good!

People can't pronounce or spell our name

The NATO Phonetic spelling of our name, Handziuk, is

Hotel
Alpha
November
Delta
Zulu
India
Uniform
Kilo

and we pronounce it like Handz Yuck Maybe you want to argue that Handziuk should be pronounced Hanz juk but that is just way too complicated.

Ways Handziuk is not pronounced are:

  • "Handzuik "
  • "Handz you ik"
  • "Hands-wick"
  • "Handzik"
  • "Handzuki"