Tech in the 603, The Granite State Hacker

Microsoft Most Valuable Professional (MVP)

Jim Wilcox – 2019-2020 Microsoft MVP – Developer Technologies

This showed up in the mail today! Despite the April 1st date, it’s not an April Fools’ gag after all! I’ve only ever seen one of these trophies in person before this one. I’ve been trying to stay chill about it…. but heck, here it is…

I’m profoundly honored and thankful to say that Microsoft has chosen to award me with this 2019-2020 “Most Valuable Professional” (MVP) award, in the category of Developer Technologies!

If you’re not familiar with this award program, check out the program’s official web site: https://mvp.microsoft.com

Tech in the 603, The Granite State Hacker

Tribute to the TI 80-something Graphing Calculators

Rummaging thru a box of stuff in storage, I ran across my old Texas Instruments TI-85 calculator.  I had to stop and fiddle it for a moment. I grabbed some AAA batteries, only to discover that the CR1616 backup had given up… the calculator operates like new, as in factor reset… but sadly, that means a game program I wrote for it 20 years ago was finally gone forever.

Back in the early 90’s, Exeter Area High School had an advanced math course that required a TI-81 calculator. I gladly used the course as an excuse to get my hands on this relatively expensive (near $100 in 1990 dollars) but amazing piece of hardware at the time.

In short order, I added its programming language to the list of languages I had already taught myself.  I loved using trigonometric functions to create pictures. I used to program it to do my trig and pre-calc homework for me. (In retrospect, my attempt at “cheating” was a hack that I learned more from than any lecture or textbook ever would teach me… you see, in order to program the calculator to do advanced math for me, I had to thoroughly understand it, myself.)

My own TI-85, which I upgraded to
for calculus at UNH. It’s a bit dusty today.
It cost about $100 when I
purchased it in the early 90’s.

The TI-8x calculators were my “gateway drug” to my love of mobile development.  I was already developing software for PCs, but I loved the challenges imposed by yet more limited footprints and hardware capabilities. 

I kept my TI with me to the point that my sister nicknamed it a “porta-geek”…  (There was even a girl who stole it from me, thinking to wound me for the fact that I wasn’t interested in dating her. It had no effect; I obliviously assumed I’d misplaced it in my own absent-mindedness. The story came out several years later, after I’d purchased a replacement.)

The term “porta-geek” is a term I still whimsically apply on occasion to my current daily driver mobile device, my Lumia 950XL running Windows 10.  My sister’s jibe didn’t phase me, either.

By coincidence, I was also in Target’s electronics department today. I was surprised to notice that they still had several 20+ year old TI-80-somethings…  but rather than the price being lower, the prices are actually higher.

A selection of same-generation TI calculators at Target today (3/20/2016).  Notice the TI-80-somethings still going for about $100+.

