Windows Phone

A developer's reflections on 2010

Justin James discusses TechRepublic's Programming and Development content in 2010, which featured tips about Windows Phone 7 development, CSS, and more. He also shares some personal updates.

When I started writing for TechRepublic's Programming and Development blog, I tended to write a lot more opinion and industry analysis pieces; when I would look back at those articles at the end of the year, sometimes I regretted my predictions. Since then, I have focused on more how-to articles; as a result, there are not too many things to look back on with a "hindsight is always 20/20" attitude. I know I mentioned this in my 2009 end-of-year post, and this process is simply being continued and the strategy refined.

A look back at 2010

Chad Perrin

The biggest change this year was the addition of Chad Perrin to the Programming and Development section as a regular contributor. I have respected Chad for a long time, and we have an interesting habit of having similar conclusions based on wildly different experiences and starting assumptions. This was highlighted over the summer at the TechRepublic event when he and I participated in some outstanding discussions, particularly around the idea that the software industry is badly broken; this discussion developed into some TechRepublic content, including Michael Kassner's Buggy software: Why do we accept it?

The articles that Chad has written for this audience have generated lots of discussion and interest, and I look forward to reading his 2011 Programming and Development articles.

Popular posts

I like to see what topics generate the most reader interest, which can be gauged by their "thumbs up votes," retweets, backlinks, and discussion comments. By keeping an eye on these things, we can get a good idea of what content the community found useful or really enjoyed.

Some of our best tips don't receive many discussion posts other than the occasional "thanks, that was useful!" comment; all the same, I know that the article I recently wrote on printing stylesheets was a big hit. My Windows Phone 7 articles have received varying levels of interest; the first one I wrote got a lot of attention around the Web as one of the first looks at the development end of Windows Phone 7 from someone who is not a Microsoft MVP or employee. When I called out Apple regarding its developer agreement, a lot of readers had some great feedback on that piece. Our biggest article all year, in terms of sheer discussion volume, was my article on the lack of females in the programming community.

Windows Phone 7

Speaking of Windows Phone 7, I will be posting tips on how to write WP7 applications. The tips will publish once a month in TechRepublic's Smartphones blog, so I suggest that you subscribe to the Smartphones RSS feed or newsletter to ensure that you don't miss these articles. I look forward to this assignment; while the WP7 market is not big yet, and the development experience has its issues, I think that the platform has a ton of promise, and it is the best overall development experience.

My various projects

I keep irons in a lot of fires in terms of making money. All of my projects turn out to be good fodder for my TechRepublic articles. For example:

  • At the day job, I have been doing a ton of work with Microsoft CRM and the Kentico CMS system, both of which I may write about in the near future (if I can wrap the project up first).
  • The Rat Catcher project is now in public beta. I have learned enough lessons about turning a personal project into a potentially money-making venture to literally write a short book. There is a good chance that some of these lessons could end up as articles on TechRepublic.
  • I have been exploring opportunities to do some freelance consulting in the OutSystems Agile Platform market. Most of my OutSystems-related writing has been in the OutSystems forums, but it will eventually move to my little company's Web site at some point. Some of my posts have been featured on TechRepublic.
  • I continue to write miscellaneous WP7 utilities and then release them under the MIT license; some of these projects end up as articles as well.
Job opportunities for developers

While the overall economic numbers are still pretty poor, all indicators are that tech hiring is back. That said, I haven't seen much evidence that the increased demand for developers means more job opportunities for many developers. The truth is that much of the demand is for hard-to-find skill sets. If you are a mobile developer or a Silverlight programmer, you would be hard pressed to not be employed right now. If you are a run-of-the-mill .NET, Java, or PHP developer with few standout skills, you should definitely be concerned about your long-term job prospects, and start looking for ways to enhance your desirability if you have not done so already.


