Don’t have non-technical people make technical sales calls

So I just got off the phone with a Comcast sales person.  I use Comcast for my business internet connection and they wanted to sell me their phone service as well.  Fair enough, but their prices are still higher than what I pay Vonage, and I’m an “if it ain’t broke don’t fix it” kind of person, so I’m fine staying with what I have.


Next she asked me who I have service through, so I told her Vonage.  At that point she tried a scare tactic on me, which I find a bit disingenuous, unethical (and maybe even legally shaky).  She told me (paraphrasing here) that she had heard reports of people being able to listen to your Vonage calls, even on cell phones when they didn’t intend to.  He claim was that since vonage used “the internet” that it was pretty much open to anyone listening.



So I asked her this.  Since my “internet” is provided through that same Comcast cable that their phone service would be providedd through, how was that any different?  She then backpedaled and told me there were threee “lines” in the cable – one for internet, one for phone and one for fax.  I should have asked what line the TV broadcast would come through if I had that, or that when I look at the wire I only see one line.


I then informed her that I was fine continuing my Vonage service.  She again tried the scare tactic and asked “so you don’t care if people can listen to your business conversations?” 


I told her that I actually didn’t care.  If someone wan’t to listen to the infrequent and usually boring phone conversations I have they’re more than welcome to.  I’m not doing any super-secret spy stuff, and our value is our experience, and you can’t steal that through my phone line.



What I will be doing, however, is shopping for a new internet provider.

Continuous Deployment

Admittedly this isn’t really mobile related, but the guys over at CI Advantage are giving away T-Shirts with every download of the eval version of Deploy Now (which we do use and love here).  If you have desktop installations of anything, including mobile software or tools (we use it for testing the SDF installer scenarios, among other things) – it’s a major time saver.

Developers are Cheap

So a few months ago we released our CAB Installer SDK, and we decided to try out value-based pricing as a social experiment.  Our thinking was that developers make their living – and typically a more comfortable living than flipping burgers – and that the would a) understand the value of code and time saved and b) be willing to compensate us for the SDK based on their perceived value of the product.

We here we are a full four months later, and how is this experiment going?  Well here’s a graph that says it all:

What this says is that we’ve sold 51 “value units” to 37 customers, meaning that over 80% of you who bought it only paid $5.  Now assuming you’re a low-paid, entry-level guy making only $40k a year that means you felt it’s worth just over 15 minutes of your time (and keep in mind this thing comes with full source code).

What this tells me is that one of these must be the case:

1) The SDK sucks and has no value
2) People don’t understand “value-based” pricing
3) Developers are cheap bastards who will pay as little as possible for something

Well #1 is probably not true, as we’ve used it on a few projects and it works well.  I think we descibed value-based pricing pretty clearly, and it’s not a tough concept.  So all I can conclude is, well, #3 must be true.  Now we can’t really hold it against you, after all we did allow you to buy it for $5 and some people simply have low moral standards.  I’m just surprised it’s so many of you.

Will we change the pricing model?  Well I have two thoughts on that.

1) the current pricing includes zero support, so it’s no “work” for us to just leave it as-is
2) moving it to fully open source might increase the number of people using it

I’m inclined to go with #1, simply because moving it to open source requires a bit of work on our part.  In short, we’ll keep it out there as an apparent $5 product because I’m too busy to do anything else with it, but the likelihood of it getting any additional features is pretty slim.  It was an experiment that yielded data, and as such I’d say that it was valuable.  It certainly shows that it’s a pricing model that can’t be used to support a business.

Score one for VB

Every now and then (much less now that .NET languages have been around are are pretty mature) I see people who are moving into .NET programming and they ask “which is better, C# or VB.NET.”  Generally speaking there is no “better” but there are some things available in one language but not the other.  Typically I’ve always thought that C# had just a little more – it has the ability to support unsafe code, which I like and use occasionally.  I could never come up with something VB had that C# didn’t.  Until today.

A friend asked me how he could use the Contains() method of a string inside a case statement, and it reminded me of an old VB 6 construct that I’d used, so I tried it to be sure VB.NET still supported it, and sure enough, it works fine:


        Dim myvar As String = "My Test String"

        Select Case True
            Case myvar.Contains("not there")
                Debug.WriteLine("Contains 'not there'")
            Case myvar.Contains("Test")
                Debug.WriteLine("Contains 'Test'")
            Case myvar.Contains("Other")
                Debug.WriteLine("Contains 'Other'")
        End Select

However the construct won’t work in C#.  It won’t even compile because C# expects case labels to be constants.


        string myvar = "My Test String";

        switch (true)
        {
          case myvar.Contains("not there"):
            Debug.WriteLine("Contains 'not there'");
            break;
          case myvar.Contains("Test"):
            Debug.WriteLine("Contains 'Test'");
            break;
          case myvar.Contains("Other"):
            Debug.WriteLine("Contains 'Other'");
            break;
        }

So there you go VB lovers – score on point for your side.  I’m not saying that I’m going to start writing all my code in VB now (not that I have anything against VB, I mean I did co-author a book on it, I’m just really rusty) but here’s some fodder for what some consider a religious debate.

OpenNETCF is now a Technology?

We’ve had a little bit of a brand confusion problem for a while now.  Many people incorrectly refer to our Smart Device Framework library as “OpenNETCF” – so you hear things like “I’m using OpenNETCF version 2.1” which is a bit annoying.  OpenNETCF is the company name.  We have multiple products.  You’re not using Microsoft 8.0 are you?  “Hey look at how smart I am!  I listen to music on my Apple 4.0.”

But it seems to have gotten worse.  A friend just sent me a clip of a resume he received.  Of course it seems to have way more on it than a person probably would know having graduated probably 2 or 3 years ago (it’s clipped, but I assume that the candidate was at UT for probably 2 years) but note the list of technologies.