IdPinThat.com: From Idea To Launch In Ten Days

The Idea

IdPinThat.com is a new microapp that I launched last week. The idea originally came from some of the sessions at #Fincon13 (where Pinterest traffic was a big focus this year) and then continued to develop in my head over the following weeks as clients started asking me questions about how to use Pinterest. Because I work so closely with my hosting and tech support clients, these kind of questions are common, but this one in particular kept hammering validating the idea I already had floating around in my head: A tool that gives people high quality pictures and an easy way to edit them in their browser, specifically to drive Pinterest traffic to their blog posts.

I’m no stranger to Pinterest. When I was developing Manteresting, I did extensive research into Pinterest, its viral model, what makes it such a powerful traffic driver, and what kind of posts were the most popular. It’s very clear that the prettier the image and the clearer the message on that image, the more people are going to share that Pin even if they never click through. That said, the more that Pin is shared, the more probable click-throughs become.

If I were to build this tool, it had to have great quality pictures available without any licensing constraints and it had to be easy enough for anyone to use without Photoshop experience.

I jotted down notes about the idea at #Fincon13 and continued to add to those notes as client questions touched on the idea, but then I sat on it for a couple of months. I had other things going on and forgot all about it until one day I was brushing up on my Python and stumbled on to this Mega Tutorial on Flask by Miguel Grinberg.

I built the first version of Manteresting in Django, which is a framework for Python, but I had never heard of Flask before or much about micro-frameworks in general so I thought I’d take a deeper look. I went through the bulk of Miguel’s mega tutorial, then realized this would be the perfect framework to use to get IdPinThat.com off the ground. I ditched the rest of the tutorial and got to work.

Here’s a rough timeline of the IdPinThat.com development

I started coding on a Friday

January 10th, sometime in the evening. I had much of the first version of IdPinThat.com done ~ten coding hours later. You could search, select your beautiful picture from the previews shown and then the site displayed that picture full-size on a page….not quite there yet.

By Sunday evening, I had a name picked out thanks to the help of Andrea WhitmerBootstrapped the app so it wasn’t so dang ugly plain, and had improved functionality to the point that, after selecting your picture, you’d end up at a faux editor that let you do all sorts of fun stuff on the front-end. At that point, when you clicked submit to actually save the edits, nothing would happen. Progress! icon smile IdPinThat.com: From Idea To Launch In Ten Days

Here’s what she looked like at this point:

idpinthat rev1 1024x490 IdPinThat.com: From Idea To Launch In Ten Days

Note: Clumsy messaging and a cluttered homepage that’s confusing at best.

 

Up until this point, I hadn’t looked around much at what else was out there in terms of reusable code. I was enjoying experimenting with Flask too much. I was writing raw Python functions to do a lot of things that I ended up actually tossing out in the latest version, but it was all part of the experience. I wrote custom functions to process the images as they came into the server and to do all sorts of stuff to make the User Interface more user-friendly.

Were I to do things all over again, I don’t think I’d change a thing! I learned a lot of new JS/JQuery techniques and got my hands nice and dirty in Python. No regrets there!

First Revisions

Back to the timeline. Normal life resumed on Monday so I had less time to work on IdPinThat.com, but did spend what little time I had cleaning up the user interface and messaging so users would actually understand what the site did for them. Here are some revisions the site design went through:

idpinthat rev2 1024x490 IdPinThat.com: From Idea To Launch In Ten Days

Note: Much clearer layout and concise wording.

And here’s a look at the results page at that time:

idpinthat rev2 results 1024x555 IdPinThat.com: From Idea To Launch In Ten Days

Note: Minimalist results page but you can see in this screenshot a bug where the images overlapped. Also, notice the multiple navigation elements on the page that were confusing especially to mobile viewers.

And finally, the editor at this stage:

idpinthat rev2 edit 1024x573 IdPinThat.com: From Idea To Launch In Ten Days

Note: notice the overlapping containers near the bottom, another bug.

I spent the rest of the week polishing functionality and knocking out some of the bugs that had shown up during testing. This is how things looked when I started sending the site out to my mastermind group, and a few of my clients who had unwittingly validated my original idea, Sunday, January 19th.

By Monday evening, I had a bug list to start squashing as well as a feature request list that was quickly growing. It seemed like my focus on simplicity left a lot to be desired in my app. My test group of users wanted more functionality; image cropping, resizing, multiple captions, effects and more! I already had some of this on my feature todo list but realized at this point, if I wanted to get the app launched while I was still in the honeymoon stage with it ie while I still gave a crap and liked the idea, I’d need to look at incorporating a real editor into my app.

Right now there are a couple of image editors getting attention as well as some oldies that are still solid. I looked at PicMonkey as it was specifically requested by one of my testers that the controls be like that. PicMonkey a pretty decent app and they have an API…sort of. 

PicMonkey

Within a few minutes of receiving an API key via email from PicMonkey, I gave it a shot. Here’s what that looked like:

idpinthat rev3 picmonkey 1024x572 IdPinThat.com: From Idea To Launch In Ten Days

Note: Looks good! Lots of image effects and tools at your disposal…

But there was a problem. The PicMonkey API was crazy slow. It took around ten seconds to load up inside IdPinThat.com and the API is not flexible at all. You’re essentially just loading the PicMonkey site into an iframe within your site via an API call, and the PicMonkey interface can’t be changed at all. There is one API call that lets you disable certain parts of the user interface…except there’s only one part of the interface that you’re allowed to disable in the current API and disabling it didn’t even work! To top it off, PicMonkey’s interface is heavily branded from the navigation to the share links you can send, being from PicMonkey’s domain.

This won’t do at all.

So I looked to one of the oldies…

Aviary

Aviary has been around for a long time. They once had a web-based image editor much like Pixlr.com which they shut down, I’m assuming to focus on their image editor API which is fantastic now.

At first glance, the Aviary API looked much more complex than PicMonkey’s, which (at this point) was a good thing. The documentation on the API is very complete though and you’re able to control a large portion of the Aviary interface when using the API. That’s perfect.

Here’s how the Aviary image editor looked:

idpinthat rev4 aviary 1024x570 IdPinThat.com: From Idea To Launch In Ten Days

Note: Clean, plenty of features and far less obtrusive branding.

Aviary took a bit longer to get just right but when finished, I was very happy with the result. If you go to IdPinThat.com now, you’ll find Aviary is still there and will also be used to power the upcoming IdPinThat.com mobile apps for iOS and Android as their API has an excellent mobile branch!

