Understanding Git

I’ve been meaning to write this post for a while.  Lately, the places I’ve worked at have been pushing to go from Team Foundation Version Control (TFVC) or an SVN based derivative to Git.  To me, they both were the same.  They both handle branching.  They both do all the same stuff.  I just couldn’t put my finger on the difference between the two.

Over the past 8 months, I worked in a shop that converted from TFVC to Git.  And, for some reason, working with the source control did feel different.  I went from a big proponent of TFVC to actually liking Git better.  And I *still* couldn’t figure out the difference.

It finally hit me.  I was explaining the differences to someone at my new job, and I got a flash of insight that may have been obvious to everyone else…

Here’s what I finally understood:

TFVC or any SVN/PVCS/etc… based source control systems build their branches on history.  When you branch, you start with the base, then build on top of that to get your files.  TFVC is always looking backwards.

Git works off of changes.  While branches start off of a specific base, you are able to apply Git changes to literally ANYTHING.  It is very easy to apply a change to a completely different branch, as Git doesn’t worry about the base.  It just cares about the change.  Git allows you to look forward.

When I worked with Git, if I wanted to apply my changes, it was stupidly simple to create a new branch off of the master, and just apply my changes from my commits, and boom, my commits were up to date.  Trying to do something like that on TFVC was insane because the comparisons started with the point where the branch occurred, and then had to be reconciled.  Doable, but no where near as efficient.

After that, I now really enjoy Git for feature branching.  It’s still a bit of a nightmare to keep track of everything, but the tools for that are getting better and better.

The real reason the music industry is sinking

Well, at least *my* opinion of why… 🙂 This post doesn’t contain facts and figures, but a gut level reaction…

Today, it finally hit me why the music industry is nothing like the industry was through the 90’s.  What event brought this revelation on?  It was when I was listening to my weekly ‘New Music’ mix from Apple Music.  This new feature has been huge!  I’ve been introduced to some modern music that sounds like my favorite classics!  Awesome!


What happened was that I listened to the music, thought ‘cool’, and moved on.  I didn’t buy the band’s album, either electronically or physically.  In fact, I had heard the band on my playlist a couple of weeks ago, had thought ‘cool!’, and promptly forgot the name of the band.

That is when it finally hit me…

I don’t cherish the music anymore.

Let me repeat that… I don’t cherish the music anymore.

What do I mean by that?

Well… when I was growing up, getting a record/cassette/CD was a big deal.  It was expensive!  ($10 on a student job salary or worse, an allowance was a LOT of money!). Plus, I didn’t have a way to pick and choose songs, unless you spent $4 on a single.  Also, playback was pretty linear, you really couldn’t copy different songs from different albums.  You either had to build a mix tape with the double cassettes or just listen to the whole album.  Finally, the playback devices really didn’t support multiple albums.  I remember listening to the same cassette for a month in my car.

This meant that I listened to an album a LOT.  Not just once or twice, but ten times, 100 times, even more.  I got to know those songs.  Got to know the song before each song.  Got to know the song AFTER each song.  Really dug into the music.  Really listened to the words.  Identified with the songs.  Even mentally stored them away for a time when I would understand them.  And, so, when the band I would listen to for a month on end had a new album, I purchased.  Wash, rinse, repeat…

With that, I cherished every record, cassette, or CD I ever owned…  the music was part of me.

Then, along came .mp3s, Napster, and subscription music services.

Now, for $10 a month, a person can get almost everything ever recorded.  It’s like Columbia House’s advertisements came true!  Any album, any song, any time!  Music nirvana!

And, in doing so, the music industry lost something.

They lost the ability to connect.

Now, if you don’t dig a song, it’s ‘next’, there ‘something else out there’.  Or, even if a song resonates with you, you don’t listen to it for hours on end.  I heard some great music on my new playlist, and I did nothing to further the band (i.e. buy the album in some form).  I didn’t even make a play list or listen to the whole album.  In doing so, I stopped cherishing the music.  These songs are forgotten 20 minutes after I listen to them.  I do nothing to etch them on my soul, like I did when I was younger.  These are not songs that I will hate upon listening to them, then grow into them after 10, 20, even 30 years.

The music truly became a commodity, and the only ones that survive are the mega stars that the record companies create.  Everyone else will live off of the crumbs.


No sleep ’til dub dub (WWDC)

Actually, that’s not true.  I’ll sleep a LOT before Apple’s WWDC conference this year.  For some reason, Apple’s announcements haven’t had the urgency or excitement that they used to have.  The OS X (macOS) / iOS changes haven’t been terribly drastic lately.  The built in programs have been incrementally improving, but nothing earth shattering.  I’m not even sure that I truly care that much this year.  There have been no major change rumors, and with no major hardware announcements going to be announced, it might just be one of Apple’s quieter Apple-notes.

Hopefully, I’m wrong!  I want to see new Mac Pros, Macbook Pros, updated iMacs, etc…  I’d love to see some cool changes in the OS.  OS X is incredibly awesome, so I guess boring is a good thing!

Wow… talk about some surprises from Microsoft

Well… Build 2016 certainly started out with a bang…  For some reason Microsoft is having a complete love affair with Linux.  Between buying Xamarin, SQL Server for Linux, and today’s announcement that bash will be native in Windows 10.  Oh, let’s not forget that .NET for Linux/Mac and ASP.NET for Linux/Mac are real things, too, and fairly close to shipping.

