119 comments

[ 2.8 ms ] story [ 167 ms ] thread
I just build things for myself, and I am part of the smaller market.
I tend to target niche markets because the odds of me succeeding are much higher. It's much easier to be the best of a small niche and like the article said everything happens on a smaller scale, so less risk. Most the wealthy people I personally know made their money from owning a small niche.
It's easi(er) to own a niche market, but it's also more likely that anyone decently positioned to compete with you can wipe out your profits with small changes to their product or pricing strategy

Not all niche markets are small in terms of revenue/cost either: there are product niches worth millions (or even billions) whose actual feasible customer set barely makes it into double digits. But when the niche is that small in terms of customers you find that despite the lack of threat from competitors it's actually the customer that owns the niche....

That is true, but something else to focus on: with smaller niches, the learning that takes place is often much higher and faster, and that is invaluable too.

My app is the absolute niche of niche ( https://play.google.com/store/apps/details?id=com.pauldavids... ), but I learned A LOT, especially about the official Android publishing process. I don't care if it doesn't get used by many people, because my target market was literally 1 person: my girlfriend.

In addition, the process of making this app was fun. Learning AND fun; a goal that ALL of us here are striving for, right?

I think most people building products (as opposed to OSS) are striving for profitability.
I once spent an entire month developing a very niche product. I figured about 100 people would be interested in it. Turned out only 11 were. :) I earned no money, gained no fame. Still i am happy i did it. It was challenging enough be fun. Sometimes challenge is all we need.

I don't think your product has a tiny market. Everybody uses regex and nobody actually understands it.

I love niche products. The popularity of "things for everyone" (like iPhone/Galaxy) somewhat worries me.
Checked out the debuggex tool. Impressive!
Will you be charging for this?
Yes, I am planning to monetize. I have a few ideas for to do that as it approaches the end of beta, but I'd love to hear any suggestions you have.
You've got a really targeted and engaged base of returning users. You could add a text link to a product or service for hackers with an affiliate link, you'd probably get pretty high conversions with this audience.
I honestly found it to be wonky and not useful, but I am an experienced programmer who knows how to use regex.
It would be interesting to do a SaaS play and charge on a monthly basis, with all updates available to all users. And then allow some (very basic AND time-limited) use by free users, only for trial purposes (not freemium).
I don't think a visual regex debugger is a tiny market- it's every programmer who doesn't totally understand regex, or who will have regex that he needs help decoding. This is probably close to 99% of programmers.
I think his point is the market overall.

Yes it's a huge share of programmers, I'd say 80-90% for your first example 95%+ for your second. But compare that market to the market for Dropbox, or AirBnB, or Amazon.

If you're market is "programmers" it's already a pretty minute fraction of the general population.

Yes, but: I can't remember the last time u wrote a comes reflex. I've since learned to use an xpath parser, for example.
The problem is monetizing a small-market product, esp. an online product. If you go the advertising route, you have to get your page views _way_ up to earn anything; you can't do that with just one little server. If you go the subscription route, pricing is really tricky. If you charge just a little, in my personal experience a) most programmers won't pay anything, so you lose most of your market right there, and b) you'll go broke collecting a pittance from the few who will pay.
It feels like this is the quintessential "feature, not product" startup. The goal of these should be either:

A. to acquire a huge customer base and then pivot into satisfying them with a larger "suite" offering which includes your original service as a feature,

or B. to be acquired by another company with a huge customer base... and then integrate your feature into their suite. :)

I could see, for example, Github buying this (and other things like it) and launching a featureful, language-agnostic online IDE that compiles against Travis-CI.

Why? Because you don't need to make 1 cent off each tomato sold in USA to be successful. Even taking a cut of every water pump of a certain car is more then enough--for most of us.
i can not say the same about my product http://onetimepost.com/ ... but it only took me a Saturday morning so ... it wasn't like something huge was lost xD
well, how did you market it? looks pretty neat to me.
shared the link on some few powerful websites like this .... truth is, very few people has an immediate need for that.
That's one awesome regex debugger!

Going after such a small niche is a great idea as long as you know that the market is big enough to provide good ROI in both percentage and nominal terms.

I don't think the worry from a competitor "adding a feature and crushing you" is a very likely threat. As long as you can stick it out for a few years to build a brand name and continue to keep in front of the indefinite stream of people learning regex you should be fine.

(comment deleted)
Very cool! Two suggestions: show the examples more prominently (and my add a regex for email, cause it looks cool), and allow people to link to specific regexes.
(comment deleted)
Good: The top left logo on your blog links to your website.

Bad: The first and last mention of Debuggex in the body text should be a link to your product.

This was somewhat intentional. I had a larger plug at the beginning initially. I decided it did not seem genuine enough, and would take away from the content.
You are clearly genuine, but also a little naive business wise.

Please give this a read and let me know where the right place to link is, if not here.

1. You are giving me quality content about your business experiences and decisions.

2. You are giving me this information on a blog supporting a product which, by the way you've crafted the blog post, seems likely to be professional and loved.