Aviary also ties wonderfully into Filepicker.io which I could use to export your images to cloud providers after you’re done editing.

The editor change came on a Thursday. That single change knocked out about 20 feature requests and half a dozen bugs that were present in my custom editor. From there, I wanted to polish the site navigation, info pages and make sure the site was fully responsive as that was on the bug list.

Hamburgers

I decided the best thing to do with the navigation was to get rid of it altogether! I mean, why does a user need to see that there is an About page. Who cares. But I did want to have a place that could contain a search bar on every page of the site as well as hide the About page if anyone actually did go looking for it, so I turned to Hamburgers.

I thought the hamburger drawer menu would be the perfect design tool to hide the crap I didn’t want bothering users who came to IdPinThat.com to find and edit high quality, public domain pictures but still let users find more information on the site if they so chose.

Here’s how she looked when the new navigation was in:

idpinthat rev5 hamburger 1024x557 IdPinThat.com: From Idea To Launch In Ten Days

Note: This is the view after clicking on the hamburger.

Simple, elegant and functional. Perfect icon smile IdPinThat.com: From Idea To Launch In Ten Days I was very happy with this change. Everything anyone needed to find was in that new menu. And if they didn’t want to find anything, it got out of the way — on every device, mind you — so you could just get your high quality, public domain pictures and be on your way.

I did add one more thing to every page: the IdPinThat logo. It’s there so you don’t have to open the hamburger to get back to the homepage, but is nice and small so you don’t notice it unless you’re looking for it. I’m not 100% happy with the logo where it is but it works for now.

Oh and if you’re curious, I had that logo designed on Fiverr for, you guessed it, five bucks. It’s not exactly what I asked for but it was good enough. I was looking for launch-ready, not perfect.

Now

Here’s how the site looks right now:

idpinthat rev6 1024x483 IdPinThat.com: From Idea To Launch In Ten Days

You may notice a few other subtle changes. The messaging on the homepage has changed a few dozen times, always to be more concise in describing exactly what IdPinThat.com can do for you. If any of you have suggestions after using the site, on how to better describe its use, please share that with me in the comments!

And that’s about that! It has been about 17 days as of the time of this writing and I’m saying, good enough for now to IdPinThat.com.

Interesting technical tidbits

I started out with the Pixabay API exclusively which worked perfectly. All the images they host are Public Domain and great quality. I didn’t want to use Flickr because of how easily someone can change their photo license which could cause headaches for my users if a license gets changed on them. In the end, Flickr does have a gazillion more images than any other image site on the net, so I thought it better to integrate them in as well. It took a couple last-minute hours.

IdPinThat.com is hosted on Heroku and there were 100 commits pushed at time of this writing. I guess that puts IdPinThat officially at version 1.00.

The current version of IdPinThat.com is 98% Python and 1.3% JavaScript (JQuery).

IdPinThat uses four APIs currently: Pixabay, Flickr, Aviary, and Filepicker.io for Public Domain images, PD and Government images, the image editor and the saving mechanism, respectively.

Other Notes

One thing I loved about using Flask was that it was so simple to set up and then got out of the way to let Python do the work. Django was a bit more in the way in my opinion and I struggled with some of the way different required cogs in the Django machine worked together. After using Flask though, I actually see how Django operates more clearly now and plan to continue using it where required though am happy to have a lightweight, simpler alternative for projects that don’t require the power and complexity that Django brings with it. I will be using Flask again to prototype if not build entirely, my future projects. It is awesome.

Finally, A Favor

I would absolutely love if you guys would share IdPinThat.com with your friends, fellow bloggers and grandmothers. Let me know if there is anything that could be done better, any  features you’d like to see or if you just hate it and want me to shut it down (I won’t but you can still tell me). I have plans for some new free and premium features that I would love to build, but I need users to make sure I build things the way you guys want to use them.

Thank you for reading and leave some words in the comments! I’ll read them.

4b3e6a9575ad45749ea2ecba1e7b6426 IdPinThat.com: From Idea To Launch In Ten Days

14 comments

The Life And Death of a Startup Called AdRavage

5 The Life And Death of a Startup Called AdRavage

Taken by: Sherman Buster

The Beginning

Back in 2008 my college friend Chris sent me a message about a new startup he was working on. It didn’t have a name then but was a system to watch Craigslist for new ads posted around user-defined search topics. Any new ads would then be emailed to users so they could be the first to jump on new listings. He was building this project for his own needs but soon realized there was demand for such an app and pivoted toward a public product. He picked the name and launched a beta to the public. AdRavage was born.

startup AdRavage homepage The Life And Death of a Startup Called AdRavage

From the very early stages, I helped beta test the product, was a sounding board for programming logic, design changes and was a loyal user. He built the web app well and it was beautiful, as is everything Chris creates. Every redesign of AdRavage was more functional and visually stunning than the last. He added new features as users requested them and the user base quickly grew. Chris soon added paid subscriptions to help cover the cost of AdRavage’s growing resource usage.

AdRavage started picking up steam and was getting noticed on Startup networks. But Chris never stops, he’s always on the move. He seemed bored with AdRavage and soon after launch was already working on other projects. Spreading yourself thin can only last so long and in the end, you have to cut projects loose for them to survive or to create new projects. In March of 2011, Chris listed AdRavage on Flippa.

Up until recently, I didn’t fully understand this statement, “you have to cut projects loose for them to survive or to create new projects.” Being a part of AdRavage’s earliest days, I felt connected to the project and decided to buy it from Chris. We worked out a deal and some of you may remember this tweet around the end of March:

I was excited to say the least. This felt like a big move for me and I already had ideas flowing of how to improve AdRavage. I paid Chris $1,000 for AdRavage. That price included the domain name, code base, user base  and current paying subscribers. I paid Chris a bit extra to help move the AdRavage core to my servers to insure everything was functional and there was no interruption in service. I took things from there.

Paying subscribers were set up on a monthly basis through PayPal and PayPal doesn’t allow that kind of subscriber to be “migrated” to a new account, so I had to email those users and ask them to sign up again via my account so they could continue paying. That resulted in a loss of about %20 of the monthly subscribers.

As of April, 2011, AdRavage had 16 paying monthly subscribers at $3/month and an average of two Lifetime Purchase accounts per month at $29. Purchase accounts were a one time purchase price, not a subscription of any kind. AdRavage required a VPS (Virtual Private Server) to function and that cost $49.95/month.

Purchase accounts being what they were, an unreliable source of revenue, AdRavage was just a few dollars short of breaking even and had the possibility of profit every month from the day I took the helm.

