16

It was recently let slip that the new EULA for Delphi XE3 will prohibit Client Server development with the Professional edition without the additional purchase of a Client Server license pack. This is not to say the Professional version will lack the features, but the license will specifically prohibit the developer from using the compiler for a specific class of development, even with 3rd party or home grown solutions.

So my question is if there is a precedent of a compiler or similar creative tool prohibiting the class of work you can use it for. Specifically a commercially licensed "professional" tool like Delphi XE3. Also, would such a restriction be legally enforceable?

I know there have been educational edition or starter edition tools in the past that have restricted their use for commercial purposes, but those were not sold as "professional" tools. Also I know that a lot of computing software and equipment will have a disclaimer that it is not for use in "life support equipment" or "nuclear power" but that is more of avoiding liability than prohibiting activity.

Seems like I recall Microsoft putting a restriction in FrontPage that you couldn't use it to create a web site that reflected poorly on Microsoft, but they pulled that restriction before it could be tested legally.

Update: The EULA was dropped before the product shipped because of public resistance.

Jim McKeeth
  • 2,126
  • 15
  • 30
  • 15
    This has to be among the most asinine stunts I've seen pulled by a tech company. In one shot they peeved off most of their user base, crippled their ability to expand their user base because the new EULA only applies to new customers, and potentially put a number of long term 3rd party vendors/partners out of business. Thats more than your garden variety dedication to stupid. – GrandmasterB Aug 29 '12 at 21:09
  • 3
    @GrandmasterB - I think at some point you just aren't going to get many new customers and your existing customers are people who have very high costs to switch away. So the biggest $ is suddenly in squeezing your existing customers as hard as you can before they escape. Maybe they have reached this stage? – psr Aug 30 '12 at 00:21
  • 2
    @psr, I suspect thats exactly the point they are at - just trying to milk what few cows they have left before the last one bolts. Its a shame because its clear at least some part of their organization believes they can be more than that, given the positive steps they've taken in the past couple years. – GrandmasterB Aug 30 '12 at 03:17
  • 2
    @psr I'm sure you're right. I certainly can't imagine even a single new customer starting up Delphi development at this point in time. – Carson63000 Aug 30 '12 at 03:30
  • 2
    It sounds like, after serious and thoughtful consideration (read: a public beat-down), they've backed off of this nonsense. – GrandmasterB Aug 30 '12 at 19:40
  • 1
    @GrandmasterB - too late, though. I still laugh at the whole "Inprise" thing. Some memories are short, but not all, and trust is damaged a bit every time a company tries this kind of thing. This time they backed down - but we now know they'd do it if they could, and maybe in a few more years they'll try again and the outcry won't be loud enough. –  Sep 01 '12 at 06:47
  • 1
    @Steve314: Much as I love the language they've already lost my trust as a tool to depend on. – Loren Pechtel Sep 08 '12 at 02:09
  • 1
    For the record, the licensing scheme described above was not implemented or shipped. The idea was dropped. – Nick Hodges Oct 31 '12 at 21:23
  • @NickHodges: I updated the question. – Jim McKeeth Oct 31 '12 at 23:40

2 Answers2

14

It's not entirely unprecedented.

SQL Server is limited by users/server/database size, etc., effectively limiting its use as a client'server platform, and it's essentially a programming environment (albeit one with a rich data infrastructure). Many software libraries routinely limit the way programmers can use them, in a variety of ways.

In practice, anyone can put anything they like in a license agreement. Your remedy is to not use it if you don't like the terms, which I would imagine potential Embarcadero customers will do in droves.

Robert Harvey
  • 198,589
  • 55
  • 464
  • 673
  • There aren't that many droves of Delphi customers left these days, but those that remain are probably unlikely to leave over this. Though there is IIRC a mostly compatible free/open-source alternative (Lazarus) for waverers who can't throw away their old code. –  Aug 29 '12 at 20:59
  • 1
    The linked article says that existing customers are grandfathered under the old terms. – Robert Harvey Aug 29 '12 at 21:00
  • 8
    +1 I've never understood companies who make it more difficult for developers to add value to their platforms. – Karl Bielefeldt Aug 29 '12 at 21:10
  • They havent formally clarified if they mean existing *users* or existing *licenses*. ie, its not clear if you go out and buy 5 new licenses for 5 new hires if it applies to them or not. – GrandmasterB Aug 29 '12 at 21:11
  • True, it is common practice to have databases require upgraded licenses based on how it is used. I can't think of any compilers that have such a license restriction. – Jim McKeeth Aug 30 '12 at 00:41
  • 2
    While the SQL Server limit is actually CODED INTO THE CODE, NOT THE EULA, the MS SQL Server "Development" edition is simply "not legally licensed to be used in a production environment, and only for development". So that's similar. But the development edition is cheap. Putting a restriction onto a product SKU that's existed for decades, is not something I can remember any precedent for. – Warren P Aug 30 '12 at 02:37
6

Java has long had a restriction against use in nuclear facilities, although the JDK6 license agreement softened the terms slightly (I recall the older variants being much more explicit):

You acknowledge that Licensed Software is not designed or intended for use in the design, construction, operation or maintenance of any nuclear facility. Oracle Corporation disclaims any express or implied warranty of fitness for such uses.

This makes sense: you wouldn't want to let a GC pause get in the way of SCRAMing the reactor. Which is not to say that there isn't someone, somewhere, who has accepted a contract for nuclear control systems and decided that it was cheaper/easier to hire Java programmers.

parsifal
  • 61
  • 1
  • It's just silly too. As long as you've designed the safety system in a fail-safe way, it doesn't necessarily matter if some other part of your system is less reliable. It's the Engineer's job to make those decisions. We do similar stuff in industrial controls all the time: safety functions are handled by special hardware/software, but the non-safety critical machine control can use anything you like. – Scott Whitlock Sep 07 '12 at 16:40
  • 2
    This restriction seems too specific to be about safety; there is no similar restriction for medical devices or other life-critical systems, for example. It seems more likely that it is politically motivated. – Robert Harvey Sep 07 '12 at 22:20
  • They don't say that you cannot _use_ it in a nuclear facility, just that it is not _guaranteed_ to live up to the requirements set for software to use in a nuclear facility. That is not the same. –  Sep 08 '12 at 08:16