If your product is client-managed, how do you sell the server?


A friend of mine told me about a project he worked on two decades (and three employers) ago. Let's call it Project Nosebleed. Their project used a client-managed database: You have a central file server that houses the database files, which were in a proprietary file format that only the clients understood. All the client applications open the database files, coördinating¹ access among themselves by using file and record locking primitives. All you needed the server for was a place to house the files. It could have been a NAS server for all anybody cared. (Well, except that the concept of NAS hadn't taken hold yet at the time of this story.)

The company sold two products. One was simply called Nosebleed, which was the program that ran on the client machines. The client program connected to the central file server and updated the files as appropriate.

What I found puzzling was that they also sold a Nosebleed Server product. I mean, the database is completely client-managed. No actual code runs on the server. What the heck is there for this alleged Server product to do?

My friend took pity on me and told me the answer: The server product is used to create the database files and perform database maintenance activities.

But I still found it ironic that a client-managed system has a server product. I suspect the business folks figured they could make a lot more money by breaking the program into two products.

¹ I am an old fogey who learned to spell coördinate with the diaersis, Hallowe'en with the apostrophe, and was taught to use an apostrophe to pluralize numbers. I still spell that way out of habit, and because I know my readers love arguing about it.

Comments (43)
  1. Joshua says:

    While Nosebleed probably isn't VSS, this is the architecture of VSS.

  2. Boris says:

    But you don't normally write 'coördinate' according to a search of this blog.

  3. Kevin says:

    @Boris: I think he's distinguishing between Cartesian (or polar, in theory) coordinates and the verb 'coördinate'.

  4. Boris says:

    Kevin: I get nothing for 'coördinate', but here are some results without the diaersis:

    "When I say that it is your responsibility to coordinate an object's use from multiple threads …"

    "… every Monday, the plants get double-watered. There's no standard protocol for multiple housekeeping services to coordinate their activities; …"

    "You have to coordinate with those other teams and let them know what your transition plan is so they can work it into their schedule."

  5. parkrrrr says:

    I'm bored with the debate on whether or not to use a diæresis. My new worry is that I'm a sufficiently old fogey that I use the ae ligature to spell “diæresis.”

  6. Boris says:

    But æ won't make you read co-ER-perate, the way this does. ;)

  7. parkrrrr says:

    And yet, since you're already in the habit of confusing English with German, perhaps it should. Because how do you write the German ä when you lack an umlaut? You write it as ae.

  8. Medinoc says:

    So this "server software" was actually analogous to the VSS administration program?

    Like, actually still a client program, but performing administrative stuff rather than daily tasks…

  9. Boris says:

    AE is frequent enough in English to fix a set of pronunciations in my mind, but Ö screams German to me.

  10. baffled says:

    Did the Nosebleed server use a Pick database? And what do your co-workers think about 'coördinate'?

  11. Rick C says:

    Remember that the ö is also used in the names Zoë and Chloe, and for the same purpose.  (Or you can take the somewhat silly way and name your daughter Zooey, but run the risk of it being pronounced differently/wrong.)

  12. Random832 says:

    Or you could just write it as "Zoe" without the accent (as you did in your post with "Chloe"), and rely on people to know how it is pronounced.

  13. Fredrick says:

    Shouldn't it be spelled 'coårdinate'?

    Ie both in German and Swedish it would not be pronounced correctly if it was spelled 'coördinate'.

  14. davep says:

    "Cooperate" clealy has something to do with chicken coops.

  15. dave says:

    You can get a nice chicken coop at The Coop.

    http://store.thecoop.com/

  16. Kemp says:

    Squirrel: It's not considered confirmation here because he deletes any guesses regardless of whether they are right or wrong. Those are the rules of the blog.

  17. Nicholas says:

    I think we need a diacritic version of Ponify.

  18. Random User 1083451 says:

    @Nicholas

    What would you propose? It already has a tittle on the lower-case "I". I'm not seeing anything in "Ponify" that could be confused for a diphthong, in English at least, so no diæresis.

  19. Nicholas says:

    @Random

    Whāt I meant was a scrĩpt that will modify ťext to modify chǟracters with randőm diaĉritic marks :)

    One could even try and make it "smart" so that it uses them in almost-but-not-quite right ways (such as pronunciation, etymological, etc).

  20. Nicholas says:

    > modify text to modify characters

    Ha. That's why you should pay more attention to the words you're writing than picking funny little letters to use.

  21. If you will forgive me for not joining in the fascinating diaeresis debate, I would like to comment on the observation that it could have been a NAS server before the concept was invented, and suggest that the concept existed – what hadn't yet happened was that people had not yet forgotten about it in order for someone to come to market with a familiar product under an unfamiliar name and sell the same bundle of old rope to a market obsessed with "new" technology.

    After all, what is a NAS server if not just a good old fashioned "file server" with a fancier job title ?

  22. Yuri Khan says:

    @baffled: I propose an alternative spelling of coẅorker (somebody who works with you), to differentiate from cowörker (somebody who orks cows).

  23. Dave says:

    >learned to spell coördinate with the diaersis

    You may have learned how to spell coördinate, but you didn't learn how to spell diaeresis :-).

  24. Dave says:

    >I am an old fogey who learned to spell coördinate with the diaersis

    That's OK, we need more diacritics in our writing.  For example the Germans gave Alan Türing some for his important contributions to the Entschiedungsproblem.

  25. Dave says:

    "Entscheidungsproblem", dammit!

  26. Jonathan says:

    I can certainly imagine the following progression:

    1. Project Nosebleed is officially a client-only product, that being its selling point.

    2. Devs write some management tools, because, well, they're needed.

    3. Some marketing guy hears about those, and decides to market them as overpriced Server product (maybe in an Enterprise bundle), thus diluting the "client-only" selling point.

  27. Gabe says:

    Jolyon Smith: A NAS server is just an appliance just for file serving. It is not a general-purpose server that happens to only run a file sharing service.

    A couple decades ago, a file server was a high-end computer that ran Novell, which could host apps as NLMs, or one of a variety of general-purpose OSes (Unix, Windows NT, DOS, OS/2) that had networking services available.

    The first Network Appliance, which was a specially designed piece of hardware with a custom OS whose only purpose was sharing files, had only just been released then. Since nobody had heard of it, and the term "NAS" had not yet been coined, Raymond is correct to say that the concept of NAS "hadn't taken hold yet".

  28. Myria says:

    It would be naïve to assume that all of English can be written without using diacritics – just ask your fiancée.

  29. Neil says:

    Interestingly my browser's spell checker has only heard of hallow and e'en as separate words. On the other hand it will correct words such as façade for me.

  30. Rick C says:

    Random832, obviously I meant to spell the second name with the accent.

  31. Raphael says:

    @Nicholas: I think they call it Zalgo. Though that less random diacritics and more *all* diacritics.

  32. Maybe they just wanted to make sure clients were not too independent and kept paying.

    And the server probably validated licensing too…

  33. alexcohn says:

    My NAS server has Linux inside and runs apps with Web interface, e.g. torrent.

    Regarding the split decision, it's license that matters. If an organization needs one "server" license and 20 "client" licenses, it's much easier to set the Server price at 20*client price, and all sides of the deal are satisfied. True, the actual development effort for the former is 1/10th of the latter, but giving it the "Server" tag makes pricing sound reasonable.

    There is actually another option, quite popular nowadays: sell a NAS with the Server product at 3*normal NAS price, call the bundle "certified Nosebleed server".

  34. >"Cooperate" clealy has something to do with chicken coops.

    Cooper is the one who makes barrels and other goods made of staves held together with hoops.

  35. davep says:

    aler1: "Cooper is the one who makes barrels and other goods made of staves held together with hoops."

    Yes, coopers don't make coops (makes perfect sense!)

  36. @Gabe: "A NAS server is just an appliance just for file serving. It is not a general-purpose server that happens to only run a file sharing service."

    Um, I don't think you will find many NAS servers that do just file serving and nothing else.  They also typically provide printer sharing, media serving, download management and, since they typically run commodity OS's and/or provide a mechanism for installing and running "extensions" etc, they very much are general purpose devices, just ones that are deployed to a specific purpose.

    Just like "file servers" in fact.

  37. Falcon says:

    I remember a NAS server that could serve CDs and DVDs directly from the optical drive, image them to the HDD and serve them from there and also write discs.

    It had a custom motherboard, presumably with custom firmware, in a 5.25" drive bay unit. It ran a Socket 7 AMD processor.

  38. Jon says:

    The fact you need to buy a separate server may simply be a reflection of their pricing model. Just like Windows, you pay $X per server and $Y per client. Their software model didn't reflect that by default, but a simple change here could.

    One reason may be a competing product used such a server pricing model, or that market research showed that people preferred paying a large amount per server coupled with a small amount per client, rather than a moderate amount per client.

  39. rw says:

    Using diaersis with a, o and u in English words is very disturbing for German readers of your blog.

  40. console says:

    A popular games console does a similar thing. Most games are peer-to-peer, yet you need to pay a monthly fee to the console manufacturer to enable that functionality.

    Just highlighting Project Nosebleed is not the only product charging for "server is the client is the server" functionality.

  41. Funny, it turns out that servers are expensive for hosting content, leaderboards, servers for large games so one person doesn't have host advantage all that other good online multiplayer stuff. So the major competitor to said console is charging to enable that functionality too in the next version of their product!

    Look, I agree Gold is overpriced, but the reliability of Xbox Live is tons better then PlayStation Network and it's not just about a P2P connection, it's about everything else too.

  42. Or rather, it's not expensive, it's that a lot of functionality is inexplicably tied into Gold.

  43. Marc K says:

    At least Nosebleed Server added management tools.  Client Access Licenses add zero functionality while adding license management headaches.

Comments are closed.