Godaddy Broke Full Path Domain Forwarding

Did GoDaddy’s recent (June 2018) change to their domain forwarding service break your paths? This happened to a few of our domains as well, and we were PISSED!

Before you transfer your domains to a “better” registrar, or follow their offial (and terrible) response to spend more money and upgrade to their hosting plan, then modify some of the hosting files, and sacrafice a small animal, know that there is a solution that requires almost no work on your part! And you can test it out for FREE!

A very simple domain forwarding service to help get your domains back on their feet after months of downtime.

Its super easy to use, and only costs $9 per domain per month after your 2 week free trial.

Using NavHere.com to Forward your Domain from GoDaddy

We are going to assume you are trying to forward blog.example.com to example.com/blog/.

  1. Go to navhere.com and sign up.
  2. Add the domain you want to forward.
  3. Click the checkbox for “Domain Forwarding”
  4. Set the Forwarding Base Path to “example.com/blog/
  5. Go to your GoDaddy DNS
    1. Create a new CName Record for “random_characters.blog.example.com” (don’t include “.example.com”) and point it to “random_characters.redirect.navhere.com”
    2. Create a new A Record “blog.example.com” (again, don’t include “.example.com” in the textbox) and point it to “104.248.108.148”
  6. Give GoDaddy a few minutes to propagate your DNS changes around.
  7. Go back to your domain in NavHere and click “Verify”
  8. That’s It! You have a free 2 week trial period to test it.
  9. Click the “Renew” button on your domain to add another year of redirections for only $9

If you have any issues:

Email support@navhere.com with any questions, comments, concerns, or just to talk. We get lonely some times, too!

Why We Built NavHere.com

My buddy Austin and I relied heavily on GoDaddy’s full-path domain forwarding and regular domain forwarding.

I used it to point various old sites to my own personal blog, and Austin used it to redirect his personal site to his work site.

One day one of Austin’s old and reliable links stopped working, and was coming up with a message from GoDaddy stating that nothing was wrong on their end, so the short link must be expired. The only problem was Austin wasn’t using a short link.

After he reached out to GoDaddy support, it turns out that they had removed full-path domain forwarding in order to add short linking, but worst of all, they never told anyone about it.

I suggested that he get a droplet from Digital Ocean and host a redirector, but he felt that it was overkill and said, if we are having this problem, I’m sure plenty of other people are, maybe we should build a small web app, that does full-path redirection and short linking, since GoDaddy thinks those two products are comletely incompatible.

Within a few hours I had a prototype of the redirector built to handle the redirections of my main site. Then, it took a couple more weeks to build out the front end of the website, and multiple iterations of the MongoDB layout to get it performing the way it should – turns out you don’t want to have an array of 80k sub documents.

But now we are ready to show the world NavHere.com - Simply Domain Redirection

An Ode to the Traffic Circle

The US is only just starting to get round abouts (AKA Traffic Circles). I think traffic circles can be a great thing, but in my experience, most aren’t done as efficiently as they could be.

I drive through 4 traffic circles on my drive home each evening, and here are some observations I’ve noticed.

Size Matters

The larger it is, the more opportunity a driver has to get to an internal lane and not destroy on-ramping from other directions. Also the timidness of drivers to enter a circle kills the flow and causes a backup that takes time to clear.

Of the 4 traffic circles I drive through, two of them are only a single lane wide and only about 100 feet wide, the other two are much larger and have 2 and 3 lanes.

The narrow ones [1] back up much quicker during rush hour(s) especially when you have non-commuters using them (you can tell who they are).

A Minimum of 2 Lanes, but 3 is LOADS Better

The one that is only two lanes [2] backs up quite a bit during rush hour, when there is a West Point football game, or because someone is too scared to enter. The backup clears relatively quickly, but I feel it wouldn’t back up at all if there was protected on-ramp.

Protected Entrances and Exits Increase Flow

The one that is 3 lanes wide [3] usually (when people don’t cross solid white lines illegally) has a protected lane for only going to the first exit (directly on then off), then an inside lane that circles the entire roundabout and a middle lane that allows you to exit at any of the exits whenever you want. It works very well. I have never seen a backup on it.

  1. Google Maps
  2. Google Maps
  3. Google Maps

Why I Chose Micro.blog

I was talking to a buddy about the fact that I plan on moving my blog from a self-hosted WordPress.org to Micro.blog, and he asked: Why? And why not Medium or WordPress.com?

The simple answer is that I want to support the product builder community.

WordPress.com (and .org) has come a VERY long way from the days when it was just Matt building a kick-ass blogging platform, and as such, it has out grown my needs (a simple blog host that makes it easy to write content on the occasions I feel like writing content).

Don’t get me wrong, WordPress is an amazing platform and a phenomenal feat of engineering, it just isn’t the simple fast blog platform it used to be. For instance, my self-hosted WordPress costs $40/Mo because of the memory and CPU requirements on the occasional high traffic day (which is honestly only about 20-30k views).

As for Medium, it’s more principled. Every time you open an article, they pop up a sign in/up dialog that you must dismiss. Plain and simple.

What’s Next?

I eventually need to pull over my content and forward my domain. And THAT terrifies me. That website has been alive for years and years. URLs are going to change, I will need to ensure that they persist and redirect.