Startup Goals and Dreams.

My goals for AdRavage were modest. First, I wanted to ensure that my costs were met every month. To do this, I reworked the AdRavage website from a marketing perspective. I optimized site content to better highlight the premium accounts, I did some Search Engine optimization on the site and I set up a Google AdWords campaign as well as a Facebook Ads campaign to increase traffic. Both of these ad campaigns were done through promotion codes and coupons I found online, so they didn’t cost me anything. I ran the campaigns for about 90 days which resulted in more consistent Purchase account sales. Interestingly enough, monthly subscriptions did not increase much as a result of the ad campaigns.

After costs were reliably met by AdRavage paid subscriptions, my next goal was to add features to the platform. An increase in features would bolster the benefits of the paid accounts and would mean an increase in price would be acceptable. Features I wanted to implement first were; images in results (the email notifications looked like this), more granular control of search matches, and additional services included in search results ie eBay.

My end game for AdRavage was to include classified sites from every state and county in the search database so that results were not limited to or dependent on Craigslist. While eBay is not a classified site, at the time eBay didn’t have a notification system but it did have an affiliate system that I could tie into AdRavage so that users could get notifications from new eBay listings matching their search results and I’d get a commission for any purchases made on eBay that were referred there by my affiliate cookie.  The commission was around 4% on the final sale price on eBay. Based on the number of active searches on AdRavage (~100,000), if a small percent of those also included eBay and a small percent of those purchased from eBay, I stood to make a small percent of a small percent of a small fortune!

By my calculations based almost entirely on speculation, if 10% of those 100,000 searches included eBay, and 1% of those searches resulted in a purchase, if the average final sale price was $100, I’d be making $400/month.

I decided to focus on the eBay feature first since if it paid off, I’d have the funds to outsource some of the development work that needed to go into AdRavage. This potential profit also motivated me to get this feature completed quickly even though I had other projects that took priority of my time, so I hired a developer through Odesk to complete the feature for $200. The feature was ready for implementation in about a week. This was in October of 2011, six months after purchasing AdRavage.

Things are never that simple.

During that first six months after purchasing AdRavage, resource usage/requirements slowly climbed, user signups increased slightly probably as a result of Search Engine Optimization and the advertising campaigns, but overall growth was not that upward curve that you like to see. Support time, however, did noticeably increase.

There weren’t major problems with the AdRavage code base, it was well designed on a good code framework. The site was stable. But as more and more users found the site and had specific individual needs, support emails with questions and feature requests seemed to never end. I was constantly updating the city database as Craigslist expanded, and while Craigslist is well known for their snail’s pace release schedule, they seemed to always be tweaking tiny details in their user interface that resulted in feature requests from my users to support those tiny changes.

During that first six months, the time I was spending supporting AdRavage was getting out of hand and I decided I needed to quickly increase revenue as a result, before putting time I didn’t have into features. So I started experimenting.

Trial and Error. Mostly Error.

So I started experimenting. Most notable, I wanted to take advantage of the email list, as I saw it, that was the AdRavage user base. So I hacked together a way to inject text and links of my own into outgoing emails automatically. The ads would only go out in free subscribers emails and that way I could add “ad free” to the premium feature list too.

I wrote the copy for each of these ads myself. The products I chose to promote were products I actually use and promote wherever I can anyway. I kept the product description very short and to the point so that the main content of the emails that users wanted to see wasn’t overshadowed by a huge block of ad text.

To get started, I used the ad injection to promote the AdRavage Facebook page. The results were great! I was excited. The Facebook page went from 15 likes to nearly 400 in a few weeks. I was ready to start promoting products.

When I started promoting products, I was surprised and disappointed with what came next. Not only did I see zero conversions from the text ads, I started getting emails like this:

“I’ve never heard of Freshbooks but I can tell you, I will NEVER use it now!”

What the…how could this be? Why would a FREE user be so upset about getting a one sentence long text ad in an email that’s essentially an email full of ads.

I tried changing the products. I tried placing the ads in different spots within the email. I tried writing shorter ad copy. I tried writing longer ad copy. I tried having the ads run for only one day a week.

Nothing seemed to work. At the time I was testing this, the email list/user base was over 2,000 strong and I never saw a single conversion from my text ads.

This was discouraging.

 Analysis Paralysis

After the discouraging run with ads, I was weary of introducing new features. At this point, the eBay back-end code was complete, I just needed to integrate it into the core and write the User Interface for the feature so people could use it. But I couldn’t do it. I froze. I didn’t know how to proceed. I was busy with support requests and felt like those kept users happy, and my experience with the text ads made me think that introducing new features or change of any kind would only piss off the users. So I sat on the eBay code for what would turn into forever. That feature never got implemented.

It wasn’t just the eBay feature that got frozen though. All the new features I had on the roadmap got frozen. If multiple users didn’t directly request a feature, I put that feature on hold. If requested features conflicted, both features got put on hold. If I didn’t have time to perfectly execute a feature, it got put on hold till I had the time which in reality would never happen.

AdRavage was still growing slowly but wasn’t climbing that growth curve, it was now coasting down it.

The beginning of the end.

After that first year, the ongoing stability of AdRavage changed from stable months with a few problem days, to a few stable days scattered among months of problems. The user base had outgrown the $49.95 server but I didn’t realize that because of how the problem presented itself. I never got resource usage alerts, just complaints from users that emails weren’t coming on time, emails weren’t coming at all, or in the worst case, duplicate emails were being sent.

My one criticism of the original AdRavage code, looking back now, is that it wasn’t designed to scale. I completely understand why. It was a pet project. It wasn’t meant to scale.

I was able to track the problem back to stuck PHP scripts. Basically, scripts were designed to run on intervals, one after another, to search the database and send emails with results. As the user base grew, the time it took to execute those scripts grew. The five minute interval script was taking thirty-minutes to fully execute. That meant the database was not being updated properly by the scripts and the scripts wouldn’t be able to read what to send from the database.

The duplicate email problem was the most important to me. This problem was being caused by the fact that every script would update the database at the END of its execution with what emails it sent. If another script started before the prior one finished, that second script wouldn’t see that the first had already sent certain emails, and the second script would send them again. To fix this, I implemented a simple socket system so that if a script was running it would create a file on the server to show it was in a running state. Any scripts that tried to execute afterward would first check for that file and if it was present, the script would not run and at the next interval, the next script would make that same check.

This fixed the duplicate email problem but the other problems still existed and in some cases, delays got worse as you might have guessed.