“Wow, this is great!”, you say.  On the initial announcement, yeah, this seems like a great idea, something developers have been clamoring for for YEARS.  No more Cygwin, no more crazy emulators, native everything Linux on a Windows box!

But, as Charles Dickens wrote in the tale of two cities, ‘It was the best of times, it was the worst of times.”

After getting over my initial giddiness of these VERY cool announcements, the question that came to mind is ‘WHY!?!?’  Why is Microsoft doing this?  This isn’t just a ‘hey, lets do some cool experiments to get developers back’.  These are very serious investments that are not being done on a lark.

First off, the Linux love affair seems to have started with Satya Nadella.  I think under Steve Balmer, the words Linux, Unix, and OS X (and iOS) were banned.  Microsoft had not successfully done cross platform software since the early days of Excel for the Mac, and porting it to Windows.  Windows for Alpha, and Windows for Itanium never took off.  Office for Mac was a red-headed step child.  Heck, even getting Windows Mobile to run on the phones proved to be a huge challenge.

Since Mr. Nadella took charge, Linux has not only been unbanned, but it has completely been embraced.  It started with the Mac and either Silverlight or Office.  Since OS X is based upon BSD Unix, Microsoft had to come up with tools to allow them to develop for the Mac.  Microsoft started out slow, but lately, they have been able to bring a pretty good parity to Office for the Mac.  In doing so, they have build up some better understanding of developing for Unix, and are now applying that to Linux.

The one thing that worries me is that Microsoft seems to be developing somewhat of an inferiority complex.  Microsoft under Bill Gates and Steve Balmer would have always been ‘we think ours is better, deal with it’.  They would be almost as arrogant as Steve Jobs.  The new Microsoft is almost apologetic.  ‘Hey, we want to be where the cool stuff is, and we realize our stuff isn’t cool’.  Which is sad, considering that the latest Visual Studio is awesome, Powershell is cool, and Windows 10 is probably the best OS they’ve ever done.

Am I excited by what Microsoft is producing?  Sure!  I love the fact that my skill set will start to be more cross-platform.  I just want to know ‘why’.  Yes, I understand this will help Azure, and that is where the future of Microsoft probably is.  But, this seems like a LOT of resources are being poured into this Linux initiative, and there doesn’t seem like a way that Microsoft will make money.  Microsoft is not Google, where they only play with cool.


Recap of 2015…

I let the blog slip a bit the last couple of months.  I usually try to get a post or two off every month.  The last couple of months, I’ve had to slip a bit.  As a friend has put it, ‘Dave, you’re putting 10 pounds of stuff into a 5 pound bag’.  That thought has ran SO true as I look back at 2015.

First off, there have been a lot of things that I’ve been doing that I haven’t written about, but probably should have.  One thing that I’ve been involved in is Toastmasters.  I joined a club where we would meet for lunch once a week.  Not only did I join, but somehow, I stepped up to be the president of the club after only 6 months!?!  Fortunately, the President’s position is more about vision than running around ‘doing’, and the board has some VERY strong people on it, so it wasn’t as overwhelming as it could have been.  I’ve also been giving speeches at the club fairly regularly.  I remember when I joined last year that I thought public speaking would be fairly simple… boy, was I wrong, and I’ve learned an incredible amount.  I still have a LONG way to go, but I certainly feel like I have better tools.  I’m looking forward to 2016 with Toastmasters!

Another thing I haven’t written about is my job.  At the end of 2014, I changed jobs, leaving the company I had worked at for almost 8 years to go and be the lead developer for a project for a small company.  I’ve absolutely LOVED the job that I took for this year, as it got me back programming.  Unfortunately, my financial situation has caused me to take a new position.  It is also a development position, but I’ll be driving a lot more to get to work.  I really hate to leave, but the bills have to be paid. I was working a second development job to get by, but I wasn’t really able to put myself into that like I should have.

Finally, I haven’t written much about the people in my life.  I want to respect their privacy, so I try not to put much in my blog posts.  Just know that my personal life seems to have taken a turn for the better around the end of October, and I’m much happier for it! 🙂

One thing that did happen this year was that my music / sound guy career took off.  I was able to do several shows that I never would have dreamed of doing.  I was able to run sound for everything from over a thousand people seeing a tribute band, to some small, intimate clubs, to several festivals.  I learned a LOT this year.  Unfortunately, I’m going to be backing off a bit during the new year.  Last years schedule was a little too much for me.

2016 also turned into a ‘gadget’ year.  I certainly wasn’t expecting it to be.  After the Apple Watch announcement (which, to me, has been a yawner), the first half of the year was relatively gadget quiet.  I’ve even satisfied my guitarists’ ‘Gear Acquisition Syndrome’ (GAS for short), which still hasn’t flared up 🙂  Although, with NAMM around the corner, who knows what goodies will show up.

Unfortunately, Apple’s second half of the year announcements really did catch up with me 🙂  The iPhone 6S+, the iPad Pro, and even the AppleTV have snuck into my life.  The latest iPhone’s camera has been a huge game changer for me.  Other than that, though, the 6+ is a great phone that I would have normally kept 🙂  The iPad Pro has been huge (pun intended) too.  My mixer, the Mackie DL32R’s iPad interface has already been updated to use the iPad Pro, and it’s been wonderful.  Mackie really did a great job of using the extra screen space.  I just set my Apple TV up today, so I’ll have something to write about it in the coming days.