Thankfully, I’m building a product for that :).

fman.io - File Management Just Got Sexy

In this second installment of OPP, I’m looking at a product that blew up out of nowhere about 2 weeks ago on product hunt (selfless self plug warning - actually on my birthday). Yes, that’s right, I’m looking at you fman!

I had a short exchange with the developer/genius behind fman, Michael Herrmann, about where it came from, where he feels it is going, and why he has closed off access to the product on an invite-only basis.

1) Why did you decide to build fman? Was it a personal need, or just something fun?

Personal need: When I switched to Mac after 20 years on Windows, I missed Total Commander. There simply wasn’t a good alternative to it on Mac. But also TC is showing its age when it comes to user interface or plugin system. That’s why (after some more thorough market research) I decided to build fman.

2) Did you model the UI off of anything? I noticed it looks like a lot of file transfer utilities.

In terms of colours, fman uses a theme called Monokai. It was originally created for TextMate, but was later made popular by Sublime Text.

The dual-pane layout is pretty standard for such file managers. Other than that, I try to just keep the UI as clean and bloat-free as possible.

3) You have AMASSED a large cult following of techies pretty quickly, was this your intended target audience?

Yes, techies (more generally power users / programmers) are absolutely my target audience. I too was surprised by how fman’s user base has exploded. You never know in advance when you spend a year building something before you launch it. I’m glad it turned out that way.

4) How did you settle on a pricing model? The private paid, invite-only artificial demand structure for your launch seemed to work out very well.

Actually, the invite-only part is not a general feature of fman’s pricing model. It’s just a temporary solution to let me cope with demand. I want licensed users to have an awesome experience, so I really go the extra mile to make them happy. But I can only do that for so many people. That’s why licenses are (currently) invite-only. I’m actually very glad I chose that route, because I’m still finding it hard to keep up with demand.

5) Where do you see fman in 6 months? A year?

I see fman having many thousands more users and hundreds of plugins. I’m hoping to build a community, which will help make fman more well-known.

6) Do you have a day job? If so, what is it?

No, I’m working on fman full-time. I do have previous projects that provide me with some (mostly) passive income.

7) Are there any clear competitors (side-by-side folder/file view), and why would people use your file manager instead?

Sure, a thorough market research I conducted turned up 97 competing products. People use fman instead because it brings recent innovations from the text editor niche to file managers, is cross-platform and has a vibrant plugin ecosystem.

8) How many users do you currently have? Free? Paid?

fman was downloaded a little over 10,000 times in the last 10 days. The first 100 licenses were made available two weeks ago and sold out within two days. I’ve been gradually making extra licenses available and am currently at 168 paying users. 257 more people are on the waiting list to get a license.

9) Are you currently tracking your conversions? Are you doing or plan on doing any type of marketing?

I’m not tracking conversions. This here is marketing, isn’t it? ;-)

10) Now that you have been live for a little bit, what is your most requested new feature?

(S)FTP support. It has been for a while.


Bottom line is that fman brings file management into the modern age. It is beautiful, fast, and has a plugin architecture that will keep it relevant for many more years.

I look forward to my invite, and hope all the best for Michael and fman.

Validating Your Ideas on Strangers

One of my favorite ways to truly validate an idea is at a bar… on strangers.

I “discovered” this a few years ago when I was still new to NYC, and since then have used this amazing technique half a dozen times.

It was a slow Saturday, but we had a soft launch happening, and the developer was running a tad behind. I met with the project owner at a dive bar around 50th and 3rd. We were sitting there, complaining about not having launched this site 4 days before and drinking.

About an hour in, a designer broke in to our conversation, apologizing profusely, to ask for our opinions on a couple variations on some rebranding project he was presenting on Monday.

He showed us probably close to 10 different designs, of which a few were stinkers (and he knew it), but one was amazing and another was a decent second choice.

Seeing how ballsy this guy was to interrupt a couple of people having a private, albeit very loud, conversation and ask us for our free and completely unbiased advice opened my eyes.

Even as recently as just earlier this week, I was at a bar, with a buddy, spit-balling fun projects to do during downtime, when a simple Twilio app I have wanted to do came back to me.

I’ve called it “Talking with Strangers,” but essentially it is just a website, you sign up with your Facebook account, and put in your phone number. Cell phone, land line, pay phone, who cares. You then are able to call into the “Talking with Strangers” hotline, which will ring out to a random group of members to the site. The first one to pick up is connected with you. If you are enjoying the conversation, you hit star, if you want to be reconnected with someone new, hit pound/hash. If both people star the other, your Facebook profiles are shared to each-other.

I popped over to the table behind me, with my phone as a prop, and my best used-car-salesman enthusiasm, and started pitching.

Their reaction was notably disturbed! I apologized, saying I had a pitch coming up, and would really like their opinions.

Well, they were much more negative toward my idea than I thought they would be!