I realized these problems were tied into resource usage when I started having the AdRavage website crash often. I didn’t monitor the AdRavage web interface for uptime as it wasn’t critical for the system to run and traffic was pretty consistent but when ads stopped coming through to users, they would all hammer the web interface to check their ad configuration and the site would crash.

Supporting AdRavage was getting exhausting. Something needed to change.

A Breath of Fresh Air

First I tried increasing the power on the VPS at my current host at nearly double the monthly cost, $79.00. This put me back at breaking even as far as revenue went with AdRavage which would have been fine, but it wasn’t enough of an increase in power to fix any of the problems.

I happened to bring this up during a conversation with a Startup Incubator associate while securing hosting for Manteresting and she asked me to send details about AdRavage to her and she’d set me up with a hosting credit.

What a relief. With that reduction in hosting cost, I was able to provide the power required to stabilize AdRavage. I was able to focus on fixing issues instead of playing catch-up with outages. I spent the next three months after moving to Softlayer rewriting parts of AdRavage that were broken, so the software would scale with the growing user base and the business could start to grow again.

And grow it did. With increased speed in the backend, AdRavage was more efficiently sending emails and users were happy. The user base started to grow faster and there was a noticeable increase in monthly subscriptions as well as Purchase accounts. Search engine traffic increased and AdRavage was getting a lot of attention again. For another six months after moving hosts, AdRavage ran smoothly.

In its best month, AdRavage made over $350 in premium account fees. Things were going great. I was feeling good about the company again and was ready to start implementing the features that I’d developed over the past year. Then I got this (page 1 of 17):

C and D The Life And Death of a Startup Called AdRavage

The Death of AdRavage

At first I was angry. AdRavage always operated in grey area inside the Craigslist Terms of Service. Even Craigslist, based on their Cease and Desist document, didn’t fully know how AdRavage was operating as they got a lot of the details wrong. In fact, it is those details that helped AdRavage survive that long without a Cease and Desist from Craigslist as they were constantly shutting down AdRavage competitors for abusing Craigslist data. It was probably only the fact that AdRavage started rising in search results that Craigslist even discovered the service.

After calming down, I started looking at my options. According to the Cease and Desist, I had a short time to comply or suffer the wrath of Craigslist which would have financially crippled me, my children and my grandchildren. It was harsh. I looked over the C&D time and time again, trying to decide whether I had a case against the claims. In many ways I did, but what I lacked was the financial resources to actually fight the claims. Craigslist didn’t have that problem.

I consulted a few knowledgeable friends on the matter, slept on the problem a few nights and thought about whether continuing with AdRavage would be a good idea regardless of the C&D. The site was making more money but there were still problems that needing fixing. Would I suddenly have the time to dedicate to AdRavage if I were to miraculously dodge this huge bullet gunning my way? Probably not.

So I put up a message about the C&D and AdRavage’s closure on the site. I refunded any recent purchases and cancelled the monthly subscription plans. And that was it.

I got a handful of emails requesting refunds and a few more from loyal users expressing sadness about the company shutting down. I still get messages on Facebook asking what happened. But in the end, I feel this was the right decision.

Moving Forward

Moving forward is something I now realize I have a problem doing and not just with AdRavage. Moving forward doesn’t mean pushing on regardless of circumstances. It doesn’t mean never letting something die. Moving forward means exactly that. Knowing when to let something die. It means knowing when to move on.

AdRavage was a good project. I learned so much from start to finish. I learned that you never truly know what your users, your audience, is thinking. You can guess, you can survey, you can study, but you’ll be wrong often and you have to learn how to deal with that.

I learned that not everyone likes a good idea. Some are threatened by progress. The most frequent question I got after announcing AdRavage’s closure was, “why would Craigslist care if you’re making their service better?”. I truly don’t know but Craigslist absolutely did not want notifications on their listings. I like to think it’s because they are creating notifications internally, but I have yet to see evidence of that and have stopped using the service entirely because I don’t have the time to sit on their site searching for listings. If only there was a way to be notified of new listings… icon wink The Life And Death of a Startup Called AdRavage

Either way. No hard feelings Craigslist. Thank you, AdRavage users. Thanks Chris. It was a great adventure and I’m happy to move forward, on to new things.

8 comments

Duolingo banner The Best Way To Learn A Language And Help Humankind At The Same Time

When I discovered Duolingo, a new platform to learn a language, I thought, hey this is great. I can practice what I’ve learned through Rosetta Stone and compete with friends, but as soon as I started using it I realized Duolingo was much more powerful than I assumed. In fact an independent research company did a study to assess the amount of time a student using Duolingo would need to accomplish the amount of learning found in one semester of a college level language course. The study showed that Duolingo was twice as effective as the leading language learning software available but also took less time to learn what is found in a typical university level language course — all for free.

So I decided to do a little more research into Duolingo. What makes it so special? How did the company get started? What is their goal for the future of language learning and what is their business model?

CAPTCHA And ReCAPTCHA

It turns out the founder of Duolingo is the guy behind those annoying CAPTCHAs you have to type in when filling out forms online to protect against spammers and there’s more to that story than just anti-spam which you must know before you can fully understand Duolingo’s business model.

captcha example The Best Way To Learn A Language And Help Humankind At The Same Time

The team behind CAPTCHA realized that they were draining hours from humankind with their CAPTCHA system so they set out to find a way to use instead of waste that 10 seconds it takes for each CAPTCHA. They came up with a brilliant idea that ties into digitizing books.

Digitizing books is the process of scanning books and having a computer index the words, also called Optical Character Recognition or OCR. Older books are more difficult to digitize because the ink is faded and paper is discolored.

Because of the CAPTCHA system, millions of people world-wide are already typing words that are hard to see, so the CAPTCHA team joined the process of digitizing books and blocking spam bots. They created a system called ReCAPTCHA that instead of presenting a single word CAPTCHA, you are presented with two words – one word that has already been indexed by OCR technology, and one other word that isn’t. ReCAPTCHA presents the non-indexed word randomly to a few hundred thousand people, combines the most common answer for that word and the computers then learn to recognize it, effectively turning millions of wasted hours worldwide into a crowd sourced book digitizing engine. ReCAPTCHA and you digitize 2.5 Million books per year.

Translating The Internet

Duolingo plays on that same process. They aim to crowd sourced language translation of the Internet.

While playing Duolingo, you can test your new language skills with real world translation. You are given a short sentence based on your current skill level and vocabulary in your new language and asked to translate it as best you can, for extra points toward your Duolingo skill profile. To aid your translation efforts, you can mouse-over each word and get the literal translation. After you translate your sentence, you are given the top three most common translations of that sentence and asked to pick the best one.