Overall, I think 2015 wasn’t too bad of a year.  I think 2016 will be a lot better, though!

Getting to know Pro Tools

Hi, I’m Dave, and I’m a DAW junkie  (DAW is a digital audio workstation, or software version of a mixing console for all the non computer music people)  I’ve worked with several different DAWs over the last 20 years or so… First Cakewalk / Sonar, then Logic, then Studio One, and back to Logic X.  I’ve usually stayed away from ProTools, as the hardware requirements / copy protection and perceived complexity have always been issues for me. A couple of years ago, I purchased an Avid MBox 3 Pro which included a copy of ProTools.  I didn’t really think much about it, but was able to get Version 10 and 11.  I plunked around with ProTools, but quickly went back to Logic, as Logic X came out.  For the most part, I’ve sat out all of the drama surrounding Avid and their upgrade policies, as I really wasn’t interested in upgrading…

That was until about 3 weeks ago…  A band I’m with recorded a live video at a studio, but we tracked all of the audio to a ProTools session.  I wanted to see what I could do.  After working with the guy who did the recording to come up with a mix for the 6 songs, I wanted to see if I could do a different job.  Since I knew I might need to bring the session back, I went ahead and did my upgrade to ProTools 12, and opened up the session.

From this point on, note that all of my statements are going to be subjective and not based upon comparisons.  I did no null testing, I didm’t try to duplicate my mixes in every DAW; i’m just going off of my memory, so take this with a grain of salt…

The first thing that I noticed was how open the sound was.  This may be due to the fact that the recording was done inside of a big room, not the normal small studio, but I’ve done a bunch of live band recordings and worked with Logic, and none have started off with the openness that I was hearing in Pro Tools.  The second thing that I noticed was that the meters in Pro Tools were REALLY good.  I feel like in Logic, there’s a bit of a ‘fudge factor’.  With the ProTools meters, i was able to see the peaks really well.

I started off my session pretty simply, just using some Waves plug-ins.  That didn’t get me exactly where I needed, so I brought in a couple of tools that turned out to be critical to me getting through my mix.  The first set of tools was the FabFilter Pro Bundle from FabFilter.  I used every plug-in in that bundle.  All of these plug-ins are incredible.  The spectrograph on the EQ is very helpful for ‘seeing’ problem frequencies, and dealing with them.  All of their plug-ins show you what they are doing to the sound, so you can really understand what is happening.

Second tool that I would not use ProTools without is Melodyne.  I’m no fan of doing ‘fixing’ vocals and guitars with plug-ins like Melodyne and AutoTune, but, there are times when it’s useful.  I was able to take a song that didn’t sound very good to pretty rockin’ with Melodyne.  Given the time and budget constraints, Melodyne worked REALLY well 🙂  Sometimes, you just have to make it sound good, and darn the ‘how’.

Finally, the last thing that got me to really like Pro Tools was the mix down.  Normally, when I do a mix down in Logic or Studio One, especially to MP3, it feels like the MP3 doesn’t sound very good compared to playing the audio out of the DAW.  With Pro Tools, I FELT LIKE THE MP3 SOUNDED AS GOOD AS THE DAW.  To re-iterate, this is VERY subjective, I did no testing.  I just know that with Logic and Studio One, my MP3 mixes never sounded as good a the DAW mix.  With Pro Tools, the MP3 equaled the DAW.  That ALONE is reason to use it.

In the end, my final result came out pretty good.  I definitely had a couple of ‘oopses’ that I wish I’d been able to fix at the time. I’ll probably do more learning about Pro Tools, and hopefully getting faster.

One last thing that I think is very telling… Graham from The Recording Revolution constantly tries different DAWs, but he always seems to come back to Pro Tools.  I know that he knows what he’s doing, and I’ve seen him do awesome mixes in Garageband, Reason, and definitely Logic, but he has always returned to Pro Tools.  I can assume that part of that is comfort factor, but I also assume that there is something more.  I certainly can see why Pro Tools is different, and I hope to learn a lot more!

Thoughts on Microsoft…