"It's just going to be guys acting creepy toward women. Hey baby, what are you wearing?" - The female perspective. "Yeah, there needs to be some sort of screening process." - The previously excited boyfriend who only now realized the downside.
  1. I took their advice to heart. Sat back down with my buddy, and we brainstormed how to overcome the issues they had.
  2. House rules you agree to on sign up (don't be a creep, dont be an asshole, treat everyone with respect unless they have been a creep/asshole).
  3. Minimum Facebook account age.
  4. When you hit pound it asks why. press 1 for creep, 2 for asshole, etc; 0 or # no reason.
  5. If you have been reported x% of calls, your Facebook and phone number are banned on the service.

Five minutes later or so, I went to a completely different table, asked this other group of strangers. I pitched the new and improved idea. A markedly better response.

This is the same technique that countless large companies do every day. Focus grouping. The only real difference is it is FREE. Oh, and you get a faster response, iterate, response.

Get out to your local bar and start pitching your ideas! Just don’t get so schlammered(TM) you forget your feedback… or your product.

I'm Down with OPP (Other People's Projects) - Metric Board

Since my accidental blog post two months ago, I have been approached by quite a few individuals wanting either product validation or just a few tips on how to better transition their side-project into a full-fledged product offering. This has led to me trying out dozens of SaaS offerings and seeing so many great ideas, that I decided I will start blogging about the ones that I feel are the most likely to succeed, or just plain cool. This will be the first kickoff in an irregular series of posts about my favorites.

For those of you who got the reference to Naughty By Nature's song OPP, I actually have a not-so-interesting anecdote about the front-man Anthony Criss A.K.A. Treach. When my wife and I first moved to the NYC area a couple of years ago, she found a part time gig tutoring school children, and one of them was actually Criss's son. My wife said he was an adorable child who was very bright. I told you it wasn't interesting. Now back to the post you actually wanted to read.

In this inaugural post, I would like to present Wouter Houweling’s side project MetricBoard.io.

Houweling came to me back in September a few days after my post went “viral” on Hacker News, leading to just under 100,000 views of that post. He told me that Metric Board was originally built to “scratch [his] own itch,” as most other analytics software was much to complex. He told me he had a handful of non-paying customers, but was looking to monetize the platform.

There were concerns that the offering might be too simplistic for a market that was filled with feature-rich analytics software. Houweling knew for smaller companies Metric Board was a simpler start, but before he wanted to invest any time in building out the billing and marketing strategy, he really wanted to validate the product.

That is where my team and I came in. We signed up for the product, took a look around at everything, and came back with a couple of recommendations. Having built products in a similar space before (email marketing analytics), I knew some of the challenges going in, and could spot a few things right off the bat.

The Product

I told Houweling that the product he had created fit a specific niche, and that trying to add all of the features of the bigger paid analytics providers was going to be nearly impossible on his own. Even if he succeeded at it, he would be just one in a crowd of other services, fighting for customers.

I instead told him that his product “is so simple to use that it is perfect for people who have side projects.”

But that lead to the main issue with his product.

Pricing

With a simplistic offering such as Metric Board, its almost as easy to add analytics directly into your application. A few extra database tables and you are done. This “perfect fit” for developers is also a problem as “they don’t typically want to spend money unless it solves a problem they can’t easily.”

Houweling had also priced everything in Euros. Which, if your market is the European Union, there is nothing wrong with that. But I was pretty sure his market was global. So a little bit of advice I gave (as a confused American):

Everyone in the world buys services from companies in the US, so everyone is familiar with USD. And us Americans are very confused by Euros and Pounds ;).

Documentation

As this is a product more for developers than for small businesses directly, Metric Board has documentation. Its a little sparse, but it gets most of the job done. With a background in web development, even I was a little confused by some of the types of integrations.

Update your documentation to cover any type of insert you want to do, and match the input with the screenshots, because right now just from reading it, I’m unsure if when I pass a metric value in, [if it is] additive, or does that set the value for today (or this minute, this upload, etc).

This documentation will also need to be updated if (hopefully when) he adds in the new feature requests I have made.

Additional Features

To combat the feeling that his offering is too simplistic, I suggested that Houweling adds a couple of features that would put him closer to the big guys, but still comfortably near the roots of the product.

While keeping everything simple, I requested that there be a new API call to upload unstructured user data (while requiring an email), and capturing metrics for that user.

Then your dashboard can have information broken down by any values you pass into the user object, making the data a little more informative.

It also would set him up for the worst case (sometimes the best case in retrospect) of product development, the need to pivot.

Pivoting

What you will notice when you add this extra user information, is if you need to pivot to become more valuable, you have opened up the ability to market to the users on behalf of your customers (intercom.io or customer.io but simpler, thus better).

This is actually how an internal tool I created at Humankind to track user stats ended up turning into our marketing platform.

Conclusion

Metric Board is a very simple analytics as a service platform. It has a lot of room to grow in the coming years, but the offering is actually very valuable.

If you have a product you would like my team to look into, you can shoot us an email at hello@jeremyaboyd.com. You just might end up on the next installment of Other Peoples Projects.

That Time I Brought Down Millions of WordPress Sites

I’m going to take you guys back to a time when I was doing some client work.

I was at the time working on becoming a somebody in the WP Dev community. I attached myself to a really awesome designer George Wiscombe, and started working on a theme he designed called Handgloves. I began by widgetizing it (which was just starting to catch on – that probably dates me a little) then added a couple of built in social media hooks. I emailed him and told him I was working on it, and he released my changes, and because he is an AWESOME dude, gave me a byline on it.