Something that has made a big impact in my life in a short period of time was the gift of an Amazon Kindle for my birthday. Do I expect it to replace books in my life? No way. I love physical books. But what the Kindle has allowed me to do is to have a chance to read the huge pile of free ebooks (usually in PDF format) that I've accrued over the years but haven't read. You see, I hate reading long documents on the screen, and printing an ebook tends to make it a pretty expensive "free" book.


Another technology that has made a world of difference to me was moving from a feature phone to a smartphone. I currently have a Motorola Droid (which I really, truly dislike), and as soon as Verizon offers a WP7 device, I plan on moving to it if possible (I may wait a few months to get my best upgrade pricing). The smartphone allows me to work even when I am not in the office; since I often gets important emails in the evening, this is a huge load off of my shoulders. Combining the smartphone with MailRelayer (for my personal email) has been a real winner too.

Personal updates

I usually keep my personal life out of my writing, but I like to share a little bit of it for this final post of the year every December. The great news for this year is that my wife is pregnant with our second child, with a due date of June 16th. Our son's birthday is June 13th, so I can look forward to June becoming as expensive as December. We're working on names now, but I suspect that my wife won't let me give this child the "JMJ" initials like we did with the first one unless it is a boy (please be a boy please be a boy). I am really grateful that "JMJ 2.0" (the son we already have) has become such a mature person and very self-directed. He can play for hours at a time in the yard and not get bored. He also has an engineer's heart: The last few months, one of his favorite things to do has been to watch rocket launches on the computer with me.

My last big personal life update is that the weightlifting is going great. In June, I entered my first powerlifting meet and totaled 1,105 in the 220 weight class as a raw lifter. While 1,105 is not stellar by any means, it is a great start for someone who just three years ago had never worked out a day in his life. I am going to compete again in January, and I believe that I should total 1,165 at a minimum and hopefully hit 1,185 or perhaps clear 1,200. I hope that if you have been considering making a change to improve your life, whether it is quitting smoking, eating better, doing some exercise, spending more time with your family, reading more, going back to school, or whatever it is... you can do it!

And on that note, I wish you all the best for 2011, and so long 2010! I hope that the next year brings you nothing but good things, and that you are having a safe and happy holiday season.


Disclosure of Justin's industry affiliations: Justin James has a contract with Spiceworks to write product buying guides; he has a contract with OpenAmplify, which is owned by Hapax, to write a series of blogs, tutorials, and articles; and he has a contract with OutSystems to write articles, sample code, etc.


Justin James is the Lead Architect for Conigent.


Mobile programming hits the market


Justin, Great article. However, I'm curious why you believe that Silverlight folks will fare so well over plain-vanilla .NET folks?

Justin James
Justin James

Every recruiter I've been talking to is desperate for Silverlight people. Every Silverlight developer is getting so many big buck job offers thrown at them it isn't funny. Meanwhile, plain vanilla .NET (as well as Java and PHP) continues to become more and more of a commodity skill, with a lot of competition from overseas. Right now, the entry level developers are being squeezed very hard... unless you went to school and got an MA or a PhD in hardcore CS and can go work on things like graphics, OS's, compilers, and so on, you are at the same pay rate as an experienced developer overseas, without that experience. While there's still demand, salaries for intermediate, plain-old-developers have been stagnant for 10 years... that's a bad trend. In the last year, I've seen a HUGE amount of interest in SL work for internal apps. That's why it's not so obvious, we see it as a wannabe Flash, enterprises see it as a zero-install desktop app replacement. J.Ja

Evil Magician
Evil Magician

I'm just referring to an apparent contradiction. There was a recent Tech Republic article, stating that most Windows Phone 7 apps are downloaded 10 times or less. Meaning WP7 developers won't even get pocket money for their efforts. Next there'll be an article called "Tips on how to write WP7 applications". So it begs the obvious question: Why bother? Windows Phone 7 has been selling badly since launch, and I'm not sure what could turn it around. Microsoft says it is in there for the long haul, but its partners are not.

Justin James
Justin James

