Who’s the Customer?


Who is the target user for our non-professional tools? In order to make smarter decisions about what we build, we need to understand that the customer we’re building this product for doesn’t fit a single profile. Off the top of my head, I can think of five personas/stereotypes:


  • “Jay,” the professional developer by day and hobbyist by night who may spend time helping friends build their Web sites or work on a game he hopes to sell online.

  • “Moira,” the middle-school student who has a high aptitude for math and science and is interested in learning to program but doesn’t have a set curriculum in school.

  • “Trevor,” the middle-aged accountant who’s a whiz at Excel macros and wants to learn more both as a hobby and maybe to help at work.

  • “Alexa,” the CS student in college who has a full course load but is also interested in building applications and Web sites both as a demonstration of skills and to learn.

  • “Heloise,” the system administrator who is interested in learning how to customize Windows to help at work.

Given ten more minutes, I could come up with another half dozen.

This is important because today’s Express products service all these customers. The general appeal of Express has helped boost the download numbers, but at some point it will start to pull the product apart as we have to decide which customer we’re aiming for – the professional LAMP developer, the computer science student using C++, or the hobbyist interested in building games.

Comments (5)
  1. Jeff Parker says:

    Well, I am not sure what your getting at here, I think Jay the professional developer is going to go with Visual Studio. I do anyhow and much prefer it. I vew the express line (except SQL) as kind of a stepping stone. My nephew who is a freshman in high school and learning to program there I pointed him to express and he loves it. He would much rather get a copy of full blown VS after working on mine for a while, but he is having a lot of fun right now in express eventually he will outgrow it and hopefully by then has a job so he can buy it on his own. Some engineers (not the software kind) here at work download it to try simple things. While it drives us nuts as they try to deploy apps written in express with hard coded values and no source control or documentation they do get some points across on what they want to do.

    Now SQL express on the other hand. Well thats going to eventually get pushed down to the desktops everywhere. So many just desktop apps are in need of a database locally pro developers in general are not really thrilled with access as a platform yet a lot of mid level developer use it and xml data is nice but nothing beats a great normalized database. Much like MSDE of sql 2000 express is going to I think gain popularity among a lot of developers. Sincing app data, quering local data much faster than going across a wan. Data that changes rarely on the client and updating occasionally on the main server. SQL express is a totally different beast than the other express products.

  2. johnmont says:

    What do you think of the recently announced SQL Everywhere?

    I am not sure whether Jay will use VS Pro or VS Express, but it’s not that important in this scenario since the bulk of it focuses on Jessica. What I’ve found through research and anecdotal information is that many pro developers are actually reasonably happy with Express on their home machines for the "coding for fun" things they do. It’s definitely not good for working in teams, but it is good for building a blackjack game or an ASP.NET web site.

  3. Jeff Parker says:

    Well I really can’t comment much on SQL everywhere. I have never used it. Most mobile apps I built would do fine with minimal data in XML format. So I never really had a chance to work with it and put it through it’s paces. However, while I admit the thought of it is apealing over express in some scenarios.

    Take an image library application for example. Microsoft’s Digital Image Suite http://www.microsoft.com/products/imaging/ProductDetails.aspx?pid=003 Or Google Picasa http://picasa.google.com/ Both have their pro’s and cons as far as an app goes. However each one stores it’s data in a different way. In my opinion none of them store their data in a good way. Google has some huge compacted datastore that is forced under your user profile. If there is an option to change where it is kept I haven’t found it. But I would much prefer to dictate where the data store is at. Microsoft’s relies very heavily on the fact you have thumbnails activated (the hidden thumbs.db) in every single directory or it did in the 2005 version. Which if you turn this option off in the OS the entire application completely falls apart. Most importantly, neither of the applications do exactly everything what I want them to do. What would be nice is a database store of the data for the apps. That way a depeloper could actually extend the application and use existing data by adding maybe new stored procedures or enhancing a stored procedure. To dig into either of those apps now and figure out the data stores then write your own queries against the data is a massive task and a lot of nights in frustration. Anyway, that would be one simple example of why I think a database on the client is more an more necessary. Every single client app seems to have it’s own way to save data, get data, search data, back up data. It would really be nice to have a common way on data intesive apps it seems to me the logical choice would be a database of some sort they already have this functionality built in so why recreate it, either SQL everywhere or SQL express. For me though the jury is still out SQL everywhere I really need to play with it more before I could give you an honest thought about it. However you did intrigue me to look into it more.

  4. zzz says:

    A tighter Game Express + MDX integration could be interesting. I imagine ATI could have some kind of RenderMonkey component in VS to allow even hobbyist level dev take advantage of HLSL with MDX efficiently. It is easy to create cool stuff in RenderMonkey but it isn’t quite obvious how to integrate that into something you write in VS?

    I’d like to see more tutorial and webcast on using cool pixel shader effects on top of otherwise 2D engine done in MDX. That will be insanely cool.

  5. orcmid says:

    Interesting.  I would have thought that there is a common foundation for all of this, as well as a friendly, results-and-experience oriented on-ramp.  

    Maybe diversification into various focuses comes after one has some minimal sea legs and can discover what the various subject-oriented communities have to offer to newbies?

    Just speculating here, I haven’t tried this out yet.

Comments are closed.

Skip to main content