We (Humankind) had a client that wanted a WordPress Multi-User (yep, before multi-site – dating myself yet again) installation for their interior design network, with an asset catalog that lived under the main root, but all the designers’ sites as sub-domains. We ran into a little problem, Handgloves used TimThumb, and TimThumb’s wordpress implementation at the time had a small problem. It was hard-coded to use only the local uploads folder by prepending the website URL to the uploads directory, then appending the image name.

I decided to do a quick fix for this, and post it up on my old personal blog. I allowed you to pass either the image name or a full URL with schema. If a full URL was passed, it would download the image locally into your uploads folder.

Problem Solved! (Or So I thought)

I posted my change up to Binary Moon, linking back to my personal blog, with a small caveat - “I haven’t tested this, and there are probably gaping holes in it.”

Within a week, my blog was seeing a few hundred hits per day all for TimThumb, and that was awesome. I think my change was eventually merged into the main TimThumb library, since my traffic died down after a few months (I don’t know that for a fact).

The client had eventually decided that in order to preserve backlink juice, the site shouldn’t have sub-domains, but live under sub-folders, and I forgot about TimThumb for the time being.

Many Months (or a Year?) Later

That gaping hole that I warned might be in my super shitty code… Well, there it was. Millions of sites had been affected.

The exploit used my cross-domain TimThumb (which had already been patched by that time, but who actually downloads new versions of PHP scripts?) to download php scripts from other websites and thanks to my addition to the code, would store them locally in the uploads directory.

So a hacker would find a website using TimThumb, then make the request to grab their remote PHP script. Once TimThumb downloaded and stored the script, the hacker would then execute their PHP script and would then own the site. Having an up-to-date WordPress, TimThumb or basic permission settings on the uploads folder would have prevented every one of the attacks, but that is the nature of the internet. No one ever patches their servers, and random people who download a script, never sign up for notifications of new versions or anything.

Many millions of websites were effected by this, and once Google found the exploit, they started blocking most sites that could be hijacked like this from search results and from the Chrome browser.

And that was how I brought down millions of websites.

Have you ever had such a negative impact on such a large scale before? Leave a comment!

My First Product Launches

A few people have asked me to discuss my product launches, and I have been hesitant to do it in a public light. Not because they aren’t good launches, but because most of my life was spent in industries I didn’t like, but was just really good at. In this post, I will talk about my first side project launch and my first product launch for a paying job, both couldn’t be more different in expectations or outcome.

AdTools - A Craigslist ad analytics platform

This was my first baby. When I was 18 years old (way back in 2006), before the crash of 2008’s first rumblings in January of 2007, I had a fledgling VPS hosing service. I would advertise it on Craigslist in various cities and wait for emails to roll in.

I would get an few emails a day for more information and pricing, and probably one new customer per month. Not knowing how many people were viewing my ads, I decided to build a little web site for myself using ASP.Net Web Forms.

The tool was called, very creatively, AdTools, and I just hosted on my Windows Server 2003 box I had from CoreNetworks using sub domain off my personal domain so that I didn’t have to find a new domain name (I was cheap). It was the simplest website I could create do what I needed and hosted in the easiest, cheapest way I could.

There was a login/register form on the index page. When you logged in or registered, you were dumped on a page called “Trackers” which had a form at the top to add a new tracker and a list of trackers underneath it.

To add a new tracker you only needed to give it a description (“VPS Houston 2006-11-12”) and click the submit button. The page would redirect into the tracker details, and the HTML of the tracker would show up at the top of the page.

Way back then, you were still allowed to embed HTML in a craigslist ad, so you would just paste that HTML at the bottom of your ad, and presto, 15 minutes later people were viewing your ad and being tracked using cookies. The tool would allow me to see who had viewed previous trackers, their IP address, User Agent and their (pretty inaccurate) IP Geolocation.

After I started getting more requests for what tracker I was using, I started including a link from the tracker back to my sub domain in all of the new tracker HTML code. I was 18 and I didn’t think such a simple tool would ever make any money, so I just wanted to get rid of all of these people distracting me from my VPS sales.

My VPS sales peaked in January of 2007 before taking a nose-dive from around 20 customers to 2 by March. And one of the 2 was on a pay me what you can plan. When I lost my last real paying customer in June, I realized that something was up. No one was replying to my ads for cheap VPSs and I had dropped the pricing from $30/mo to only $10 which would only cover the cost of my server if I filled it.

At the time, I didn’t realize this was the first signs of the housing bubble popping. My full-time job was still going strong, so I stopped posting Craigslist ads and just did my day job. About a month later, I left that job for one closer to home. My father had just be diagnosed with throat cancer (DON’T SMOKE KIDS!), and if anything were to happen, I didn’t want to be a 2-3 hour commute from him. So I took a local job at a school district working in the IT department. I learned a lot more about infrastructure and managing servers than I did as a developer, so that was beneficial, but the politics of the job got to me, and eventually I quit to consult full time.

I started posting ads in Craigslist again for web development work, and started including my trackers on each of those posts as well. I got enough work to keep paying the bills, but I knew I needed steady work and started searching for my whale of a client.

Skip forward about three years or so, and I am working for my whale that ended up hiring me full time. I was just about to decommission my server at CoreNetworks as I didn’t do much consulting, my personal site was now on a WordPress blog and I hadn’t used my ad trackers in a few years.