Funny enough, I wrote an article similar to that here at TR (maybe that's the one you were thinking of?) a few weeks ago. While the numbers for WP7 apps are not great... they aren't much worse than other platforms. Or to put it another way, you might be able to make 10 times as much money writing iPhone apps, but you are still only making $600 which doesn't justify it (yes, the average iPhone app brings in under $1k!). Personally, I feel that mobile development is NOT a way to make money, at least not if your business model is to make money selling apps. If your business model is to add value to existing offerings (like an app that lets you work with your bank account from your phone), raise brand awareness (a game featuring your company's mascot), or for internal use (say, an app to work with the company CRM system). One thing I *will* say for WP7, if you stick within the development boundaries (which are expanding soon), and can live with the issues around App Hub (which I've detailed seperately) it's the best game in town from a development perspective, especially if you are already a .NET developer. For internal apps, that could be all the justification you need to work with WP7. As a hobbyist/enthusiast, WP7 puts it well within my grasp to whip up apps to meet my personal needs, which is much more work on iPhone or Android. J.Ja

Justin James
Justin James

As a developer, how well did 2010 treat you? Any standout moments? J.Ja


I guess a few things of interest have happened to me: 1. I became a regular contributor in the Programming and Development column here at TR, as you mentioned in your article. Thanks for the welcome! I'm pleased to share the stage with an experienced, intelligent developer like yourself, and I tend to learn from your technical articles when I read them. If I could just get you to write more about technologies I actually tend to use, I'd probably learn a lot more. 2. A license I created (the Open Works License) has been added to the list of officially accepted licenses in the FreeBSD Ports system, thanks to the fact that fellow TR contributor Sterling keeps releasing software under the terms of the OWL. 3. I learned a little something about prototype-based object oriented programming languages via learning the basics of the Io language, as explained in an article here at TR. 4. I wrote, deployed, and started (occasionally) publishing content via, a simplistic CMS called Lump. The site where I'm using it is (as you know) blogstrapping. 5. I wrote my first IRC bot. Expect an article (or two, or three) inspired by that experience here at TR in the coming weeks. 6. I got turned down for a Rails development job. That was kind of fun, I suppose. 7. I put off getting into C programming with any seriousness about twice more this year. I keep doing that. There's probably more.

Justin James
Justin James

"If I could just get you to write more about technologies I actually tend to use, I'd probably learn a lot more." I might meet you halfway on this... I've got an article planned for the next few months on IronRuby... and another on my list for "IronRuby on WP7". :) "A license I created (the Open Works License) has been added to the list of officially accepted licenses in the FreeBSD Ports system, thanks to the fact that fellow TR contributor Sterling keeps releasing software under the terms of the OWL." Are there any practical differences between OWL and MIT License? I've been using the MIT License (except for stuff I upload to the Agile Platform downloads section, their system uses the BSD license). OWL looks a little more "plain English" and has a few less sentences in it, but outside of that, are they effectively the same? "I got turned down for a Rails development job. That was kind of fun, I suppose." Eh, it happens. I wish there were more non-Rails Ruby jobs. I'd be much more interested in pursuing that than going for a Rail position, if I was on the market. J.Ja


> Are there any practical differences between OWL and MIT License? The biggest difference is that the OWL is not particular to software, whereas the MIT/X11 license is. This means the OWL is as suitable to use for software as the MIT/X11 license when the code is never going to be merged with content of any other type, but for code embedded in other media and content types, or for other content types, the MIT/X11 license is not as suitable. For instance, for documentation included with an MIT/X11 Licensed application, you might want to use the FreeBSD Documentation License instead; for documentation included with an Open Works Licensed application, the OWL itself works just fine. Otherwise, however, they should be effectively the same thing in the eyes of the law. > Eh, it happens. I wish there were more non-Rails Ruby jobs. I'd be much more interested in pursuing that than going for a Rail position, if I was on the market. Me too, but I'd take either, given the assumption that there's a lot of room to expand my skills on the job.

Editor's Picks