

Ask HN: How could I monetize a programming language? - eli_gottlieb

I'm in my third year working on a programming language.  <i>Probably</i> this coming summer or fall I will <i>inshallah</i> be a graduate student, but so far I've only gotten something like two papers' worth of research ideas out of this language.  Furthermore, I damn well want to get paid for work I do.<p>Language: http://code.google.com/p/decac (It's been on HN and LtU before)<p>Me: semi-poor graduate-student-to-hopefully-be.  I've just been turned down for a job at an awesome start-up because I wasn't completely sure I didn't want to "do academia".  This has become a pattern, I'm fed up with having to at least fake total commitment to NOT seeking a PhD before even having the option to work, and besides I'd like to make a go of what I love best.<p>TypeSafe is doing it.  How can I do it?
======
kls
Personally I think you will be fighting an uphill battle, there are a lot of
good free languages available and it is very hard to get adoption for a pay
product if it is general purpose. Now there are some industry specific and
domain specific languages that companies pay for that deal with such things as
avionics and other tightly controlled mission critical systems. That is really
the last safe harbor for closed commercial languages that requires
compensation to use. So to me, you are going to have to be light years ahead
of everyone else if you are targeting general computing and even then you have
an issue with adoption that you will have to deal with. Conversely if you are
targeting a specific domain, then you will have to do due diligence on that
domain and the offerings in that space and see if you can compete.

Conversely you can still get paid if you decide to open source the language. A
lot of organizations founded around the designers of open source languages are
well compensated through other means, such as books, certifications and
consultancy services. Being the authority on the language puts you in the
unique position to capitalize on that authority.

~~~
eli_gottlieb
The compiler is already open-source.

Now, as to domain, the domain is systems programming. Competitors on equal
level: HASP/Habit (whose lab I may well work in soon), Ada, D, Rust.

Competitive advantages: state-of-the-art expressiveness, static checking and
typefulness up the wazoo, applying research that most folks outside PL labs
haven't heard of. I would say (to condescend unjustly to my esteemed
colleagues) that Rust and Habit are the only efforts worth competing with in
this space; the rest are just hackers playing around without much rigor.

I am again thinking: "TypeSafe does it. Why shouldn't I be able to?"

~~~
jetti
Here is the difference between what you want to do and what TypeSafe is doing:
You want to create the language and then profit. TypeSafe takes an open source
language and bundles it with other open source technology and then offers
support.

I think it would be hard to keep working on your language while trying to make
a profit. If you want to try to make money, write a book about your language.
Put it on <http://leanpub.com/> and go from there. Maybe a publisher will be
willing to work with you. But it is a way to earn money in the short term
while you wait for the language to grow in popularity.

~~~
eli_gottlieb
I guess you could say the issue is that TypeSafe's seed funding came from
academia. It's the same people in TypeSafe who developed Scala, but they
developed it as a research language before "exporting" back to the industrial
world.

------
paulsutter
I really like the goals of your language. I'm an old c++/assembly programmer
from way back, and today's heavily layered languages with non deterministic
performance are disappointing to me. I like that Deca will never use GC or a
virtual machine, never require a run-time library or an OS.

But to answer your question, the best way to monetize a new programming
language is to stop working on it and do something more likely to have an
impact on the world.

You seem like a super smart talented guy. Don't worry about sunk costs. I'd be
happy to brainstorm with you, sutter at gmail.

I'd also be happy to discuss the many years of your life that could be eaten
up trying to get a new language adopted. The most likely outcomes are (a) to
choose the right category and fail to get traction, or (b) choose the wrong
category and fail to get traction.

------
nikcub
licensing programming languages and tool chains is the oldest software
business model, but it has changed a lot because of free software

today you have a few options:

a) a variant of freemium, where a commercial arm will sell/license commercial
components as part of the ecosystem. see Zend and ActiveState as examples

b) setting up a foundation with donations

c) being sponsored by a commercial entity to work on the language (see jQuery,
Python, Erlang)

If you are going to start a company around a programming language, you would
want to find a niche for it and market it there rather than trying to be
everything to everyone. for eg. is this for web applications, embedded
systems, etc. Come up with a list of your 'ideal users' (or customers) and
pitch them.

------
paulsutter
Sorry to make two posts, but I have another suggestion.

If your goal is to make a difference and you are passionate about Deca, I'd
suggest finding a very important problem that only Deca can solve. You
probably envisioned some specific problems as you designed Deca. Those are
good candidates.

If your goal is to get paid, then choose the problem you solve according to
the one that will get you paid.

I'm happy to help brainstorm this too.

On the other hand, if your (unstated) goal is to get widespread adoption and
accolades, you've got a difficult path ahead.

------
andrewflnr
TypeSafe apparently makes money with support, training, and consulting [1].
All that hard, human-oriented stuff that doesn't scale ;). It's another sort
of freemium model, and would, I suppose, mesh well with nikcub's option a. But
you have to have a bunch of users, first. It seems like Scala already had some
users before TypeSafe took off.

My brain is saying "build a platform", but I'm not sure how that would work.
If you had a popular platform where Deca was the language, that might make
Deca more widely used, but that might not be what you have in mind.

Definitely build something cool with it, so people can see it can be used for
"real" programs. If you want it to be OSS, it seems like the most important
thing is to get some users and some cred. I think PG had some stuff to say in
this regard.

You could always just make money with an app in your language.

I'm not speaking from any depth of experience, so hopefully this is useful. I
like where you're going with Deca. Best of luck!

[1] <http://typesafe.com/products>

------
smashing
Open-source the core of the language and license proprietary frameworks of the
language. The great thing about academia is you can teach about computer
languages using your expertise in creating your own, and you can partner/hire
PhD's to work with you in a consulting fashion.