What you may not realize right away is that each of these sentences comes from a real website, real copy somewhere out there on the Internet. That one sentence you just translated will be matched along with the hundreds of thousands of other translations of that same sentence to find the best translation, then it will be applied to whatever document it came from.

Duolingo Business Model

As a business model, Duolingo provides language learning courses in exchange for translation services. They can sell this translation service to outside companies. The founders don’t plan on ever charging for Duolingo as they state that this is a fair exchange of value and a sustainable business model.

As a language enthusiast, I’ve studied half a dozen languages over the past ten years continually. I am not fluent yet, but I can understand much of what is said in Spanish and Japanese, and get by with French and German. I enjoy studying the languages as well as their culture.

Throughout my language studies, I have tried every language learning platform around from online offerings like Live Mocha to desktop software including Rosetta Stone to audio learning suites to old school bilingual dictionaries. Duolingo is a step above the rest.

Duolingo Compared To The Competition

Duolingo lessons are much like Rosetta Stone. The software presents a few different models of translation and from those, you learn vocabulary and grammar. You learn to associate pictures with words and translate simple sentences and phrases back and forth between your two languages. As you progress through the language, you unlock more difficult lessons and can’t progress forward until you learn the basics to a certain degree.

Compared to Rosetta Stone, Duolingo is smarter. It is flexible when interpreting your answers. It understands English conjunctions and let’s grammatical and spelling errors slide, while showing you the correct grammar in your new language so you learn to recognize and self-correct your translations. Duolingo also allows comments on every answer so the community can correct the software if there is a mistake or add information about lessons. This helps make the new language more real.

Duolingo also learns and adjusts your individual courses based on your strengths. Duolingo integrates your current vocabulary and language strengths into earlier lessons which make them dynamic and more difficult. For example, if you went through the Spanish lesson teaching foods and the lesson teaching colors, then went back to a lesson about animals, you would be presented with questions that focused on animals but used colors and foods to change the difficulty of the lesson, combining your vocabulary and knowledge to help you better understand the language.

Duolingo’s skill tree is unique compared to the way Rosetta Stone and other software track your progress. You can instantly see how your language skill is progressing, see what the next lessons are and see how many words are solid in your vocabulary. Through this skill tree you can see how well you know each topic as well as test out of topics you may know from previous learning.

skilltree The Best Way To Learn A Language And Help Humankind At The Same Time

Compared to online language learning platforms, Duolingo is just as social but also adds unique features that help make learning a new language fun and competitive which in turn motivates users to stick with it. Duolingo’s gamification is excellent. Each lesson you take, each translation you make, each skill you strengthen gives you points toward your Duolingo skill level, which levels up as you progress. You are given a leaderboard so you can see exactly where your friends’ skill levels are, adding competition to the platform. There is an open discussion board, profile Wall to interact with friends and tons of translations to choose from when practicing your skills on real world situations.

duolingo leaderbeard The Best Way To Learn A Language And Help Humankind At The Same Time

Another way Duolingo aims to keep you engaged is with email reminders. You can turn notifications off in your profile, but by default, Duolingo emails you daily if you haven’t practiced your language and emails when you’re on a hot streak. You are also sent an email when one of your friends passes you in skill level spurring you back into the race.

The Duolingo team very Internet savvy, people who obviously keep up with market trends and understand technology. They have done their research and implemented great features that change the game when it comes to language learning.

I can’t wait to see more languages added to Duolingo but even now, the platform is the best way to learn a language, second only to complete immersion.

Join me on Duolingo and leave a comment telling me about your language learning experiences!

5 comments

Launching a startup or website takes time. It takes time to get ideas and thoughts organized, to develop them into something usable, and to put them on paper – or in this case, on the web. One thing I’ve learned from developing websites however is that even if you have the greatest idea in the world, launching a week later than the competition means your website will struggle from the start to gain traction.

Take Manteresting for example.

Manteresting launched February 16 2012. Development for the site began in late 2011 and got heavily underway in November/December. There was nothing else on the market like Manteresting, aside from Pinterest of course, but we were targeting men which was new. Almost exactly one month before we officially launched Manteresting, we spotted this article on Mashable: Mustaches Prevail on Gentlemint, the Pinterest Site for ‘Manly Men’

Crap crap crap!

Our competitor, the only competitor for our market, just launched a month before we did. We are screwed.

We had to think on the bright side here which was that the guys behind Gentlemint built their site in 12 hours and it had little to no features. It was a flat site, no infinite scrolling, no ability to Like or even repin images – the site content wasn’t share-able, searchable or tagable, it was just a place for people to bookmark their own content.

Props to these guys for the fast development and launch of their site, but Manteresting will blow it out of the water when we launch.

Can you guess what happened?

We launched a month later than Gentlemint and it took us almost six months to overcome them in numbers (user accounts created and images pinned/nailed).

Even though Manteresting launched with almost a full feature set comparable to Pinterest, we were unable to take the spotlight from Gentlemint for some time and when we did, we were still playing catch-up to their search engine rankings. All because they launched before us.

After all, Neil Armstrong was the first man to walk on the moon…followed by that other guy.

“Comparing a startup company and a little blog on the Internet isn’t the same thing”, you might say.

Yes, that’s true. AntiNecktie is just a little blog (for now!) but there is much more to launching early than just the possibility of competition taking the spotlight.

Here’s another example I’m sure you will be familiar with.

How many of you have written an idea on a napkin at lunch?

I use Evernote to catalog my ideas instead of napkins. Right now, I have 698 ideas on record. These are domain names, startups, blog posts unwritten, each with a title and description – an outline of the idea, what it might be used for, initial research I’ve done into each ideas marketability. 698 ideas that I have yet to act upon.

Launching now means your idea launches with its original flame, your full focus behind it and you give it the best shot of succeeding. Over time, ideas get stale. You start to doubt yourself and your idea. Other ideas get in the way. That’s life, it keeps moving.

I bought the domain for this blog over a year ago. I knew exactly what I wanted to do here but I failed to act quick enough and my attention got pulled in other directions. If I had launched a year ago, who knows where this blog might have been.

This time around, I wasn’t waiting for the perfect moment to launch AntiNecktie. I needed to launch it yesterday! So I threw together something remotely presentable, covered some of the basics of launching a blog and just launched!