I’m an Apple fanboi.  I love how I have very little trouble with my hardware and software integration.  But… I make my living as a .NET (C# & VB) developer.  So, I like to at least TRY to keep up with Microsoft…  And there’s a LOT to keep up with, and lately, they have been very good!

Over the summer Microsoft launched both Visual Studio 2015 and Windows 10.  To the tech industry, these have both been very bold steps.  Windows 10 has been build one the concept of ‘update often’.  Microsoft is seeding updates to Windows 10 to the testing community almost every other week.  And yes, it needs it, but that’s because Microsoft is trying something very different.  They are actually listening to their customers and trying to address concerns as quickly as possible.  It is refreshing.  Windows 10 does have some issues, but they seem to be getting better with each iteration.  As an end user, I’ve been VERY thrilled at how Window 10 is doing, and it makes me happy to be a .NET developer.  The Visual Studio IDE is awesome, and having a OS that helps rather than hinders is great.

Microsoft ALSO had a hardware announcement recently.  From all appearances, Microsoft is finally tired of waiting for a partner to step up and create interesting, innovative hardware.  Microsoft has finally decided to follow Apple in creating both the hardware and the software.  The latest Windows Phones, Surface Pro 4, and the new Surface Book are all great products that I hope do well.  Yes, they are much higher on the cost scale than most ‘normal’ Windows boxes, but, in my opinion, I think that they NEED to be.  We, as consumers, want everything to be free or cheap.  Unfortunately, if a company does not make money, there’s no way to provide a product and/or support.  That’s one of the things with cheap hardware is that there’s usually no one to support it.  I love the fact that Microsoft IS charging more.  I’d gladly recommend a Surface Pro to someone needing a Windows tablet.  Heck, I may even pick one up for myself!

I think Microsoft is definitely on the right track, after floundering for the last 7 or 8 years.  Hopefully, they will continue to improve!

Thoughts on Apple (iPhone 6S+ content included)

For everyone reading this who doesn’t follow Apple, they had a recent event in September announcing a LOT of new goodies.

The first one really available to the public is the updated iPhone 6S (and 6S+).  I’ve had the 6+ for a year now, and even though the outward appearance of the phone hasn’t changed, almost everything else has.  I didn’t think I would update, until I really got to see the phone in person.  Right off the bat, one thing literally jumped out at me… the new S feels sturdier.  The 6+ always felt like you could bend it easily.  I never felt comfortable leaving it in my pocket when sitting down, as it felt like it would bend.  The S certainly does NOT have that feeling.  The S feels very solid.  That alone made it worthwhile to get.  Second, the camera upgrade was important to me.  In the past, I haven’t really been a camera freak.  I’d take pictures, but they were so ‘meh’ that it wasn’t important.  The 6+ changed that for me.  Between videos of my cats and pictures of just about everything, I really ended up using the camera.  The bump from 8 megapixels to 12 megapixels and the low light photo improvements made me instantly want the new phone 🙂  Also, the ‘live pictures’ are pretty cool.  I’m beginning to feel like I’m a Hogwarts… 🙂  One thing that I thought would be interesting is the 3D touch.  So far, I haven’t gotten a warm and fuzzy from this feature.  I think the idea is very cool, but nothing I use really makes use of it.  Now, when they get 3D touch on an iPad and my mixer software starts using it, I’ll be really impressed.  Overall, I like the 6S+ upgrade.  I was able to get AT&T to get me switched over to vNext fairly reasonably.  One last thing, it’s awesome that AT&T *FINALLY* enabled Wi-Fi calling.  I’ve been waiting a YEAR for that feature.  After some initial bumps, it’s doing pretty well.

The next new Apple goody is the iPad Pro.  I’m very interested to see one of these in person.  With my wireless mixing, any extra surface area will be awesome.  I wish 3D touch was included, but the idea of a better screen & sound really has me interested.

Finally, the AppleTV looks interesting.  Even if it’s just a better way to stream iTunes to the TV, it will be a winner.

Lots of good new stuff from Apple, but are some things that are becoming a concern.  There has been no significant update to the iWork applications (Pages, Numbers, and Keynote).  My guess is now that Microsoft has gotten serious about Office on the Mac with 2016, Apple doesn’t feel the need to really do much more with the iWork apps.  The iLife apps of Garageband and iMovie received a bit of love, but no major new features lately.

All in all, lots of good stuff!

It’s been a while! Lots of things going on since July!

I’ve usually blogged at least once or twice a month for almost 10 years.  I can’t believe that I’ve missed the last couple of months.  Too much has been going to for me to even *remotely* keep up.  I’ll be doing that now, as there are lots of thoughts running through my head lately!  There’s a bunch of Tech that’s been interesting, including Apple and Microsoft’s new toys.  My music product days have settled down in a big way, and you won’t believe what I’ve been playing with.  About the only thing that hasn’t changed is the car 🙂  Onward to new blog posts!!!!

Visual Studio 2015 was released this week. And, there’s some goodies Visual Studio Online

For all of the developers and DevOps people out there, Visual Studio 2015 was released this week.  I’ve been working with it for a week on the latest build of Win10 (WinX, build 10240), and I must say, I’m impressed.  One of the MOST impressive things has been the ‘backwards compatibility’.  My company uses Visual Studio 2013, and I was able to open my project in 2015 with no issues and then go back to 2013 with no problems, either.  If I start using some of the new VB.NET features, I might have some issues, but I think I’ll be able to get everyone to switch to 2015 pretty quickly 🙂

Several important things have changed with TFS 2015 / Visual Studio Online build process.

One of the first things that I found in the changes to TFS is that there is a new option about what to do with the artifacts of the build (the source / deployable items).  Previously, these would just go into some shared drop folder.  It looks like now, these artifacts can be pushed back to the source control server.  That makes the need for a shared drop location unnecessary.  Also, it allows the artifacts to be downloaded directly from the internal or hosted TFS website.  This is both a good and bad thing, as it’s great for not needing to have a shared location anymore for drops, but it does add time to the build to upload it to the server.  Plus, that also means that, if you use VSO, your files are going up to Microsoft.  Fortunately, sending to the build server is only an option, and the old style of dropping the files in a share is still around.

One more thing that I did want to point out is that Team Foundation Server and Visual Studio Online’s build engine has been updated AGAIN.  When I first saw the change, I was like ‘WTF… in 4 version (2010, 2012, 2013, and 2015), they’ve completely redone the build system 3 times!?!’  I think the XML build process, al-la Ant was a pain in the rear.  The move to XAML looked to be going in the right direction, but the build scripts were very complicated.  When I saw the ‘new’ build system, my first thought was… ugh, really?  Not interested.

Then I took a better look, and tried it…

After playing with it for a bit, I like the way that the new build engine incorporates the visual style of the XAML builds and the succinct style of the XML builds.  There is a nice visual aspect to the builds, but there is enough customization that a good balance has been reached.  Plus, it is very easy to extend the new system.

There are a couple of concepts to be aware of when using the new system.  The old build system had some options turned on by default that would generate the structures correctly in the build.  Those options are not on by default in the new system.  The following article helped me with part of the configuration: http://www.deliveron.com/blog/building-websites-team-foundation-build-2015/  The import part of of the article is what the settings are for the MSBuild arguments:

/p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true

That coupled with the setting that I found for keeping the structure https://dscheidt.wordpress.com/2014/06/01/solving-a-problem-with-tfs-and-building-regular-applications-using-tfsbuild/


Using that together in the MSBuild settings will build the projects in the same structure that the directory is in.

One last thing that has changed with the build system… If the new build system is used, the TFS build agent doesn’t need to be installed through the big setup.exe that prior to 2015 was needed.  Now, on the web site, there is a link to download the agent by itself.  After that, one just has to run the Powershell script to configure the agent.

All-in-all, Visual Studio and Team Foundation 2015 look like an excellent release!

This should be a wake up call to all musicians…


Sigh… I usually don’t comment on what the writings of current pop stars, but this one hits home on a lot of levels.

The business deal is between Apple and the Record Companies / Label.  No one at Apple put any sort of gun to any of the record company’s heads.  My guess is that Apple and the record companies did a lot of back-and-forth with what we see today being the final outcome.  It is a business deal to both sides, nothing more.  Apple will make money selling the hardware and subscriptions, and the record companies will make money off of the artists.  Once the initial three months are up, the record companies will have a steady stream of income.  The record companies already have such deals in place with Spotify, Pandora, iHeartRadio, etc…  If they didn’t like the terms, they could have refused to join, just like in the initial days of iTunes selling downloads.  So, the record companies and Apple are happy with the deal.

The area that Taylor Swift should be examining is the deal between the Artists and the Record Companies.  If the artist don’t like getting played for three months free, then they should be able to opt out, just like she did.  You notice that she didn’t pull ALL of her catalog, just the current one.  She’s not stupid, she knows that there is an opportunity for more exposure and money.

I don’t know if many people understand how record companies work.  It’s an interesting business.  Record companies provide three things to an artist.  One, an initial loan to produce and promote the artist’s first (or next) work.  Two, is the contacts and means to promote and distribute that work.  And three is the contacts to means to do professional package of the work.  There are some really important concepts that most people don’t realize.  The first one is that a record company does not give any money to the artist.  All money upon an artist being signed is ‘front money’.  It is a fancy cash advance.  The artist MUST pay that money back, regardless of how the work does.  A second concept is the value that the record company does have.  The Record Companies have is the contacts to create the music in a professional manor and the contacts to promote the music with radio and internet.  Also, they administer the payments and rights that an artist has.

I’m also a semi professional musician (I get paid for what I do, but not enough to make a living), and see this kind of misunderstanding almost all the time.

We as musicians, painters, dancers, etc… have done this to ourselves.  Trying to make a living as a professional artist is damn near impossible, even if you have talent, drive, looks, fans, etc.  The mentality of ‘do it for the exposure’ is prevalent through the entire industry.  I see show after show where the band works for free for the ‘exposure’.  Personally, I’ve stopped doing those type of gigs.  If I’m good enough to play, then I’m good enough to pay.  And, before someone says ‘charity event’, know this… the sound guy ALWAYS gets paid, I guarantee it.

Ultimately, it all comes down to money.  How much money does the artist generate?  What is it worth for exposure?  What is it worth for the services that a record company does?  I honestly don’t know, I’m not in the business, so my comments can be taken with a grain of salt 🙂

Update… I wrote these thoughts before Apple ‘caved in’ and agreed to pay the RECORD COMPANIES while the free trial period is going on.  Personally I think it’s a lot of crap, because the point is still being missed.  The only ones who will see ANYTHING is the record company.  This is one of the times that I think Apple shouldn’t have backed off.  Altering the business deal because one person, who WASN’T part of the deal, had no knowledge of what was being worked on, etc… is bad precedence.


I can’t believe I’m saying this…

This is the first Apple event I’m not really interested in.  WWDC (dub-dub) has become Apple’s launch pad for the next version of their iOS and OS X (and now watch OS).  There have been several hardware announcements at dub-dub which were very exciting, such as the retina MacBook Pro and the radically redesigned MacPro, but last year had nothing hardware-wise, and this year is looking the same.  The Wall Street Journal is reporting no Apple TV, and just about every system short of the Mac Pro has been updated in the last 12 months.  I doubt that a new type of product would be announced so soon after the watch, and certainly not at a developers conference.

So far, the rumors and banners point to updates to OS X, version 11, iOS 9, the first real OS for the Apple Watch, and a music subscription service.  Ho-hum…  I’m *very* happy with OS X 10.10 and iOS 8.  Is there room for improvement?  Of course!  Is there going to be anything radical?  Probably not.  This is one of the real challenges of creating an OS update on a yearly schedule… it’s hard to do anything truly different in that amount of time.

The rumored music service actually bothers me on many levels.  First and foremost, it’s the return of DRM.  I currently like the fact that if I buy a song on iTunes, I can play it in one of my transcription programs.  If I want to pull it into a video, that’s no problem.  With the subscription service, it’s back to the bad old days of songs being locked into the players.  Also, unless Apple ups their game to lossless, I’m not going to be terribly interested.  I feel like the subscription services are starting to really hurt the music industry, as artists are getting even less and less for their work.  Check out this article on Rolling Stone for more info http://www.rollingstone.com/music/news/the-new-economics-of-the-music-industry-20111025

What is ironic is that Microsofts Windows 10 (or WinX as I like to call it) is starting to be VERY interesting.  The latest beta of WinX is very stable and very cool.  Microsoft has realized that they have to do a better job with Windows, and it shows.  WinX is the most OS X like version of Windows that I’ve seen.  Plus, Microsoft is putting a lot of focus on being able to deploy WinX and be more developer / administrator friendly.  The latest PowerShell has a ton of features that make dealing with large numbers of computers easier.  I don’t see Apple trying to really push beyond what is in the basic Unix system.

Well, tomorrow should be interesting, but not for the usual reasons!

How to access session information inside of a .NET webmethod call

Many thanks to the following StackOverflow question: http://stackoverflow.com/questions/4758575/how-can-i-access-session-in-a-webmethod

My current project is using Knockout.js / jQuery to get data to HTML5 pages, and I need to get information about the logged in user.  There are several ways to do this, but one of the simplest is to let the web services access the user information stored on the session.

Apple saves the day, again…

Two weeks ago, I had the unthinkable happen… my wonderful, perfect, Macbook Pro died on me the moment I needed it most.  I was working along, and *poof*, the screen went black and the computer would not start at all.  Uh-oh…  I have one of the 2011 MacBook Pros that have the AMD graphics cards, and it seems like I got bit with the GPU Issue.  Fortunately, Apple has instituted a repair policy for this issue.  Once I was able to schedule a genius appointment, the computer was fixed in 3 days flat, at no charge!  Woo-hoo!

I did run into a couple of concerns, though… One, the genius appointments are rather hard to come by.  On a Monday evening, I checked three Apple stores near me.  There was only ONE!?! available appoint before Saturday.  REALLY??????  Three Apple stores and only ONE available Mac appointment over a 4 day period of time???? Of course, I signed up for it 🙂

The other issue, which I should have expected, was that everything that uses the CPU ID as a key was totally hosed.  I had to reauthorize several programs, and clean up a bit of a mess with my iCloud account.  Nothing earth shattering, but definitely a pain in the rear….

Oh well, all’s well that ends well.  My computer is back and working perfectly.  I even managed to fix a couple of long standing issues that I’ve had with the computer.

Thanks Apple!

Thoughts about the tech industry (Apple Watch launch and Microsoft state included)

April 10th, 2015… the first day the public gets to see the Apple Watch and new Macbook in person.  Products the tech pundits are calling ‘ho-hum at best’.  I’m constantly amazed at how short the media’s memory is.  Full disclosure, I’m an Apple fanboi.  For some reason, I remember hearing the exact same media comments about, oh, let’s see… 1st Macbook Air (overpriced, slow), the 1st iPhone (what!?! no physical keyboard, removable battery or media slot!?!),  the iPad (it’s just a big iPad), etc…  The list goes on and on.  I think the tech pundits miss a lot of points.  The bell curve of the world population doesn’t need the most expandable, Swiss Army knife, biggest, latest-and-greatest CPU phone.  What people want is something that is they can identify with.  Since Apple tends to focus on the user experience from top-to-bottom, left-to-right, and end-to-end, they’ve done incredibly well.  And, I think that they will continue to do well with both the Apple Watch and the new Macbook.  In two to three years, both products will have iterated to bring the functionality up to the form.  Heck, the first really slam dunk, no brainer to buy iPhone has been the 6.  Up until that point, there’s always been something that’s made people crazy with the iPhones (mainly battery life!)

On my personal opinion, I’m not terribly thrilled about how Apple is launching products.  For a company that used to do announcements and shipping on the same day, it seems like lately there’s been a lot of announcements with 3+ months of lead time.  Between the Mac Pro, Photos, and Apple Watch, each one has had an announcement time of over 6 months ahead of shipping.  I realize that this is one way to beat the leaks, as the latest leaks seem to be pretty dead on target, but 6 month pre announcements have gotten ridiculous.

As to Microsoft… talk about a company that really HAS turned it around.  Windows 10 is shaping up to be a very good release.  I currently use Windows 10 as my main work desktop OS, with very little issues.  The fact that since Windows 8, it has been possible to do an inlace OS upgrade has been nothing short of a miracle from Redmond.  The current beta test release system seems to be working very well for Microsoft.  Of course, there are some snags here and there, but nothing that can’t be worked around at this point.

Also, I like the fact that Azure is doing well.  Because of Azure, Microsoft has really stepped up their game in several areas.  Deployments are now THE first class citizen.  The tools that have been built to handle the Azure systems are working their way down into the core products.  PowerShell and Desired State Configuration and really starting to be expanded, and those improvements help Windows in many way.

The other interesting things that Microsoft is doing is in .NET world.  Between open sourcing a majority of .NET, embracing the open source community projects, creating a cross platform .NET runtime environment and speeding up the time between Visual Studio updates, I feel that there is a LOT of development growth going on.  The .NET renaissance is happening.  It may be stealing everything from the Java community, true, but considering how stagnant Java *seems* to have become lately, I think the future looks bright for the .NET tools.

I just wonder how long before Apple buys Microsoft or IBM?

Time for some housecleaning of the musical toys…

One of my absolute favorite blogs is The Recording Revolution, where the writer, Graham Cochrane, is a professional musician, mixer, and producer.  One of the things he covers is ‘simplicity over stuff’.  The music industry *loves* to say that ‘stuff’ is required to be a good musician.  Graham likes to debunk those myths 🙂

One article that hit VERY close to home is the article ‘what we need vs. what we buy’.  I am *absolutely* guilty of this this with my musical toys.  This fact got hammered home recently.  I was testing a new DAW, and had pulled up an old mix that I had apparently started, but not done much with.  I had set up the ‘heavy mixbuss’, then walked away from it for some reason or another.  So, when I pulled this project up, I was not terribly happy with the mix.  I did some minimal changes, things that I’ve learned recently, or RE learned recently :), and was very happy with the mix.  The amazing thing?  It didn’t require anything more than some basic plug-ins I already owned and applying some knowledge.  Wow!  Do I think that the specialized, whizz-bang plug-ins have their place?  DEFINITELY!!!!  They can get to specific sounds very quickly with minimal work.  But, the point is that they are not needed.  As Graham points out, a compressor, an EQ, and reverb are all you need to get a good sound.  The other stuff helps, but is NOT required.