First I pop open the database so I can pull the email addresses of everyone using the service to let them know I would be shutting it down, and that is when I saw I had over a thousand users half of which were active with more than 10,000 trackers having been created in the last 6 months and over 150,000 ad views having happened in only the last month.

I realize a thousand users isn’t much, but when MY ads had only been in the Houston, Dallas and Austin areas, and they spread from my little VPS and Web Development ads (each only receiving twenty or so viewers), it felt like magic. By this time in my career, I had created many websites that received hundreds of thousands of page-views a day and had tens of thousands of dollars in recurring revenue, but none of them were as simple to build or as featureless as this, and none of them got to all of those users without extensive marketing campaigns (either grass roots in forums or paid ads).

This tool was a success. I reached out to my most active of users asking them what features they wish it had, if they were willing to upgrade to a premium plan and how much they would be willing to pay, and I received no response. It wouldn’t have mattered anyway, I would have had to rebuild it from scratch and at the time I didn’t have well time to build something the right way to be proud enough to monetize it, so I let it keep going for a couple more years costing me $56.35/mo until Craigslist banned all HTML. When I shut it down in late-2011, the service had just under 2000 users and almost 100,000 trackers since its conception.

It was a sad day when I shut it down, but it lived out its usefulness, and besides, I had bigger things I was working on.

Linklicious - The first commercial back link pinging service

This was my first big product I conceptualized, developed, launched and successfully monetized. It was also the most copied product that I have ever made. It was so successful, the company I worked fro stopped taking on client work and focused completely on making new products. My job had become 4 blocks of 20% time and 1 block of actual maintenance and support. It was EXCITING.

I don’t want to get ahead of myself, so I will take you on a magical journey back to November of 2010 (One year prior to me shutting down AdTools). My company had been going through a restructuring phase since May when we lost our largest client. During this time, we had to let go a project manager, two developers and our Michael.

The team was down to myself, Mary Rolandelli and the owner. We had a few clients left, and we were working to maintain their needs while trying to drum up new business. One of our joint-ventures with a Brazilian Jiu Jitsu school was kind of floundering, and we needed to get more traffic. The owner and I took a week off to figure out how to get non-paid traffic. My idea had been through social media and reaching out to people, but the owners idea was much better: Search Engine Optimization.

I know, not that original of an idea, even for 2010, but just wait.

This wasn’t the old school method of “write good content and use H-tags and bold.” This was off-page SEO. Build backlinks by any means necessary. We found a few services out there that automated the backlink building process for a fee of course, and we paid it.

It was helping, not much, but a little bit. We spread our account out over all of our clients, and they all started ticking up in the rankings. And the most important client of all (ourselves) saw marked improvement in the JV with the BJJ school. I think it was a 20-25% increase in recurring revenue, but I might be off a little bit as the JV wasn’t my focus at the time.

We had our backlinks being built for us, but we found out that Google wasn’t finding well over half of them. So tasked with figuring it out, I went to work on a proof of concept based on my blog’s use of Ping-O-Matic, which will let google know to crawl your blog post after you publish it.

I launched a new sub domain, and added a word press blog to it. I then added a redirection plugin that if you visited a post, it would redirect you to the URL of your choice. I set up 100 posts pointing to 100 other pages on domains either I or my boss owned. I then bulk published them and an hour later opened up my server logs. I saw that within seconds of publishing some of the links were already getting crawled. The last of the 100 links was crawled in less than 30 minutes. I then took the next day or two compiling all of the logs from the other sites that were crawled, and I found that they two were crawled within a few minutes of the original page being crawled.

I built the first version of lts.me, which just stood for Long to Short. It was billed as a link shortening service, but instead of building one short link at a time, it could do around 1,000 per second. I then wrote a daemon to submit each link to Ping-O-Matic, and we started submitting out link reports through lts.me.

Once Google started finding more of our links, we were actually able to lower our account at the link building service saving us a few hundred dollars a month, allowing that small uptick in revenue from our JV to pay for the SEO practices.

I added an account system to lts.me and a couple other features like how many links per hour you want to ping, to slow the crawls and not get your site black listed by Google, then we released it for free to the link building service’s support forum.

This application was running on a dual core Intel work station under my desk on Windows 2008 and SQL Server Standard. Within 2 hours it was over heating, so I popped the side panel of and put a box fan in front of it exhausting from it. This kept it going for about 8 more hours and the PC shutoff, and our office was getting dozens of phone calls, all of which were forwarding to my Boss’s cell phone. Since I lived less than a quarter mile from the office, I went in and started profiling the app to fix the issues. In the 10-12 hours since launch we had over a thousand users and two million links fed into the system. So I implemented link limits of only 1,000 per user, which just exploded the user accounts and didn’t slow down the amount of links coming in or what really was killing the service was the number of links going out and google bots coming in.

We bought a GIANT VPS at some unknown VM hosting service recomended on some forum somwhere I found and lost over the last 6 years, with 8 vCPUs, 16GB of RAM, a 500GB RAID-10 hard drive and a 1Gbps un-metered connection. This allowed us to stem the instability for the next few days while I fixed my shitty code (splitting the responsibilities of the application into 2 services, the short-linking service (LTS.me) and the account management system(Linklicious.me - later .co)) but by the end of the weekend, we needed a bigger system. We went with Softlayer after only a few hours of research, 3 servers and a NAS:

  • Database - Dual Quad Core Xeons, 64GB of RAM, 500GB 10k spinning drive
  • Web - Quad Core Xeon, 12GB of RAM, 500GB 10k spinning drive
  • Utility - Same as web

