I develop and sell Cursive (https://cursive-ide.com), which has paid my bills nicely for a couple of years now. Currently I make more than I made in my last job at Google. I never thought I'd be able to make a living selling developer tools, much less into a niche market, but I'm constantly amazed by how well Cursive does.
The work is a mix of fun and boring slog, like most jobs I guess. A lot of my time is spent on support, both technical and sales, so when I work less I actually end up getting more frustrated because a higher percentage of the work is not as fun as writing new features. I've also had a bad year of having to work around IntelliJ bugs, but normally I like the actual development work a lot. I have friendly enthusiastic users who constantly make my day. It's a pretty sweet gig, and being able to decide how I spend my time, and which bits of my time I spend working, is priceless.
I got started during a sabbatical from my last job, just building something that I wanted myself. It turns out that lots of other people wanted it too.
I cannot believe that you make more from such a niche dev tool than your job at Google. I always thought people who use clojure/scheme would be using their custom setup in emacs or vim.
I'm interested to learn more details, how things were when you first started out selling the app and the trend.
You say that but one thing that i always dislike when i consider taking a look at Lisps is how everything seems to be either on Emacs or looks like it'd really like to be Emacs.
Personally I want a full blown IDE that takes advantage of advanced modern technologies such as displays that can draw individual pixels, have a model of the codebase that allows advanced features such as word completion and preferably fits nicely with the underlying OS. A debugger would also be nice, but i understand that sometimes i ask too much.
I wouldn't mind paying for such a tool (though i do mind DRM schemes and subscriptions - i want to be able to pay once and then be on my way). Cursive looks something i'd pay for if i was really interested into Clojure and was using macOS.
Actually, there's completion, and excellent debugging tools for Clojure in Emacs, both step-by-step kind, and investigative. "I don't want to use Emacs" is a completely valid stance (de gustibus...), but it should not be misinformed.
I know that Emacs has good support for Lisps in general, my comment was a joke towards what i consider basic features of an IDE (the whole 'modern' and 'advanced' thing when referring to stuff that were available in the late 80s should have made it obvious :-P). It comes mainly from my observation of the trend where a lot of developers like to jury rig "IDEs" out of text editors and a bunch of other unrelated tools that look as if they are made to be run in 70s terminals that look and feel considerably worse that MS-DOS applications which had 1/100000th of the available resources.
FWIW I've found Clojure has pretty decent support in a few editors. I know Cursive is quite popular, but I've also used both VS Code and Atom to some extent, and they have nice features.
Somebody else could probably speak more to it than me, since I do primarily use Emacs, but I definitely don't introduce my friends to Clojure with it.
I'm not talking about those markets - this was after an acquisition and I was supposed to move to either SV or NYC. In the end I didn't want to work at Google or move to the US so it was pretty brief.
Thinking about it, I'm not sure Cursive pays more than my total comp at Google, but certainly more than salary + bonus.
I wrote a little bit about this below (https://news.ycombinator.com/item?id=21337892), but I think that a lot of that perception is because lisps (with the exception of CL) have traditionally been things that people tinker with as a hobby. Once you get a significant number of people making a living working with a language, suddenly a lot of people want barriers to getting their work done removed. And Emacs, for all its benefits, can be a significant barrier to getting work done for a lot of people. Plus there are those of us who just think that life is too short :-)
As a Clojure (and Java) dev, I started with Cursive and eventually moved to emacs w/CIDER as I became more comfortable with it. Cursive is great for people new to the language who may not know emacs - learning a new language is challenging enough without also having to constantly refer to an emacs cheat sheet :).
FWIW Cursive is also great for people who have a lot of experience with Emacs and just can't be bothered with it. Popular examples include David Nolen and Timothy Baldridge (and me), but there are plenty more too.
One representative comment that someone made to me at a conference was along the lines of "Since my boss encouraged us to move to Emacs, I've never spent so long fiddling with and arguing about my editor config. After a while most of us moved to Cursive and all that just went away".
I think Emacs is generally easier to get along with these days, but it'll never be as easy to use as a "normal" app where things just work out of the box. Some people like that, and others don't, but it's not as simple as a division between newbies and experienced users. They're roughly equivalent in power these days, some things Emacs does better and others Cursive does better - fortunately there's plenty of room for both, even in a userbase as small as Clojure's.
A lot of people use Emacs, but I remember as Cursive took off in the Clojure community. It's so wonderful being able to work on a large JVM app that includes Scala and Java in IntelliJ and have first class Clojure features. Cursive is phenomenal, and because it's (or was at the time) the only choice, I would gladly fork over 2x the cost out of my own pocket (though my company would let me expense). It was great too to go to Conj and major Clojure conferences and hear Colin announce new features and talk about the roadmap.
My team is mixed. We have two devs using Cursive, one using Atom, one using vim and then two using emacs. The two devs using Cursive love IntelliJ and being able to work in IntelliJ and do Clojure development is a big win for them
I think that marketing is one of the main advantages of selling into a very niche market - I really do no explicit marketing at all. I've spoken at various Clojure conferences, appeared on Clojure-related podcasts etc but I've never run a single ad for Cursive. Just by being active in the community (which I would do anyway, it's just part of my job) people hear about it, and it doesn't take much SEO for Cursive's website to appear when someone searches for "Clojure IDE".
Re: sales tax, it is indeed mind-bogglingly complex these days, and really requires using a provider who handles it for you. This is Stripe's biggest limitation and the single reason I'm not using them. I use Paddle, who I've mostly been very happy with. If I were really dead set on using Stripe I'd have to use it in conjunction with something like Taxamo, but that looks like a hassle I don't need and would be more expensive than what I'm paying Paddle now anyway.
I found marketing difficult, because I don't know many potential users from my direct network. I'm doing content marketing. But most people are interested in the content itself, other than the product. The conversion rate is a bit low.
The work is a mix of fun and boring slog, like most jobs I guess. A lot of my time is spent on support, both technical and sales, so when I work less I actually end up getting more frustrated because a higher percentage of the work is not as fun as writing new features. I've also had a bad year of having to work around IntelliJ bugs, but normally I like the actual development work a lot. I have friendly enthusiastic users who constantly make my day. It's a pretty sweet gig, and being able to decide how I spend my time, and which bits of my time I spend working, is priceless.
I got started during a sabbatical from my last job, just building something that I wanted myself. It turns out that lots of other people wanted it too.