I can’t really say why 20+ year old calculators should still cost more than they originally did…  clearly normal technology market forces are not in effect for them.  My spidey-sense for socialistic-driven monopoly tingles.  I’m not the only one to have noticed the… discrepancy… over the past couple decades.  ( https://www.quora.com/Why-does-a-TI-83+-calculator-cost-the-same-as-it-did-12-years-ago )

That said, they were, and are great devices.

I’d love to see a Windows 10 emulator app made out of them….  maybe some day I’ll find enough spare time…  🙂

Tech in the 603, The Granite State Hacker

Cobbler’s Shoes

Happy New Year! I hope you enjoyed the holidays!
 
I took time off for the holidays… not as much as I’d have liked to, but enough to enjoy it.

What’d I do?

The cobbler finally got a chance to tend to his own shoes, at least infrastructure wise.

A few years ago, I caught that MS was giving away a license to Windows System Center Core, and I realized I had enough retired hardware to cobble together a hobby-level host. I then did a Physical->Virtual on my small network of Windows 2003 based servers that I ran the NHSPUG website from.

The setup was nice, actually… all three virtual machines ran with room to spare on what was originally an old client-class PC. With dynamic RAM turned on and all three VMs cranking, they occasionally managed to consume nearly a third of the host’s 8GB of RAM.

Having recently had opportunity to get a hold of platform MSDN licensing, I upgraded my entire home network infrastructure by two platform generations across the board.

Seriously… Windows Server 2003 ->  2012 R2 64, SQL 2005 -> 2014, SharePoint WSS3 -> SharePoint Foundation 2013.

Almost all of it was build, replace, rip… build new VMs, integrate them into the domain, migrate data & config as needed, then shut down the systems they replace. The fun one was SharePoint WSS 3.0 upgrading to Foundation 2013. I had to bounce the content databases off a spare 2010 farm I had left over from a project at work. It was nice that it was possible to do that, given that the 2010 farm was a different domain. It’s amazing how much you can get done in short order when you are a one-man IT shop… the communications overhead savings alone is unreal.

The hard part is that newer software in the 64bit range uses much more system resources, so I have extended hosting not just to my System Center, but also to two Windows 8.1 Pro systems running Hyper-V, just to spread out the necessary load and provide some critical system redundancy.

With that, only obvious thing externally is that the Granite State NH SharePoint Users Group website ( http://www.granitestatesharepoint.org ) is now SharePoint 2013 based.

Internally, things generally seem a touch faster, smoother… maybe that’s just psychological, but I notice the difference, even if my wife & kids think it just functions as always, as expected.

I guess the irony in this is that my hobby infrastructure backlog is knocked down a few more notches than I thought I would ever get to… (yes, I took time off from work, and, to chill, I did some of what I do at work.) now my hobby development backlog has new possibilities and subsequently grown substantially.

One of the first things I’ve got to take care of is the few services the SharePoint upgrade has caused… the NHSPUG site still has some cosmetic issues I want to sort out. My Windows Phone apps that integrated with the WSS3 site are now broken, and I have some jiggering to do with my dev environment before I can even diagnose them. That doesn’t even cover some of the things I want to do with the NHWPAD group and my hobby/portfolio projects (e.g. Jimmy Sudoku).

Tech in the 603, The Granite State Hacker

An Alternative Profile, in C#

The folks at BlueMetal keep profiles of each team member on the web site.  They asked all of the recently added teammates to draft up a profile. The hard part for me was that it felt like I needed to model and express myself in terms of… C#, of course.  🙂   I wrote this with enough supporting scaffolding to get it to compile…

using System;
using System.Threading;
using System.Threading.Tasks;
using BlueMetal;
using Microsoft;
using Database.SQL;
using Web;
using Mobile;
using Services;
using Cloud;
using Experience;
namespace Profile
{
   public class Jim_Wilcox : SeniorApplicationDeveloper
   {
     private Jim_Wilcox()
       : base()
     {
       Blog = “http://granitestatehacker.kataire.com”;
       CommunityLeader =
         Community.NH_SharePoint_UsersGroup |
         Community.NH_WindowsPlatformApplicationDevelopers_UsersGroup;
       EventCoOrganizer = Community.SharePointSaturday_NH;
       YearsOfExperience = Qualifications.Decades;
       Vision = Qualifications.EnterpriseLevel;
       LearningMode =
           Qualifications.Continuous | Qualifications.EarlyBinding;
       Skills =
           Skill.NET | Skill.MVC | Skill.SharePoint | Skill.TFS |
           Skill.Azure | Skill.SQL | Skill.Many_More;
       Industries =
           new System.Collections.Generic.List<Industry>() {
             Industry.Military, Industry.Telecommunications ,
             Industry.Retail, Industry.Financial ,
             Industry.Healthcare, Industry.Hospitality ,
             Industry.Concierge, Industry.Construction ,
             Industry.Many_More};
     }
     public static async Task EngageAsync(StatementOfWork context)
     {
       await BlueMetal.Project.Execute(context).UsingDeveloper(Individual);
     }

     public static Jim_Wilcox Individual{ get { _unique = _unique ?? new Jim_Wilcox(); return _unique; } }

     }
}

Tech in the 603, The Granite State Hacker

Winds of Change

If you hadn’t heard yet, Jornata merged with BlueMetal.  As part of the merger, BlueMetal organized a session of “BlueMetal Academy” to help transition the team.  In spirit of a true merger, Jornata members participated as trainers, as well, showing that Jornata’s culture is really being assimilated, not purged.  (The merger is a solid marriage, rather than simple annexing of resources, both sides bring common values but distinct strength to the partnership). 

At the end of the training, we were asked to come up with one word to reflect what we’d learned over the course of it.  Just one…  on a moment’s notice.  Responses were things like “Integrity”, “Consistency”, “Connection”, “Inspiration”, “Committed”, “Legit” and a few other words of similarly positive connotation.

I had the advantage of being among the last in line to respond, so I considered each of them as they were spoken.   In my head, I responded to each word as it was spoken.  “Yes”, “True”, “Good one”… those all fit.  “What says all of that?”, I thought.  Digging deep, I could only think of one word that conveyed all those qualities… everything we learned.  there’s only one word that says it all, and I didn’t say it to play Captain Obvious…  “BlueMetal”  

Ok…  the cool-aid is either totally Stepford, or totally legit.

Given my experience with BlueMetal teammates in both the SharePoint AND Windows Phone Dev communities, before I ever had the opportunity to join… it’s not Stepford.

That said, I think the expected answer was “Mahan”, as in Mahan Khalsa, author of “Helping Clients Succeed” which plays an over-arching theme across the company.  Someone may have even said that, but I didn’t catch it. I still like my original answer.

This past spring I joined Jornata, mostly to shake up my career.  Jornata was/is a fantastic team to be a part of in its own right.  My prior experience with them in the SharePoint community was also first rate. 

I might have pursued a job at BlueMetal years ago on my own were it not for the daunting commute.

The winds of change clearly had more in store.

Now, I find myself thinking that BlueMetal really looks like the company I always had in mind to work for when I was teaching myself programming as a kid.. and I mean everything..  from its respected thought leaders to its community involvement to its extremely purposeful corporate structure…  being employee-owned…  I realize this team is top to bottom, front to back, enterprise ready, industrial strength, yet premium consumer quality… and they have my back. It will be my honor to have this team’s back.

I’m very much looking forward to settling into the new team, and really looking forward to digging in on a nice juicy app development project.  Duty to the customer has pulled me quite a bit toward infrastructure build outs… Being successful at those things has had the curse of being asked to do more of it. The further away from C# I get, the further I am from my true passion & real value add, and that doesn’t really cut it for me or my team, longer term.

so…  the commute sucks… but if that’s all I can think of to “complain” about…  I guess that’s what it takes to be “The Granite State Hacker”, for keeps.  (I’ll secretly blame NH politicians for making it so hard to find a sufficiently legit tech offices in NH, and work at home every chance I get.)

This marks a new chapter for my career, without a doubt, and I’m sure I’ll be inspired to blog deeper than what had become all too common Microsoft cheerleading posts.  (Now I can be a BlueMetal cheerleader, too!   ok…  I’ll try to refrain from geeking out about my team too much.) 

Tech in the 603, The Granite State Hacker

Alaska, Undiscovered Country

There’s been a note of surprise in the money news of late about Alaska. 

It’s become a bit of a surprise that the most sparsely populated state in the US has suddenly become the hottest opportunity for corporate growth.  Alaska is a place where consumers have been largely ignored and fully under served…  yet suddenly logistics technology caught up with economists.  The change in tide has come about so suddenly that there’s actually a race to get established there before the market gets saturated by competition.  (For Example)

What’s a tech blogger doing, pointing out an economics topic?  Well… here’s where the post turns into a geek post…  🙂

I can’t help but notice a parallel between the Alaskan boom and the Windows Phone boom that’s also under way.  Corporations in saturated markets (IOS and Android) meet the growing, underserved market, and the realization that both past investments and new technologies can be leveraged…  and suddenly there’s a whole new customer base waiting to be conquered in terms of apps and customer attention and loyalty in the company’s native space.

Unlike Alaska, the Windows Phone market is global.  It’ll likely literally take something earth shattering to make Alaska a bigger part of the US market than one of fifty states.  Windows Phone Store is already serving over 100 markets world wide.

Unlike Alaska, the Windows Phone market growth opportunity is virtually unlimited.  A company that conquers an Alaskan market will see growth, but it will not likely ever exceed the established markets in the lower 48.   In the Windows Phone market, a company could make it’s big break there in the relative scarcity of competition, and even as the Windows Phone platform market share grows, could end up seismically shifting the landscape in their market.

Unlike Alaska, there’s no logistics challenge.  Many companies already have all the elements required to make the jump to Windows Phone…  the talent pool, the code base, the infrastructure, very likely existing network services and even binaries.

Microsoft and Nokia have already taken the Windows Phone platform to the many Alaska’s of the world, and the platform’s already beating out the likes of both IOS and Android in many of them.   The US market is critical, but Microsoft (and Nokia) know that these the Alaska’s they’re winning in will eventually unite, and overwhelm from the edges as the incumbent platforms fade past their maturity.  Those with vision beyond this quarter’s numbers would be wise to jump on board before their competition saturates their market.

Tech in the 603, The Granite State Hacker

If the iPhone is “The Turn”, It’s Not “The Prestige”.

A week ago this past Saturday, I presented at SharePoint Saturday New Hampshire on the topic of integrating Windows Phone with SharePoint in custom apps  I got sidetracked for a moment or two… chatting about why I see Windows Phone as being a viable platform.   So far, it’s been rough.  As an anecdote, everyone I know who has a Windows Phone bought a copy of my charity-bound “Jimmy Sudoku” app.  Sadly, the contribution to the charity from it is… not what I hoped. 

Still, I think the cool-aid was worth sharing…   To be fair, all the people I know who have a Windows Phone are relatively outspoken fans of it… and that includes a number of folks you’d never suspect of being “Smart Phone” users.

Anyway, a few days before SPSNH, I ran across a relatively insightful article on TechCrunch (I’ll post the link at the end).  It opens by quoting the opening dialogue of Christopher Nolan’s 2006 film, “The Prestige”:

“Every great magic trick consists of three parts or acts. The first part is called “The Pledge”. The magician shows you something ordinary: a deck of cards, a bird or a man. He shows you this object. Perhaps he asks you to inspect it to see if it is indeed real, unaltered, normal. But of course…it probably isn’t. The second act is called “The Turn”. The magician takes the ordinary something and makes it do something extraordinary. Now you’re looking for the secret… but you won’t find it, because of course you’re not really looking. You don’t really want to know. You want to be fooled. But you wouldn’t clap yet. Because making something disappear isn’t enough; you have to bring it back. That’s why every magic trick has a third act, the hardest part, the part we call “The Prestige”.

The TechCrunch’s MG Siegler makes a great point.:  Apple’s iPhone magic is in “The Turn”.   Apple has taken an “ordinary” item, the smart phone, and turned it into something “magic”. 

Indeed, I agree, it is magic, and everything that goes with it.

MG’s article was a commentary of the iPhone 5, and it captured the sentiment I’ve been hearing over & over again about it.   The Apple’s iPhone is starting to run a bit shy of manna.  (Update 9 Feb 2013:  Slashdot, Woz says iPhone Features are Behind. )

It shouldn’t be a surprise though…  we’ve seen it all before, in fact…  we saw it first with the Mac.  It struck again to a lesser extent with the iMac, and dug in big for the iPhone.  There’s a lot to be said for the brand of magic that Apple has wielded over the past several decades, and many would argue that Steve Jobs was the one who brought focus to that magic.

Admiration aside…  If Apple’s past and present magic is in “The Turn”, (and we agree that the iPhone is a hard-won magic trick)  it follows that, within the market, there must have been “The Pledge” and “The Prestige” as well.  That’s when I started to get excited… it seems pretty clear to me where “The Prestige” is, but I’ll get back to that. 

So what of “The Pledge”?   MG’s article points to Samsung as a weak imitator.  Maybe it is (by it’s association with Android), maybe it isn’t…  I guess the courts, and maybe even the public, are done deciding this.   In any case, Samsung never represented the promise of “The Pledge”; it only ever wanted to join in on Apple’s magic.  It’s not “The Prestige” either.

The role of “The Pledge” has been played before, as well, in popular technology of days gone by.  In the early PC wars, this role was played by a small number of makers.  The most memorable of them were the Commodores and TRS-80’s.   This cadre of early PC makers had one thing in common…  the average hobbyist (aka geek) could make them do magic in fits and starts, causing loyalty that ran deep (just ask the Amiga fans), but they didn’t have much, if any, magic for the popular user.  

I would argue, despite the fact that Google’s Android came at about the same time, late 2007, Android represents the promise of this magic…   “The Pledge”…  a Phone, integrated with a pocket computer, that anyone could have a satisfying user experience with.  Open, available, and accessible, it would be… it was everything a “Smart Phone” should be, and it appealed to exactly the market that Smart Phones were made for in 2007.  Despite its fits and starts of magic and a fierce geek following, it, like the Amiga (in its day), is still too immature to be the enduring solution.  Any time I mention the idea that the Android might fade into the realm of the Amiga, the geeks in the room threaten to get belligerent.    I remember getting the same way over my TRS-80 CoCo.

Between issues with platform versions & compatibility, components that don’t integrate well, visually or functionally, and malware/spyware, Android is excellent if you’re a technical person who’s not intimidated by compilers and is savvy enough to avoid spyware & malware… but that’s not what the popular user will go for in the long haul.  (Update 9 Feb 2013:  Slashdot, Fragmentation Leads to Android Insecurities)

So what does it take to become “The Prestige”?  It takes that maturity… the ability to allow the average user to make magic with it, affordably, easily… commonly, and, well, normally…  on some level, it restores normalcy, ushering in commoditization of the magic that once was so amazing.

If you take into account that Microsoft was the successor of the IBM compatible legacy, it starts to become clear that Microsoft holds the title to a long history of taking Apple’s “magic”, and refining it into maturity.

In some ways, it’s a bit sad:  iPhone’s manna is indeed running out…  there’s a little less magic in the world…  
…or is there?  This magic will soon be in the hands of friends and family who are just starting to get the itch for a mobile device that can play Fruit Ninja and Angry Birds on.  All those late adopters who wanted maturity, affordability, reliability, and ease of use over “magic”, but now they get both.  When they get their Windows Phone /  Surface RT / Windows 8 device, they’ll get to see magic that geeks and power users have been using for years now…  and that’s the hardest part  “The Prestige”, putting “smartphone”/tablet power and flexibility in the hands of every cell phone user.

As promised, MG Seigler’s article on TechCrunch:
http://techcrunch.com/2012/09/13/the-iphone-5-event/


(Update 1/9/2013 clarified PoV a bit on Android)
(Update 2/9/2013, linked back to Slashdot on various posts that supporting my position)
Tech in the 603, The Granite State Hacker

Reliving “Revolutionary” with Windows 8

“What do you think of Windows 8?”   I hear this question all the time… everywhere I go.   I hear people talking about it on the bus, in line at coffee shops, and even in odd places like hospital rooms.  It’s the biggest change we’ve had in the PC in well more than a decade.  Everyone knows this is as big as broadband in everyone’s home.

But… more than a decade?   Really? 

Definitely.  How old would a child be if it was born the last time there was a *true*, major version iteration of Windows?   3?  8…? 

How about…  18?   Yeah…  18… old enough to drive.  Old enough to be looking at colleges. The Daytona (Windows NT) / Chicago (Windows 95) user experience, were it a child, would now be looking at an opportunity to suffer the choice between Romney or Obama.  The experience unleashed on IT and the public introduced us to the Start menu, the Desktop, managed application installs, and several other major features that the enterprise and private user alike have now literally grown up on.

Some might argue that Windows XP was a hefty revision that almost qualifies, but I would say not so much.  Improvements abounded, but the core user experience hasn’t changed by more than revision increments in Windows 98, ME, 2000, XP, 2003, 2008, 7… really…  since Windows 95. 

But, with Windows 8, this changes.  Windows 8 brings us a whole new user experience in the “Modern UI” formerly known as “Metro UI”. 

If you recall, Windows 95 still essentially lived on top of DOS, and had enough of the Windows 3.x framework to run all the apps we’d already come to depend on (like Word 6, Excel 5, and Windows AOL 2.5).  While those programs ran in Chicago, there were compatibility issues, and the user interface really started to look crusty on legacy applications.  I was actually a relatively late adopter, waiting until Windows 98 before I finally succumbed to the dark side. (I had discovered IBM OS/2 Warp and become a fan… it actually took a 1-2 punch to Warp to get me to switch.  1:  When Warp was stable, it was unbeatable, but when it crashed it was unrecoverable, (and crash, it inevitably did).  2:   Command & Conquer / Red Alert, which had an improved video mode that was only available when installed in Windows… and it was even more awesome in that improved resolution mode. )

Just like Windows 95, Windows 8 is a transitional OS.

One of the big things I keep hearing about Windows 8 is… what a P.I.T.A. is is to figure out. “Microsoft is taking a huge risk with this… why are they breaking my Windows?”, I hear.  Or…  “I’m open-minded.  I subjected myself to it until the pain became unbearable.  (I can’t wait until Mac OS X takes over.)”

Transition, though?  Yes.  Transition.  Again, this is the first real full version increment of the Windows user experience that we’ve seen in years, and it all comes down to this Modern UI thing.  It does exactly what Windows 95 did to Windows 3.x on DOS.  It wipes the slate clean and re-imagines how we operate our computers from the ground up using modern human interface devices… (HIDs). 

Touch screen, movement, gestures, enhanced 3D graphics… these are things that started to accelerate development not long after the release of 95, but the world was still on the Windows 95 learning curve.  Hardware was too immature & expensive to develop an OS around them then… So, while you were getting comfortable with your desktop, (if you haven’t noticed) your cell phone’s user experience surpassed your desktop.

So on the surface (no pun intended) this is what Windows 8 is…  it’s a full OS-deep refresh that catches home computing back up to what people have gotten used to in their cellphones.

“Common sense” says this all implies a true P.I.T.A. for people and companies that dig in on it. 

Let’s look a little deeper, though, at what else this represents.  Again, this is a transitional OS.  It does everything the old user experience did… if you dig a bit.  It does this to support the old applications with their freshly encrusted-feeling user experience.  People can continue leveraging your old technology investments.  Indeed, you can continue making investments in the old user experience…  just know that the writing’s on the wall. 

It’s only a matter of time before people do what they inevitably did with Daytona/Chicago… adopt, extend, and embrace, or be extinguished.  

Why?  Because… when it comes down to it, the part that people really hate is not the “user experience” part.   It’s the “NEW” part that hurts.  Once the “NEW” wears off, what you’ve got left is a really genuinely cleaner, better, more efficient UI that leverages new hardware in important ways, and puts it years ahead of desktop OS competition, both in terms of capability, and even in terms of price point…  and pushes that same advantage out seamlessly to a myriad of other devices.  So getting past the sharp learning curve on one device means you’ll be rocking the new UI everywhere in no time.

Like the glory days of the Dot-Com boom, the days of Daytona & Chicago, these will be days of learning and technical renovation, even re-invention.  This is what I see coming with Windows 8 in the desktop, with an added benefit of being even more ubiquitous than it was back in the 90’s.  With the coming of Surface, Windows Phone 8, your apps will have more opportunity to run in more places, on more machines, than ever before…. using more “Star Trek” functionality than we’re yet used to. 

Those looking to remodel that kitchen… here’s your wake up call.  Windows 8’s user experience is representative of what made the Dot Com days so great… (and there were some plus sides.)  It was when leveraging any of the revolutionary new technology became a competitive advantage all by itself.  Early adopters will feel the pinch of the initial investment, but… with some planning, will reap the rewards by having that pain behind them by the time Windows 9 rolls around. 

I, for one, look forward to my new OS overlord.

Tech in the 603, The Granite State Hacker

Time to Remodel the Kitchen?

A few good reasons to consider keeping your IT infrastructure up to snuff…

http://edgewatertech.wordpress.com/2012/08/21/time-to-remodel-the-kitchen/

(I’m honored to have the post accepted & published on Edgewater’s blog.)  🙂 

Tech in the 603, The Granite State Hacker

Custom Guid’s

Caught a question from Stacy Draper, @StacyDraper this morning about custom guids, to make them more recognizable.

It reminded me of a post I saw recently about Facebook using hex characters to make IPv6 addresses more recognizable.

Here’s what I was thinking… create a guid that has an embedded word.

For example, the following code creates a Guid that always starts with FACEB00C:

using System;
usingSystem.Collections.Generic;
using System.Linq;
usingSystem.Text;
 
namespaceCustomGuidTest
{
    class Program
    {
        static void Main(string[] args)
        {
            GuidcustomGuid = GenerateCustomGuid();
            Console.WriteLine(customGuid.ToString(“B”));
            Console.ReadKey();
        }
 
        static Guid GenerateCustomGuid()
        {
            Guidresult;
 
            //0xFACEB00C
            //backwards, but required this to achieve desired result
            //Likely due to some standard with respect to bit order.
            byte[] custom = new byte[] { 0x0C, 0xB0, 0xCE, 0xFA  };

            byte[] random = Guid.NewGuid().ToByteArray();
            byte[] final = new byte[16];
            for(int idx = 0; idx <16; idx++)
            {
                if(idx >= custom.Length)
                {
                    final[idx] = random[idx];
                }
                else
                {
                    final[idx] = custom[idx];
                }
            }
            result = newGuid(final);
            returnresult;
        }
    }
}

Example output:
{faceb00c-7828-4e99-8cf5-280e33202670}