Sunday, February 24, 2019

Great videos from the past

I just found that someone posted (with permission) a set of SysInternal videos from 2006 on YouTube. It has been a lot of fun watching them and remembering what it was like, back in the day. Enjoy!

Saturday, February 23, 2019

Brave - BAT

I have been playing with different cryptocurrencies for a little while, just dabbling. I wasn't in early enough to be a 'BitCoin Millionaire' or anything. Nothing serious, no ream money to be made or lost. I really like Ethereum and have mined a bit. Again, nothing serious. I don't have a dedicated mining rig or anything. The thing that kept me from really digging into the technology was that I was not sure what real problem they were solving. Or perhaps it was just that the problem they were solving wasn't a problem I had. Cash is locally anonymous and I don't feel the need to be anonymous over distances. Then a colleague turned me onto BAT (basic attention token), and I saw something that was solving a problem I had. Or, it was solving a nuisance that I hadn't felt like solving. I regularly use Chrome, but I don't have an add blocker. I want to 'pay my share' for the free content I am viewing but there are sites I avoid because of the pervasive adds. Now there is the Brave browser that allows you to pay for content while also blocking adds and trackers. So, I decided to give it a try. I also signed my blog up to receive tips and tokens. Both of you reading this can now pay me for my awesome content! :-) I will be back to creating content and will keep you updated on this. I am off now to add a tip jar to Ralph and my Cloud Talk Show.

Friday, November 16, 2018

Testing new syntax

A colleague used some syntax that I hadn't seen before so I thought it would be worth testing in isolation.  The notation is an extension of the ternary conditional operator known as the null-conditional operator that was added as part of C# 6.0 in 2016.  I believe I need to up my C# game.  Anyway, here is the sample program I built:

which outputs:
=>
=>Test2
We build our code using the null-conditional operator to avoid having to build out the more common tertiary version of the same code:

Wednesday, November 7, 2018

Stop RHEL from hibernating when laptop lid closes

Quick hit here, I installed Red Hat Enterprise Linux 7 on a decent, but old laptop to let me play with OpenStack in a semi portable way.  The only issue is that I want to close the lid and leave it running and still be able to attach to it.  Close the lid, power savings kick in.  To stop that, just edit:
/etc/systemd/logind.conf
and change:
#HandleLidSwitch=suspend
to:
HandleLidSwitch=ignore

Tuesday, October 23, 2018

Nested Hyper-V and NAT Switches

Quick and dirty, to nest Hyper-V instances you just need to run a quick PowerShell command to set a flag:

Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true

Another interesting find is Setting up a NAT switch for Hyper-V:

New-VMSwitch -SwitchName “NATSwitch” -SwitchType Internal

New-NetIPAddress -IPAddress 192.168.0.1 -PrefixLength 24 -InterfaceAlias “vEthernet (NATSwitch)”

New-NetNAT -Name “NATNetwork” -InternalIPInterfaceAddressPrefix 192.168.0.0/24

Wednesday, October 11, 2017

Converting a datetime to a Client Specified string

How do you handle converting a couple of dates with times to a string for use in a report when the client has specific requirements around formatting that don't align with any of the TSQL standards?  You dig in and go hunting.  Specifically, the client wants the start and end date time values to be displayed in the header of a report as one of the following:

October 11, 2017 18:06 - 21:06
October 11, 2017 18:14 - October 12, 2017 07:14

See what I did there?  Notice that the month is fully spelled out?  See how we collapse the date if the times are on the same day?  Here is the code to do it:

The main trick is to just keep pulling off parts and representing them appropriately.