3. I'm a person who makes and uses regexps, a HN reader and I want to check out the product. I want to do this easily. The web uses links to do this. You've earned the right to link. It is exactly when you should. It is directly relevant and it is in "your home".

If you are in business, this is why you wrote the blog post. You've got me right where you want me. I'm interested and I have money. Make the path between "he should have my money" and "he has my money" as easy as possible. Link.

Let me use a crude dating analogy:

1. Meet interesting person.

2. Invite person to dinner.

3. Groom, clean, prepare, cook, present, share dinner.

4. Goes well, clicks, everyone is interested.

5. Interesting person leans in for kiss.

6. You back away, saying the kiss would take away from the lovely evening.

The kiss, and the relationship it hints at, is the point of the evening.

And since I see the horse, while on the ground, is still kicking somewhat and not all the way dead:

You are in business or you are not. If you are, know this and live by it:

Do the prep work, then ask, ask, ask. The worst that happens is no.

You've got a great product. Good luck.

Ok, I am convinced. I'll add the links :)
Anecdotal confirmation: I probably wouldn't have clicked through (or found it) if the only link was the blog image - despite the first thing I did being to look for the link to the product. (Which is great, and might replace my current 'go-to' for this!)
Interestingly, it seems like a lot of this is essentially a generalization of the advantages of B2B.
Interesting perspective. And regarding debuggex.com itself... Awesome. I'll be using it in the future. Nice work.
I'm in the same boat - building something I really want to build and use myself, not really caring much about product-market fit or any of that other stuff.
That's a really cool little tool, and I think you're building a very lucrative audience.
Side note about debuggex.com itself: The "Phone Number" example is a bad idea. Please either remove it or otherwise relabel it to warn against using it.

Rationale: Almost everywhere in the world outside of US and Canada, phone numbers do not look like that, and interacting with websites that assume they do is frustrating. Even USians or Canadians may want to enter a phone number with an extension, which would get rejected by that regular expression (a colleague of mine got frustrated to no end by websites and bureaucracy assuming the 3-3-4 style of phone numbers when she moved to Canada, because she prefers not to use a cell phone too much, and her work number has an extension).

Ah good point. I thought I had labeled it "US Phone Number" at one point. I'll try to find another example of similar difficulty.
I fed it a favorite regex... Bravo. Unfortunately, the permalinking fails with this particular regex, or I'd include it here. The visualization is so large, it more than fills my large screen. Still, pretty cool to see it render instantaneously and to watch it match example text. The regex is described here: http://www.cs.sfu.ca/~cameron/REX.html It will match either text or XML markup (it's used to tokenize XML), so try example text like '<div id="123">abc' or 'abc<?xml target?>'.

The JavaScript form of the regex follows: [^<]+|<(!(--([^-]-([^-][^-]-)->?)?|\[CDATA\[([^]]]([^]]+])]+([^]>][^]]]([^]]+])]+)>)?|DOCTYPE([ \n\t\r]+([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F])([ \n\t\r]+(([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F])|"[^"]"|'[^']'))([ \n\t\r]+)?(\[(<(!(--[^-]-([^-][^-]-)->|[^-]([^]"'><]+|"[^"]"|'[^']')>)|\?([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F])(\?>|[\n\r\t ][^?]\?+([^>?][^?]\?+)>))|%([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F]);|[ \n\t\r]+)]([ \n\t\r]+)?)?>?)?)?|\?(([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F])(\?>|[\n\r\t ][^?]\?+([^>?][^?]\?+)>)?)?|/(([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F])([ \n\t\r]+)?>?)?|(([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F])([ \n\t\r]+([A-Za-z_:]|[^\x00-\x7F])([A-Za-z0-9_:.-]|[^\x00-\x7F])([ \n\t\r]+)?=([ \n\t\r]+)?("[^<"]"|'[^<']'))*([ \n\t\r]+)?/?>?)?)

The permalinking is very rudimentary and was put up quickly so that it worked for "most cases". I wanted to focus on building the actual debugger. This will be fixed in the near future.
Op, have demonstrated your expertise. Nicely done. Thanks jdnier for the example.
Wow. How the hell do you (OP) get it to render so fast? That was instantaneous as far as I could tell. I've seen websites take 5x as long to add a <li> to a <ul> ... I'm really amazed.
Heh, your browser does most of the hard stuff :) I'm not quite sure what others are doing that it's slow.
You're not kidding; it is virtually instantaneous in Chrome, IE9 & Firefox.
I'm stunned. I was expecting it to chug with something like that, but nope, instant.
Perhaps it has something to do with using SVG rather than just HTML elements?
Even on my AMD E-450 netbook, that was pretty much instant. Lagged a lot afterwards (to be expected, running FF on elementary Luna), but way better than I thought it would! Well done OP, seriously well done.
Sometimes building an excellent product or service in a tiny niche can also result in that tiny niche becoming bigger (by either a little or a lot). The MP3 player market was relatively tiny until the iPod blew it apart, ditto for tablets and the iPad, but I'm sure there are more niche examples.