It was overkill for my optimized version of LTS.me, but we knew we would be growing into it within the coming months. I spent the next 2 months working with Mary to design and build out a use-able front end. No more just plain HTML, we went professional. We added payments and paid accounts, and by March of 2011 we were making $40k/mo recurring.

This was the final setup for the next couple of years actually. The only thing that changed was the NAS and RAM amounts. We did eventually, in 2013, switch all of our products over to Microsoft Azure. Well all except for one which we needed the thousands of inbound IP addresses provided by our host.

I have since moved on from this company, but I stand by all of the work I put in to each of the products we launched, including a number of my ideas that didn’t get any traction, but were still used internally to save money.

Lessons Learned?

  1. Put your shitty code on the web.
  2. Tell people about your shitty code.
  3. When people ask you questions about your shitty code, its probably smart to answer them, they might have money.
  4. Never underestimate the need for single purpose easy to use utilities.

If you have shitty code you would like to discuss or get feedback on, you can always reach out to me via email (hello@jeremyaboyd.com).

Tips for Getting Strangers to Give You Money for Your Projects

This is a requested follow-up from my previous post about monetizing your side project.

Your first customer is never as hard as you think. Every first customer I ever received astounded me, because I didn’t even know they needed the product and I knew the person intimately.

From my childhood lemonade stand to the backlink building software I built at HKSEO, my first customer was always someone I knew personally. This was always a boost to my self-esteem, but I don’t have enough friends, family or colleagues to support me through buying the various products I have, so I had to find strangers!

In this post I will tell you how I found strangers to give me money.

Industry Related Open Forums

Open forums allow anyone to register and post topics or stories. Hacker News is the primary source of traffic for this blog.

I have used this strategy to get the first users of a number of services and products in the internet marketing and search engine optimization industries. A lot of these forums do not allow you to post about paid services outside of special sub forums that cost money.

Find your industry’s most open and accepting community, and tell them about your product or service and ask for their opinions. This isn’t a particularly effective way to reach mass-appeal, but you might gain a paying customer or two and a lot of valuable insight, and both of those are equally important to an early-stage product.

Word of Mouth

Word of Mouth is how most businesses get their customers (especially knowledge related businesses, like consultancies). Impress a client or customer, and eventually someone you worked with will switch jobs and recommend your product or service to their new company. The same phenomenon happens when an acquaintance discusses your project with a coworker or a friend who may need this product.

Social Media

We discussed forums above, and if you think about it, they are a form of social media, and the Twitters, LinkedIns, and Facebooks of the world are just giant forums with a slightly different user interfaces. Regardless, Twitter, Facebook, LinkedIn, Reddit, Google+, etc. are great places to find your customer.

Twitter, Facebook, and LinkedIn have great virality when it comes to spreading ideas and information. You just need to get a page up there, share it will your friends, and a 2nd or 3rd degree connection WILL find it. You will get less insight than you would on an older forum, but you can use Google Analytics to source the traffic, and watch their “Behavior Flow” (by far one of the best tabs in the GA toolbox) to find out the average path through your software. (i.e., they landed, clicked signup, then left might tell you that your signup page needs to be optimized).

Other “new” social media platforms like Reddit, YouTube, Google+, Tumblr, etc. are all very similar to the old-school forums. Find a “Sub” or “Group” that you can talk to about your idea and get the information you need.

Paid Customer Acquisition

This is how the big guys do it, and it isn’t as out of reach as you think. Facebook, Twitter, and Google all have EXCELLENT advertising platforms. My preferred platform is Facebook Ads, and while a lot of people say they aren’t worth the pixels they are printed on, I have had pretty decent luck when running my ads.

For my clients, I have sold, tee-shirts, training and software over Facebook. Tee-shirts was easy, but the most time-consuming, you have to design many, many tee-shirts to get any of them to sell. Training and software took tweaking the audience a little bit, but eventually when you dial in on the right audience, you can get qualified customers for as little as $1.50.

While it isn’t rocket science, you will usually have to spend a little bit of money getting the campaign off the ground and tweak it until you get the performance you want. As with most advertising platforms your CPA (cost per action) goes up the narrower your demographic selection is. This isn’t really a problem, though, because you will receive more qualified traffic that is then more valuable, so the CLTV (customer lifetime value) will be higher, offsetting the higher customer acquisition cost.

Strategies I Chose to Ignore

SEO (search engine optimization) is only a valid strategy if your CLTV is less than the cost of a McDonald’s hamburger. Examples of this are: lead generation, free services that are supported via ads, physical products with a single digit margin, etc.

I worked in SEO for years, and I can say that unless you spend 3 to 4 hours to day keeping up with the rapid changes that Google implements on a daily to weekly basis, you will end up spending more money than it is worth. This is the reason I left the industry and moved to corporate america with advertising budgets in the 7 and 8 figures.

Print Ads are excellent if you have a local, brick and mortar business and you are catering to an older audience and it can be prohibitively expensive if you want to narrow the audience you want to advertise to.