This also can be said about guitars 🙂  My collection has grown lately, and it is probably time to shrink it a bit.  What’s amazing is that I’ve gone to the ‘vintage style’ guitars; reissues of some very famous instruments.  I’ve found that they do have the tones I’m looking for, so there’s not much need to keep the ones that don’t sound like what I want… eBay, here I come!

More Developer’s Express Fun, this time with nested reports and running totals…

Since I’ve gone back to programming, more things on this blog have been to help me remember what I did!  This is one of the programming posts, music will be on my next entry, I promise!

More Developer’s Express fun…  I both love and hate some of the things that DevExpress does with their tools.  I’ve recently started using the XtraReports suite for some ‘more than trivial’ reports, and hit a snag.  I had a devil of a time trying to solve this issue, it took almost a day to figure out a way to make this work.

Here’s the setup:

I had a report that had three different sets of data.  The exact information is a Point of Sale daily report, needing sales, taxes, and payments, but that’s not pertinent to the problem here…  To use the three disparate data sources, I started off using three sub reports with a master report that would only have one record.  This worked grand!  I was able to do the reports with no problem… but… I needed to have a total of all three sub reports.  This is where my implementation came crashing down.  The XtraReports sub reports have a great way to send information to the sub report, but it doesn’t have a very good way to get the information BACK to the original report.  I tried everything I could think of for almost a day, but with no luck in using the sub reports.