I suggest you do the same. The “fail early, fail often” mantra has been around for ages. Who knows where it began (I can’t find the origination, if you know, please let me know if the comments), but that is some excellent advice. You never know what idea will take off but if you don’t push your ideas out the door, none of them will.

In some races, there is no second place.

Tell me, ever experience the “oh crap, they stole my idea!” feeling? Tell me all about it in the comments and don’t forget to share this if you enjoyed reading!

17 comments

where angels cry How My Life Went Into A Tailspin in 2012 and What Happens Now

As I write this, it is my 26th birthday. I’ve always been the youngest guy at whatever company I was working for. I was always admired for having my crap together and getting things done. People always made a big deal about how fiscally responsible I was. People were always surprised by how young I was and what I’d accomplished in my short time on this planet.

Today I am no longer the youngest guy where I work. I’m technically unemployed. My crap is no longer together. My admirers have forgotten all about me. My finances are laughable.  And my accomplishments are stale. Here’s how things went downhill fast in 2012.

January – 2012 looks promising

In 2011 I got it into my head that I was doing enough freelance work on the side that I’d be able to quit my job and just skyrocket to millions. I thought I’d be able to travel at will, home school my kids full-time, keep up with all my current freelance clients while expanding my business, and still maintain the greatness everyone expected of me.

Around the same time, a buddy of mine and I launched Manteresting, a Pinterest for Men site that instantly took off. The first few months, while development was in full swing, were stressful and they engulfed much of my life. I was looking forward to having a lot more time after quitting my job so I’d be able to continue dedicating a big chunk of that time to Manteresting while maintaining my sanity but after launching the site, I found that wouldn’t be the case. The site was crashing constantly because we didn’t expect the traffic, and the traffic brought with it hundreds of bug fixes and feature requests. This is a great problem to have. It was a great time to have it too as I would have plenty of  free time after I quit my job…

February – “I quit”

I put in my two weeks notice in February 2012. My boss started negotiating some way for me to continue to work for them or help them transition to new hires during my resignation sit-down. Here I am trying to quit and they are begging me to stay. They can’t live without me. I am awesome.

This only fueled my desire to cut ties but I let them talk me into staying, took their offer of working entirely from home, getting a raise, keeping my laptop and cellphone, health benefits and regular bonuses as if nothing had changed. I only had to put in 30 hours a week…

I couldn’t help but tell everyone what went down, how “in demand” I was. Look how great I am now! 

I quickly realized what I had known all along about my job. I wasn’t quitting just because I was doing well on the side, but because I hated working where I was. I hated the work I was doing and the way corporate was running the company. Most of all, I hated how stagnant the atmosphere was there. I’m a go-getter. I’m a hammerhead.  I’m self motivated and going places, working at a place going nowhere.

Now I was working from home, a place where I was free to do whatever I wanted…but I was still doing the same crap for the same company. Nothing had changed.

March – Disneyland!

So I decided to revel in my freedom. Late March, my family and I packed up and went to Disneyland. I know, how cliché.

Looking back, what this really meant was, now that I’m free, I’m moving back in with my parents.

We went to Disneyland and had a great time. While in California, we stayed with my parents. We had planned to stay for a couple of weeks but I couldn’t go back home yet. I am location independent now after all. So we decided to stay at my parents as long as we liked. It was sunny, we were eating all our favorite foods and getting nice and tan. Why would I want to go back home, to the cold and snow, to my dead-end job that I let follow me into my “early retirement”? No, it was better to stay in California with my parents. To enjoy what I had earned and get away from it all.

Only, I didn’t quit my job to get away from it all, did I? I quit to build my business. I quit to dedicate more time to my clients’ needs and make it absolutely certain that they would tell all their friends about me. Because I’m that awesome, young, fit, brilliant, good-looking guy who’s way ahead of the curve…

A place to get away from it all…that’s what California has been for me since I moved away. It’s been a place for me to relax, put work stress in the back of my mind, turn my phone on silent and just enjoy life. That’s exactly what I did. Only, now that I was location independent I could work from anywhere. I had no reason to go back home and get back to reality. I could just live it up in California as long as I liked. Oh, and my parents didn’t mind at all. They loved seeing their grandkids and enjoyed our company too. I even took up some of my old routine from when I was a kid, helping with chores, cleaning the house and of course, goofing around with my siblings.

It was great. Even when in California for vacation over the past years, I always tried to maintain a bit of contact with work, would make a few phone calls a day and check in to see that someone was minding my responsibilities. During this time, I’d check in with my freelance clients too, make sure everything was running smoothly and no one had any issues. But I didn’t need to check into work anymore. I had a few tasks to check off my list here and there but for the most part, all of my duties were no longer my duties. I was now at the end of the list of people to call when something wasn’t working instead of the first to call. This meant I had even less of a need to boot up my computer. Client emails came to my phone so I wouldn’t miss any emergencies. All my clients have my phone number too, just in case. There was no reason I shouldn’t take some time to really relax.

So I did. I checked email as often as I felt like it. I’d skim through emails on my phone here and there between beach trips and lounging around the house. If something urgent came up, I’d take care of it and while I had my computer on, I’d skim through the past hundred emails or so to make sure I didn’t miss anything else. If nothing urgent came up, well, my laptop got a break too I guess.

I could get used to this, I thought. I did get used to this.

As our extended vacation continued to extend, as we continue to find excuses to extend it, my mind continued to slip into this relaxed state. I’m on vacation. Things can wait. People understand. I deserve it.

April – Depression

What I didn’t realize then was that this state of mind, it wasn’t all sunshine and butterflies. It was actually a deep depression. I wasn’t relaxing, I was hiding. I was hiding from this image I had created for everyone, the one of the awesome, young, fit, brilliant, good-looking, sexy, enterprising, invincible guy with his crap together, the one of the guy that created a booming business out of nothing, this image that I couldn’t live up to any longer.

While in this state of mind, anything and everything that came up would only push me deeper and deeper into this depression. Everything got blown out of proportion in my mind. Family things that came up made the earth stop spinning. Little disagreements with my mom, dad, brothers and sister, even disagreements with my wife and kids would explode into screaming followed by days of cold stares and silent treatment. Misunderstandings between my wife and I would turn into much of the same, followed by days of despair.I was incapable of thinking of anything else but our exchanged words, over and over in my head. No matter what they were, they broke me for days. I’d mope around feeling indescribable sadness and guilt because I knew whatever it was we fought about wasn’t really that big of a deal but I couldn’t let go.