I have used this strategy in conjunction with Facebook Ads to advertise accounting services in a trade magazine ($5k/mo), which did at least pay for itself, because our CLTV was just over $10k. Another client it worked out was in a local parenting magazine ($450/week) for an after school program with a CLTV of just north of $3k.

Print is expensive and you can’t split test it. Your ad goes out, and if it doesn’t convert, you can change the ad for the next printing, but you are out $500-5000 between runs.

Conclusion

Getting your first customer shouldn’t be too difficult if you have a product you have already validated. Most developer and small businesses are afraid to spend money before they have made any. But thanks to the internet the cost to acquire new customers has dropped significantly, so there is much less to be afraid of.

Are there any strategies I didn’t hit on that you would like me to? Put a comment below or send me an email at hello@jeremyaboyd.com.

One Million $1M Ideas

Everyone is capable of an idea worth a million dollars/pounds/euros/yen(?). It will most assuredly never be their first idea, and might not be within their first 1000 ideas. But if you don’t track your ideas, you will never remember or be able to capitalize on them.

Your idea doesn’t have to be original, it doesn’t have to be mind-blowing. It just needs to be an idea you are passionate enough about to see it through to its end. Be that making millions or burying it in a shallow grave along New Jersey side of the Hudson.

Curating a List of Ideas

Write down every idea you have. It be as terrible as a soap that smells like garbage all the way to a machine that is able to turn lead into gold.

SIDE NOTE: I will market either of these products if you make them. I would probably purchase them as well. Honestly, if you make it, let me know!

I have a Trello board with ideas. Each new idea gets a new card. Each card gets a description and a checklist for what I feel the minimally viable product (MVP) is.

Once every month or so if my work at my day job is particularly light, or we have a house-cleaning weekend, I will open my Trello board and pick a random couple of ideas, move them to the planning stage and add some more details to each of the cards.

I will estimate approximate timing for a feature, and spitball with my wife, friends or family members the various features it should have and who might be the target audience.

Validating Your Ideas

Now that you have your MVP features noted and the work planned. You should share your idea with as many people as you can and track their responses. I typically add these as comments on the card on Trello with a thumbs up or down emoji based on their sentiment.

“Whoa, whoa, whoa,” you are saying. I hear you loud and clear. Most people are very secretive about their $1M idea. It’s only natural to fear someone stealing your idea, but I am here to say, 99.999% of the time, they won’t. So if you want to play the made up odds, tell your idea to less than 100,000 people, and you should be fine.

Once you get the initial feedback from friends and family, try to find a few people in your target audience that share the problem you are attempting to solve. Be they smelly people and you have made some type of soap (hopefully not garbage soap) or restaurateurs and you have a SMS based survey platform.

You may be saying, “But Jeremy, what if I don’t have friends, family or know anyone in the industry?” Well then send your idea to me, and my team and I will take a look at it. It may take a little while for one of us to get to it, so please be patient. If you would like a more in-depth response, don't hesitate to contact me so we can put an agreement in place.

This second round of feedback will let you know how on-base you are with your potential customers’ needs. And if they recommend any changes.

Choosing an Idea

Since I am assuming this is all side work, and not your full time job, chose the product that has the best response and you are very passionate about. This is the only way to ensure you get at least an MVP out the door and potentially to customers.

This may not be easy. If you can cut your list of ideas down to just one, then kudos to you. I always have trouble picking my favorite idea for this week, and oftentimes get overwhelmed and don’t do anything.

This is a trick I learned to whittle down my list to only one or two of my best ideas.

  1. Pick up to 5 ideas you like the most. This is way easier than picking just one.
  2. Pick the “Easiest to Do”, the “Most Gratifying to Complete” and the “Most Positively Received”.
  3. Decision Time:
    • Look at your schedule: if you have no time, chose the easiest.
    • Look at your bank: if you are broke, chose the most well received.
    • If neither of those are an issue, chose the most gratifying.

This sometimes takes a day or longer, but it is the easiest way I have found to figure out which project to start with.

Executing the Idea

You now have your idea, you know about how long in hours it will take to deliver at the very least an MVP, and you are ready to start working on it. I will be discussing this in software development terms, but this methodology can be used in anything from creating recipes to building houses, if there is more than 1 step to complete your product, this will work for you. If there is one step or less, please send me an email and a personal, self-addressed, stamped envelope, and I will send you all the cash I have!

Truthfully, this section really deserves a post all to itself. But I will give a high-level, technology-agnostic view of my product development methodology. I may use software terms, but instead of Repository, read Bowl and instead of Database read Cabinet! They mean the same thing… Maybe.

At this point, you should create a new Trello board for your product. Take your checklist from the idea card and create a new card for each of those items. Also create cards for all feature suggestions and changes from your feedback and attach the full comment from the respondent.

My product board is usually set up as a Kanban board with the following lists:

  • New
  • Active
  • In Progress
  • Completed
  • Shipped

Every feature starts off as a card on the New list. As I create the card I do the following.

  1. Add to the description why you want the feature “Richard S. requested because …”
  2. Create a comment for your proposed approach to the solution “Add the user entity to the data repository”
  3. Break the approach into check list of individual tasks
    • Define User Entity Object
    • Create User Table
    • Add Create Method
    • Add Read Method
    • Add Update Method
    • Add Delete Method
    • Add REST endpoint for the User Repository