After reading a LOT of pages and articles, I found out that the XtraReports had a very neat feature.  The reports have what DevExpress calls a ‘DetailReportBand’ on a report.  This allows you to have a fully nested sub report inside of the main report without it being an actual sub report in a completely separate report.  Hmmm… combine this with the parameters feature, and I may have something…  It was easy enough to move the sub reports into Detail Report Bands, and it actually simplified the code a bit.  Hoo-rah!  I still had to get the running total, though.

After a couple of false starts, I did get the running total working.  To get this to work, a report parameter needs to be added to the report.  Then, the easiest way that I found to get the subtotals into the parameter was to use the sub report’s summary total XrLabel’s SummaryCalculated event to add the amount to the parameter.  Then, at the end, it was straight forward to set a label to the parameter to show the overall total.

I know this blog post may not make a lot of sense to most, but it will help me in the future when I have to do this again, and can’t remember what I did!

How to center text on a Developer’s Express (DevEx) WPF grid

This nearly drove me crazy.  I’ve been working with the Developer’s Express grid in Windows Presentation Framework (WPF), and have NEVER been able to find a way to center the data in the column.  Turns out, it’s rather easy, BUT, it requires using the control nesting that makes WPF powerful and frustrating.

To center the text in the column, the dxg:GridColumn needs to have an EditSettings tag added.  Inside of that tag, add an TextEditSettings tag and set the HorizontalContentAlignment to “Center”.  Voila!