While neither my wife nor I understood exactly what was happening in my head, we assumed it was all due to staying too long at my parents’ place. They were driving us crazy and we needed our space. So we packed up and headed home. Our six-week vacation was over.

May – Back home

12 hours. That’s how long it takes to drive from my moms in California back to our home.

During that 12 hour drive, all I could think about was getting my head on straight. I had a ton of projects waiting to finish, or start. Client work had started to pile up and I had a long list of things I’d be able to tackle once I was back home, comfortable and relaxed.

One hour. That’s how long it took once I was back and rested up from the drive to realize my mind was messed up.

I sat down to get some work done and couldn’t even bring myself to open my email. There I was staring at an inbox with nearly 3,000 emails and I couldn’t bring myself to even look at what was inside.

It was about this time I realized something might be wrong but what? What could it be? This is me…I’m…I’m awesome?

How could there be something wrong…with me? No, there’s nothing wrong with me, I’m just still tired from the trip. I’ll get back to work tomorrow…It’s only 2PM, I’ll get up in a few hours…Thursday is almost the weekend, I’ll take care of everything on Monday…

Remembering back, that’s how much of the month following my vacation went. I couldn’t sleep because I was always waiting for the perfect time to get some real work done. I couldn’t get out of bed because I knew how much work had piled up. Day after day I just couldn’t pull myself out of whatever I was in. I couldn’t get back to normal. I didn’t recognize myself. I’m a morning person, what am I doing sleeping in till 4PM in the middle of the week? I quit my job to spend more time with my kids, why can’t I bring myself to get up and make them breakfast or walk them to school? I wanted to spend more time with my wife, why am I so anxious for her to leave the house?

The last few weeks we were in California were one thing but here I was, at home, comfortable, wife and kids off doing their normal routine and I couldn’t function in the least. In my mind, everything was blown out of proportion. Not just conversations, disagreements or misunderstandings but everything in my life. It was like my world was now under a magnifying glass. Things that I normally would shrug off like getting a cold were now this huge ordeal that would shackle me to my blanket and pillow wherever I went in the house. And it wasn’t even just me that was under the magnifying glass. If anyone in my household had a problem it shook my world. Minor health scares, tiny changes in habits, disagreeable news from the in-laws across town. Whatever it was, I was completely unequipped to handle any of it.

My mind would just stick on things and run for days thinking over all the different possible outcomes or it would completely shut down and I’d find myself numbing the despair with hours and hours of movies. I even fell into an old habit I swore off years ago and started playing video games again. Anything to get away from the thoughts going on in my head. Anything to get away from my responsibilities and the reality. Anything to get away from the guilt, the sadness, the anxiety.

Now, I knew something was wrong. Nothing was getting through this dark barrier around me. Emails were going unanswered for weeks. Texts which I got a lot more of now that I didn’t answer emails, were always urgent things and I’d scramble to solve but clients weren’t happy waiting for me to finally get back to them. I even started getting phone calls from worried clients and friends when their texts would go unanswered.

I had to do something. It’s me, I have to fix this myself. I’m the guy that retired from his job in his twenties. I’m the guy that started his own company right out of high school. I’m the guy people come to with their problems. I can do this.

June – Band-aids

So I started band-aiding everywhere I could. What I mean is, while the thought of facing my ever-growing inbox head-on was unbearable, even impossible, having someone call me because I haven’t answered their emails or texts was embarrassing and shameful. The person I had let myself become ashamed me and that feeling of shame was motivating some change…to a degree. At the very least, at this point I knew there was a big problem I had to do something about though I didn’t fully understand the depth of it.

Some band-aids that seemed to help at least for a short time were alerts,  an alert system set up to sort my email and alert me to important or urgent matters. I still couldn’t bring myself to just open my inbox and see everything in there but if I set up alerts for certain people, certain clients and friends, business partners that typically needed prompt responses, I could deal with the slow, small stream of emails from those specific people.

July – Making Amends

What happened that finally made a difference was opening up about the problem I was having.

I told my wife. I told her exactly how I was feeling. We talked all night. I told her what a failure I felt like. I told her about why I was acting the way I was, what I thought was behind it. She already knew I had changed but didn’t know why or how much. This helped answer a question she had asked me for a while, why our relationship felt so strained lately, why we were fighting all the time and why things were becoming so difficult between us.

We just celebrated our sixth anniversary in May. She told me how she felt the last six months were the hardest point in our marriage. This was difficult to hear from my wife, but I had felt it too. As difficult it was to talk about this with my wife, to shatter the strongman image of myself in her eyes, it was the only way to move forward with our relationship. It was the only way to fix the damage I had already done.

Things after that got better at home. She understood more of what was going on with me, she openly supported me, she pushed me to do better, she encouraged me to work when I needed to do things and it was much harder to hide things I shouldn’t have hidden from her to begin with. She was now on my team against this problem and I didn’t feel so alone.

After seeing the power this open communication had against my depression, I had a few other people I needed to talk to. My business partners deserved some of the same honesty and trust that my wife received when I was finally ready and able to talk about what was going on.  These people have been a part of my life for years too and are more than just business partners, they are my closest friends. So I started emailing them. My business partners and I have a great relationship built on friendship and trust. Nevertheless, it was much more difficult to tell them of my troubles than I thought it would be but I had to do it.

One by one, I patched things up with as many people as I could. My friends were understanding. Our friendships grew stronger and I was now accountable. I couldn’t just hide from these people anymore because they knew what I was doing, they weren’t going to take my excuses and  they wouldn’t let me disappear again. Just like my wife, my friends were very supportive and encouraging. I’m still making amends today but getting closer.

I was still fighting the urge to crawl back into bed every single day but I felt like now I had a fighting chance with a team of great people pushing me back into the real world.

August – Exercise

During the rest of the Summer, I tried to spend as much time away from my bed as possible. I tried to spend time outside in the sun getting exercise. I had put on a little over 20 lbs since March and that wasn’t helping with how I felt. I started doing things I enjoyed again like playing Tennis with my wife and playing at the playground with my kids. My wife’s workout season was in full swing so I tried to tag along with her wherever I could keep up. She’s die-hard in the Summer and it helped motivate me in that arena.

I continued patching things up with clients and friends. Some clients left me and understandable so. No hard feelings. Other clients had their own stories to share of tough times in their lives. I had lots of making up to do but it seemed sharing my personal troubles strengthened some relationships.

With a renewed commitment to my responsibilities, a team of friends and loved ones standing behind me as I stepped back into my life and eyes on the future, I was finally shedding the dark shroud I had worn for far too long.

September – FINCON12