The card will move to the Active list if I know I will be working on it in the next release cycle (the current sprint in agile terminology).

I will usually pick 4-5 cards out of the queue to make active. This way my sprint is short and my releases are fast. Work on them when I have time, but never leaving a card incomplete once started, as it is hard to pick back up after a week or longer of time off.

Once that task is completed, move the card to the Completed list. Then once each item is completed, test the outcome thoroughly. Then publish!

Once the product is live, test once more. If it comes back as successful, pat yourself on the back and send out an email to everyone who is on your list from the validation stage and anyone you may have picked up elsewhere.

Tricks to Monetize your Side Projects

I was recently commenting on an excellent Show HN for a product called Duet and it was the most karma I have ever received on Hacker News (17 votes in 4 hours), and another respondent said I should write it up as a blog post. So here it is.

This advice can be extrapolated, but it is primarily focused on Duet.

Testing

First and foremost, always, always, always, split test EVERYTHING. You don’t have to get all fancy using systems like Optimizely or anything. Just know your conversions.

At my last job with Humankind/HKSEO I had actually written a split testing engine for ASP.Net MVC so we could try out different landing pages. All it did was chose a different View randomly for new users, then cookie’d the visitor to that page. That cookie would then be reported back on the payment record. That is how we tied visits & views to a specific page (via google analytics) and the conversions.

Even this amount of testing and coding isn’t required though, you could always know the date and time you pushed a new version of the page and track visits/conversions from then until you replaced it with the next test.

On-boarding

Without a doubt, you should be on-boarding your new customers/users, especially if you offer a free demo. You need to CONSTANTLY be in front of them, it is the only way to get them to install, use and then eventually buy your product. If there is anything that requires work after a purchase, you need to insure they are set up for success.

Here is an example sequence of emails that took our free trial users from $0 to $80 CLTV on a $15 product.

  • Immediately: Thank you for signing up for {Product Name}. - A very impersonal "transactional" email
  • 1 Hour: It's Jeremy from {ProductName} - A very personal email introducing myself and walking them through the benefits of the product
  • Day 2 (if they haven't used the product): Have you had a chance to use {ProductName}? - Body of the email went over a few benefits left out of the second email and gave my "personal" contact information that lead to a special bucket in our helpdesk software (Groove).
  • Day 6: How is it going? - Personal "shoot the shit" style email trying to get engagement.
  • Day 10 (if they hadn't converted but were using the software and were reading the email): Just for you a 50% deal for the PRO plan of {ProductName}- Just a coupon

Knowing the PRO plan is out of reach for most, the 50% coupon allowed them to signup for PRO for 1 month, get the benefits, use the product, then downgrade to the basic plan which was similar, just a few limitations on number of integrations and account size.

But by on-boarding our free users I was able to convert 18% of free customers to paying customers. Which was a HUGE increase from the 6% of just the first transaction email.

Price Anchoring

Use a giant unreasonable number for the unlimited plan with:

  • 1 month of phone support
  • 12 month same business day email support
  • install it for them
  • Fee free ACH / Credit Card processing through you
  • etc.

A HUGE list of features to go along with the HUGE $574 price tag.

From that giant steel anchor, everything else on your ship will seem absolutely weightless.

Then drastically back off of that pricing for the other product tiers.

  • 10-25 team ($249)
  • 5-10 ($199)
  • 2-5 ($149)
  • solo ($99) plans.

You need to also reduce the features, support windows, contact method as you drop the price, not just the number of users.

Also drop the slider and use a comparison chart. And you should always have a “best value” or “most popular” call out on the pricing chart. The exact wording needs to be split tested, of course ;).

Additional Income Streams

There are infinite ways that you can continue making money on the “back-end” of the offer. Here is a handful that might work best for you.

Payment Processing

Include your own payment processor by default (I would use Stripe, personally). If you have 500 customers invoicing an average $1000, your processing fee will drop. Also, always default your processing to ACH as the fees are even lower (current Stripe fee is 0.8% maxed at $5 and a $0.25 fee to transfer the funds from your Stripe account to the customer’s bank). Bill the customer back at 2% and $0.30 and you are making a little bit on each transaction.

Annual Licensing

Don’t give updates away unless it is a bug fix. Also, QA the SHIT out of your product so less bugs make it into the stable track. And make sure you are always improving your product. If your product becomes stagnate then your customers will never have a reason to re-up their contract.

Cloud Hosted (SaaS)

Take the annual price divided by 12 and add a premium to it (10-25% or so). Also push updates to this channel regularly. Make sure to have a few extra premium add-ons as well, like:

  • Custom Domain Name (like the self hosted has) +$5/mo
  • Snail mail invoices (use something like Lob +$1.50/invoice

3rd Party Integrations

Create plug-ins for Slack, Salesforce, WordPress, etc., and charge $25-49 for them.

Conclusion

While I know this is probably only a side project, there is no reason you couldn’t turn this into a viable small startup with an additional 1-2 developers who also spend time answering phones and emails.

Questions or Comments

You can comment on this post over at Hacker News or you can email me at hello@jeremyaboyd.com.