<dxg:GridControl Name=”gcTest”>
<dxg:GridColumn Name=”GridColumn1″ FieldName=”TEST_ID” Header=”ID” Width=”100″ HorizontalHeaderContentAlignment=”Center” VisibleIndex=”0″>
<dxe:TextEditSettings HorizontalContentAlignment=”Center” />
<dxg:GridColumn Name=”GridColumn2″ FieldName=”DESCRIPTION” Header=”Description” Width=”100″ HorizontalHeaderContentAlignment=”Center” VisibleIndex=”1″>
<dxe:TextEditSettings HorizontalContentAlignment=”Center” />

One other tidbit for today…

Somehow, the announcement of the preview for the OneDrive for Business client for Mac OS X went completely unheralded.  This was supposed to be delivered in early 2014, but seems to have fallen off of Microsoft’s radar.  Why is a client for OneDrive interesting?  For starters, OneDrive for Business allows each user to have over 1 TERABYTE of cloud storage space for a very nominal fee.  The other interesting thing is that the OneDrive application for iOS was recently updated to consolidate regular OneDrive and OneDrive for Business into one app.  I expect that this will happen to the current Mac OS X OneDrive client as well.

Thank you, Microsoft!

Quick review of the CalDigit Thunderbolt Station 2

Quick review of the Caldigit Thunderbolt Station 2… It works and does what it says!