The next step was FINCON12, a personal finance blogger conference held every year by PT Money. I bought my tickets earlier in the year, booked my hotel room and submitted a speaking proposal that was accepted. This was an obligation I knew I couldn’t cancel now and something I was actually excited about. I decided to speak at FINCON to stretch my comfort zone and being someone driven by a challenge, this lit the fire deep down inside me again and I felt really good about it.

As FINCON quickly approached, I got more and more excited about it. I was excited to see my old friends, clients, and meet new people. I was nervous about speaking but in a good way, a way that I hadn’t felt in ages. My speech was coming along and working on it, working on the speaking topic I picked out, made me realize I still have something in me to share with others. I still have expertise that is generally valued and knowledge I should share. Preparing for my speech and working toward FINCON gave my confidence a kick-start it needed badly.

I still didn’t feel mentally 100%. I was still struggling to tackle certain tasks like email and was still behind on some projects so I decided to take it easy at FINCON. The prior year, I had pushed myself to build new relationships with as many people as I could. This year, I relaxed and enjoyed the sessions. I took everything in. I took three notebooks full of notes and didn’t push myself to meet everyone in attendance. I kept to myself more than I wish I had, looking back now, but I still spent most of my time talking with old friends.

When the time came for me to speak, the thing I was most worried about was that no one would show up. I had 30-40 attendees and the conference room I was in, a rectangular room with me at one of the short ends and a video camera at the other, with seats between us, was comfortable and looked more filled than it actually was. That helped.

I ended up rushing through my speech a bit so had more time for questions, but attendees brought up some great questions and the time sped by. I stumbled on my words a few times but overall I couldn’t help but feel good about my first public speaking gig.

The rest of FINCON was a blast…oh, except for being fired

As we drove home from FINCON, ideas were swirling in my head like crazy. I came up with and outlined the ideas for two books, wrote up everything I want AntiNecktie to be, came up with some ideas for several other projects and felt really great. I felt like my old self again. I felt like I could do anything again.

October – Getting Caught Up

Even though I had lots of ideas for new projects and connected with a few new and potential clients at FINCON, I still had tons of catching up to do. I had clients to make smile again and family business long overdue. It was time to get caught up. I made a big to-do list on my IKEA whiteboard and got to work.

I couldn’t believe how great I felt again. I still had some bad days but all the things I quit my job for were there waiting for me. I started making the best of every minute with my wife and kids. I started spending more time with them. Not just being in the same room, but actually made time to spend with them and did fun things that we will remember for a long time.

I gave my clients the attention they deserved. I started answering emails within hours instead of within days (or months in some of the worst cases). I did my best to get organized again and kept on top of things better. My to-do list started shrinking, slowly but surely, and I felt like the sun was shining in my life again.

By the end of October, I was mostly caught up with clients and finished a few overdue family and personal projects.

November – Balance

I still had plenty of work to do and knew to continue to pay my bills, I’d need to get even more work. I also knew that if I piled things on again, I might break and be back where I started, overwhelmed and looking for a place to hide mentally. Throughout November, I did my best to balance my work, family time and mental breaks. I took on new work but only work I knew I could handle with ease. I didn’t take on any new challenges that would strain the balance I was looking for.

I also went through the services I offer to clients and pruned those that weren’t worth the money for me anymore. When I decided to freelance full-time, I revved the engines and would do anything for anyone, online. Some of these jobs weren’t taking advantage of my expertise, they were just something I could do. Since anyone could do them, I couldn’t charge anywhere near what I charge for things that I specialize in so I was spending an inordinate amount of time doing things that brought in pennies. That had to stop if I was to balance my life.

Balance is something I think everyone struggles with their whole life. I feel better about the balance I have now. I take enough personal, offline time as I need without letting my mind slip into a stupor. I keep better track of what I do and how much time I spend on things. I keep better tabs on my contact accounts (email, twitter, etc) so clients don’t ever wonder where I am. And I try to communicate what I’m feeling better with the people around me.

December – Wrapping up the year

I won’t say much about December other than it was great. Things continued to improve at home and with clients. I signed a few new clients, was able to satisfy their needs and make them happy which felt good. Over delivering has always been important to me. I have to make clients so happy that I’m the first person they think of when they need something or when their friends ask them who they can trust.

Christmas was great. We spent it enjoying the company of family, mine and my wife’s. The kids got their first pets. I worked a few days before and after Christmas but made sure I didn’t schedule anything during when we would be spending time with family, so I didn’t let anyone down when I wasn’t online.

What this experience taught me

I’m not invincible. I thought I was. I thought I could take on the world and I had no limits.  I had never experienced anything as difficult as this past year was for me. I learned that I’m not the only one affected by my mental state either. I never thought I’d be unable to take care of my family, but that’s exactly what happened this past year. I had become dead weight in the family and dragged everyone down with me. I never thought I’d be the sole cause of that much difficulty for those around me.

I learned that I have limits and I have a good idea of what they are now. I know now the kind of projects I need to avoid to keep my sanity, the kind of time I should set aside for my mind to recharge and for my family relationship to grow.

I learned how much I rely on others every single day for support and encouragement. I learned how many other people play a part in my business and life.

I was truly humbled by what happened in 2012.

Acknowledgements

The people in my life did so much for me this past year, I can’t thank them enough. Thank you to my wife and kids for being there for me when I needed them, for doing their best to understand what I couldn’t, for loving me through the misdirected anger and hostility. I love them so much and get up in the morning just to see their beautiful faces.

Thanks to Crystal, my business partner and friend who text when I avoided email, who called when I avoided text, who wouldn’t let me disappear no matter how hard I tried and who trusted I would come back throughout it all.

Thanks to Ninja who helped me continue to dream big and who encouraged me to focus on my expertise and cut things out of my life that were dragging me down.

Thanks to my clients who were patient with me, who were understanding, who shared their own stories with me and who let me make things up to them.

What happens now?

Now, I press forward. I built a successful business pre-2012 and 2012 was a rough patch that I have to move on from. I won’t forget what happened in 2012 and how wrong things went but I am thankful for everything that I learned along the way and use that knowledge to my advantage. AntiNecktie will embody everything that went right and everything that went wrong since I started working online.

Check out my expectations page to learn more about my vision for AntiNecktie. Read over my about page to learn more about me and my life, my experiences. Head over to my Failures page to see what things haven’t worked and why. Connect with me through social media or send me an email.

Please, leave a comment. Share this with someone you know that’s having a hard time, let them know that it gets better. And thanks for reading.

42 comments