Now to meander a bit more…

Thunderbolt has been one of the really awesome technologies that Apple and Intel brought out in 2011, but has VERY slowly caught on.  This is too bad, as it has allowed me to extend the life of my computer considerably using a couple of Thunderbolt devices.  One of those devices was the original Caldigit Thunderbolt station.  By using this device, I was able to get USB 3.0 and use HDMI for my second monitor allowing me to free up a Thunderbolt pass-through for my UAD Apollo Twin audio interface.

The one thing that the original Thunderbolt Station lacked was eSata.  I was using a PC Card eSata connector with my 2011 Macbook Pro to connect up an external drive.  The issue I was having with the PC Card was that the drivers were not really supported with OS X 10.7, 10.8, 10.9, and 10.10.  With every OS update, the drivers would be kicked out as not usable, I’d rerun the install program, and everything was good.  While this arrangement worked, there always was this little fear that the PC card wouldn’t actually work, and I’d have to do something with the drive to get to the data (or worse, the data would get corrupted).

When the original Thunderbolt Station was announced, Belkin had announced a similar product, but with eSata support.  I waited for the Belkin device, but when they finally shipped it, the company had deleted the eSata connection.  I was very disappointed, and went with the CalDigit, as it was cheaper and had the HDMI port.

Fortunately, Caldigit decided to update the Thunderbolt Station to Thunderbolt Station 2 (TS2).  This device added back in the eSata port (x2!) and updated to the newer Thunderbolt 2 specification.

I received my TS2 over the weekend.  It was simple to swap out the original Thunderbolt Station for the USB 3.0 and HDMI functionality.  Where I did run into a bit of trouble was with the eSata drive.  I plugged my drive in, but the drive was not recognized.  After reading the FAQ on Caldigit’s website and uninstalling the drivers for the old PC Card, I still could not get the drive to be recognized.  In frustration, I wiggled the eSata cord around, and, lo-and-behold, the drive was recognized for a moment.  This prompted a quick run to CompUSA, I mean, Tiger Direct for a replacement eSata cable.  The new cable did the trick!  The box now works 100%, my PC card worry days are over 🙂

All-in-all, the TS2 is a great upgrade from the original, but if one does not need the eSata connector, there’s not really a need to upgrade, at least for us Thunderbolt 1 device users.

Finally, some output from the musical toys!

For all the wonderful toys that I have for playing guitar and recording, I don’t put out a lot of material.  One of my New Year’s resolutions is to change that.  Here is the first thing that I’ve done with some of the new toys.  This was just a longish loop have something to jam over:


This recording is almost all virtual.  The guitar and bass instrument are real (a 2014 Gibson Les Paul ’59 Reissue R9 and a real 1968 Fender Jazz Bass) but the amps and drums are all processors.  The guitar is running through a Fractal Audio Axe-FX II XL with a basic Marshall amp patch.  The bass is running direct into my audio interface, and then using IK Multimedia’s Amplitude 3.  The drums are done using Logic Pro X’s Drummer plug-in.

Logic Pro X 10.1 is out!

Woo-hoo!  Apple updated Logic Pro X to 10.1 today! (and MainStage to 3.1) http://www.loopinsight.com/2015/01/21/apple-releases-logic-pro-x-10-1/

This is a great development.  There are several key elements to this update that I’m VERY happy to see.

  1. The update happened at all!  The time between Logic 8, 9 and X was VERY long, almost 4 years between the release of 9 and the release of X.  There were some upgrades during that time, including the 9.1 release that switched to 64-bit, but there did not seem to be any major work being done on the program.  Apple has been much better about updating X, but with nothing since May, the Logic user community was beginning to worry.
  2. Drummer received a great update.  Even though EDM / Techno is not my thing, I’m very happy to see a current feature continue to get updated.  Many times, Apple has created some awesome things for music, and then let them rot.  The two examples that come to mind are in GarageBand.  Those two features were the lessons and the instant songs.  They were great ideas that never received any additional material.  Same thing for the Apple Loops.  After the first 5 packs, nothing happened.
  3. The update focused on more than just one or two specific things.  A couple of months ago, I remember getting a survey from Apple about Logic.  In filling it out, I noticed that it was very comprehensive.  It appears that Apple took the responses to heart, and made lots of changes to improve the program.

Lots to chew through in the new update.  This, plus the other updates coming out of NAMM look to get me excited about mixing again!

More gotchas for the Knockout.js and ASPX web forms… size of the JSON sent from the server

New gotcha that we hit today, and it’s one that is probably hit a lot.  To prevent denial-of-service exploits, the default settings for the size of JSON data sent from the server is set relatively small.  To change the JSON size, update the jsonSerialization maxJsonLength setting in the web.config file:





<jsonSerialization maxJsonLength=”1000000″ />





This comes from the following question at StackOverflow: