About three years ago, I published a story about how the Twitter app I built in high school, Follow, reached 150,000 downloads in two years. In that article, I alluded to the even larger story about how I got into software. Well, here it is.

大约三年前,我发表了一个故事,讲述了我在中学时期构建的Twitter应用程序Follow ,如何在两年内达到15万次下载。 在那篇文章中,我提到了关于如何进入软件的更大故事。 好吧,这是。


Nine years ago today (wow!) I got my first remote gig writing software. I didn’t have an official title or anything, but I was writing scripts in Java. To give you some perspective, 10 years ago I was in 9th grade, 13 years old, with just three months of self-taught coding experience. Over the next couple of years, I would go on to make ~$200,000 of gross income. Here’s how I did it.

九年前的今天(哇!),我有了第一个远程演出写作软件。 我没有正式头衔或其他任何东西,但是我正在用Java编写脚本。 为了给您一些视角, 我10年前才9年级,当时13岁 , 仅有三个月的自学编码经验。 在接下来的几年中,我将继续赚到约200,000美元的总收入。 这是我的方法。

从游戏到编码 (From gaming to coding)

It all started when I found myself lost in the gaming world. Most days, I would spend the majority of my time playing Call of Duty, Gears of War, Runescape, and whatever else I could get my hands on. All of my friends would meet up on these games daily to play, and we slowly shifted from being outside most of the day, to playing online.

当我发现自己迷失在游戏世界中时,一切就开始了。 在大多数日子里,我会把大部分时间都花在玩《使命召唤》,《战争机器》,Runescape和其他任何我能得到的东西上。 我所有的朋友每天都会见面参加这些游戏,然后我们逐渐从一天中的大部分时间转移到在线玩。

The most addicting game of them all was Runescape. It didn’t take long before I was hooked on this popular online role-playing game.

其中超令人上瘾的游戏是Runescape 。 不久之后,我就迷上了这款流行的在线角色扮演游戏。

For those who don’t know it was built with Java. After numerous times waiting for the game to load, my interest in Java was piqued and this led me down the rabbit hole of software development.

对于那些不知道它是用Java构建的人。 在无数次等待游戏加载之后,激起了我对Java的兴趣,这使我陷入了软件开发的困境。

With every Google search, I started to realize that if I knew how to write code, I could build my own software. That thought alone blew my mind. This was only the beginning, and over the next month my interest in programming continued to grow.

在每次Google搜索中,我开始意识到,如果我知道如何编写代码,就可以构建自己的软件。 只是那个想法让我震惊。 这仅仅是开始,在接下来的一个月中,我对编程的兴趣持续增长。

Not too long after I realized the power of Java, I found a book online called Teach Yourself Java in 21 days. I downloaded Eclipse and got started. The book fascinated me, and although I was still an avid gamer, I found myself growing more fond of my new hobby everyday.

在意识到Java的强大功能后不久,我在21天之内在线找到了一本书,名为Teach Yourself Java 。 我下载了Eclipse并开始使用。 这本书使我着迷,尽管我仍然是狂热的游戏玩家,但我发现自己每天都越来越喜欢我的新爱好。

After school, I would come home, do my chores, play games and code like clockwork. It didn’t take long for me to put my new programming skills to use. I wrote scripts that scanned documents, built random GUIs, and even wrote software to complete my math homework.

放学后,我会回家,做家务,玩游戏和打发条。 我花了很长时间使用我的新编程技能。 我编写了脚本来扫描文档,构建随机GUI甚至编写软件来完成数学作业。

At that point in my life, it was like having a superpower that nobody knew about. Excited, I told my friend that I was learning Java and urged him to learn with me. He shrugged it off and stuck to gaming. At that moment, I knew I’d be alone in software, so I continued on my own and nobody knew — not even my family.

在我生命中的那一刻,就像拥有一个没人知道的超级大国。 我很兴奋,告诉我的朋友我正在学习Java,并敦促他与我一起学习。 他耸了耸肩,坚持玩游戏。 那时,我知道自己会独自从事软件工作,所以我独自一人继续工作, 没有人知道,甚至我的家人也没有 。

深入研究编程 (Digging deeper into programming)
Months went by, and I started to become frustrated with the speed at which I was progressing in Runescape. So, I started to go on the hunt for cheats. To my surprise, there were many macros, bots, and scripts that you could run 24/7 to automatically play the game for you. This fascinated me. I tried every bot I could find, but found that most were garbage. I continued this until I stumbled upon a community that offered a free bot client. It could even run custom scripts. I joined the forum not knowing that within a couple months, my entire life would change.

几个月过去了,我开始对Runescape的发展速度感到沮丧。 因此,我开始寻求作弊。 令我惊讶的是,您可以运行24/7的许多宏,机器人和脚本来自动为您玩游戏。 这让我着迷。 我尝试了所有可以找到的机器人,但发现大多数都是垃圾。 我继续这样做,直到偶然发现了一个提供免费机器人客户端的社区。 它甚至可以运行自定义脚本。 我参加论坛时不知道几个月后,我的一生都会改变。

This community was everything a kid like me could ever dream of! Over the course of a month, I must have tried at least 20 scripts. There were some that cut wood, some that fought monsters, and others that did quests for you. It was amazing what these bots could do automatically without any supervision.

这个社区是像我这样的孩子梦could以求的一切! 在一个月的时间里,我必须至少尝试了20个脚本。 有的砍柴,有的与怪物搏斗,有的为您服务。 这些漫游器在没有任何监督的情况下可以自动执行的操作令人惊奇。

I noticed the scripts were in Java but hadn’t considered trying to make one. Shortly after using those cheats, my account was permanently banned for reasons other than botting (just my luck). I was completely broken. I remember being in my room, on the verge of tears because the account I had spent hours and hours of my life on was banned. I begged Jagex, the company that made Runescape, to lift the ban but they wouldn’t, and I was out of luck.

我注意到这些脚本是用Java编写的,但并未考虑尝试编写它们。 在使用这些作弊功能后不久,我的帐户由于除僵尸攻击以外的其他原因而被永久禁止(仅是我的运气)。 我完全被打破了。 我记得在我的房间里,濒临流泪,因为我花了数小时和一生的时间才被取缔。 我恳求制做Runescape的公司Jagex取消禁令,但他们没有这样做,我很不走运。

把柠檬变成柠檬水 (Turning lemons into lemonade)

For a week straight I was angry, sad, and somewhat confused. I was angry and sad for obvious reasons — I had lost something of value to me. However, I was also confused. What would I do now? How would I spend my time? What would I tell my friends?

连续一个星期,我感到愤怒,悲伤和困惑。 由于明显的原因,我感到愤怒和悲伤-我失去了一些有价值的东西。 但是,我也感到困惑。 我现在该怎么办? 我将如何度过我的时间? 我要告诉我的朋友们什么?

There were many questions, but I had no answers. It wasn’t long before a lightbulb switched, and I decided I’d make a new account. My idea was that I could use the cheats I found to level up to my original accounts stats, and fast. I was on a mission to get back to where I had fallen from, but there was one problem.

有很多问题,但我没有答案。 不久之后,灯泡就切换了,我决定要重新注册一个帐户。 我的想法是,我可以使用自己发现的作弊技巧来快速升级我的原始帐户统计信息。 我的任务是回到原来的位置,但是有一个问题。

My previous account had high fighting stats, and at the time the community didn’t have many bots that could fight for you. So I went looking. I stumbled upon one bot that could fight chickens, and thought to myself: Why just chickens? Why not any monster?

我以前的帐户具有很高的战斗统计数据,当时社区中没有很多可以为您战斗的机器人。 所以我去找。 我偶然发现了一个可以打鸡的机器人,心想:为什么只吃鸡? 为什么没有任何怪物?

I looked through the code, and that’s when I realized that with a few modifications, you could make a bot that could fight any monster in the game. With my freshly learned programming skills and some added creativity, I created GenericFighter, the first all-in-one fighter bot.

我查看了一下代码,然后我意识到,只需进行一些修改,您就可以创建一个可以与游戏中的任何怪物抗衡的机器人。 凭借我刚学习的编程技能和一些额外的创造力,我创造了GenericFighter,这是第一台多合一战斗机机器人。

After some touch-ups and tests, I was confident that GenericFighter was ready. Any monster that I set it up to fight was taken down flawlessly, and I was excited not only to use it, but also to publish it to the community.

经过一些修改和测试之后,我确信GenericFighter已准备就绪。 我设置用来战斗的任何怪物都被理想删除了,我不仅为使用它而且将其发布给社区感到兴奋。

Within a few weeks, it was one of the most popular bots on the forum and my Runescape account stats were up. I received a lot of praise, but it didn’t end there. I started to get feature request and bug reports. I became addicted to programming, and the rush of building a product that people loved kept me going.

在几周内,它是论坛上超受欢迎的机器人之一,我的Runescape帐户统计数据也有所增加。 我得到了很多好评,但并没有就此结束。 我开始获得功能请求和错误报告。 我沉迷于编程,而急于开发人们喜欢的产品使我前进。

This went on for a few months. The maintenance of the bot forced me to become better at writing code, which ultimately led me to acquire a deeper knowledge of Java. At this point in time, I was completely unaware of the bigger picture. I had no idea the founders of the forums had a plan to take things to the next level.

这持续了几个月。 机器人的维护迫使我在编写代码方面变得更好,超终使我获得了对Java的更深入的了解。 在这一点上,我完全不了解大局。 我不知道论坛的创建者是否有计划将事情推向新的高度。

我沉迷于代码。 人们注意到了。 (I was addicted to code. People noticed.)
I began to spend much less time gaming, and the majority of my time developing my bot. I worked hard, and people noticed. One day, I was approached by the founders of the community. They were building a premium marketplace for bots, where bot makers could sell their scripts. I was skeptical, but I decided to join the cause. Soon after, I teamed up with the owner of RSBots.net to offer a premium bot called AutoFighter Pro.

我开始减少花在游戏上的时间,而大部分时间都在开发我的机器人上。 我努力工作,人们注意到了。 有一天,社区的创始人与我接触。 他们为机器人建立了一个高端市场,机器人制造商可以在其中出售其脚本。 我对此表示怀疑,但我决定加入其中。 不久之后,我与RSBots.net的所有者合作,提供了一个名为AutoFighter Pro的高级机器人。

In comparison to other scripts, AutoFighter Pro was offered at a low price of $12.99. I won’t get into the nitty gritty details of how the money was distributed between authors, merchants, and the founders. But I will say that AutoFighter Pro had over 30,000 sales from early June, 2009 to late October, 2011. You do the math.

与其他脚本相比,AutoFighter Pro的价格低至$ 12.99。 我不会深入探讨如何在作者,商人和创始人之间分配金钱。 但是我要说的是,从2009年6月上旬到2011年10月下旬,AutoFighter Pro的销售量超过30,000。

Sales grew every month, and there was hardly ever a down turn. As the platform expanded, the founders invited more authors and merchants to sell scripts. The once tight-knit group became larger and extremely competitive.

销售量每个月都有增长,而且几乎没有下滑。 随着平台的扩展,创始人邀请了更多的作者和商人来出售脚本。 曾经紧密联系的团队变得越来越庞大,竞争越来越激烈。

It wasn’t long before authors were building copies of others’ scripts and competing over functionality, usability, and price point. Not only were you forced to code, but also to sell yourself and your product. I learned quickly that every detail counts in competition.

不久之后,作者便开始构建他人脚本的副本,并在功能,可用性和价格上展开竞争。 您不仅被迫编写代码,而且还被迫推销自己和您的产品。 我很快了解到,每个细节都在竞争中发挥作用。

I didn’t know it then, but I was balancing between the roles of Product Manager and Engineer. I listened to user feedback, planned features, stayed engaged in forums, and constantly pushed new updates — this was the norm.

那时我还不知道,但是我在产品经理和工程师的角色之间取得了平衡。 我听了用户的反馈,计划的功能,参与了论坛并不断推送新的更新-这是正常现象。

In this game, downtime was unacceptable. Users were not only running these bots for personal use, but their businesses also depended upon them. Selling GP (Runescape’s currency) and high stat accounts was a widespread phenomenon, and you had to work hard to meet demands.

在此游戏中,停机时间是不可接受的。 用户不仅运行这些机器人供个人使用,而且他们的业务也依赖于它们。 出售GP(Runescape的货币)和高统计帐户是一种普遍现象,您必须努力满足需求。

天堂里的麻烦 (Trouble in paradise)

From the summer of my freshmen year to the beginning of senior year, my life consisted of a full day of school, an hour of chores, and a night of coding. To some extent, this affected my school performance, because I was so focused on making a better product. Coding became my priority, and I poured all my time into AutoFighter Pro.

从大一暑假到大三初,我的生活包括一天的学习,一个小时的琐事和一个编码的夜晚。 在某种程度上,这影响了我的学业,因为我一直专注于制作更好的产品。 编码成为我的首要任务,我将所有时间都投入到AutoFighter Pro中。

When it was all said and done, it could fight multiple monsters simultaneously, automatically heal you, auto-respond to real human players, and many more unique features. But as you might’ve guessed, this didn’t go on forever.

一切都说完了,它可以同时与多个怪物战斗,自动治愈你,对真实的人类玩家自动做出React,还有更多独特功能。 但是,正如您可能已经猜到的那样,这并没有永远持续下去。

After about one year of selling scripts, there was a lawsuit against the founders. They fought hard for another year, but ultimately lost the case a few days before my 17th birthday. This led to the closure of all sites that were selling premium bots and their forums.

在出售脚本大约一年后,对创始人提出了诉讼 。 他们又奋斗了一年,但超终在我17岁生日的前几天败诉了。 这导致所有销售高级机器人及其论坛的站点被关闭。

I’ll be honest: when I first started, I didn’t plan on telling anyone about what I was doing. I was excited because things were taking off, but I was also nervous because I didn’t know what I needed to do.

老实说:刚开始的时候,我并没有打算告诉任何人我在做什么。 因为事情正在腾飞,我感到很兴奋,但是由于我不知道该做什么,我也感到紧张。

So whom did I tell first? I told my Mom. Her reaction? Intrigued, somewhat confused, and a bit concerned. She didn’t understand what exactly I was doing, how I got into it, or why people paid for it. My Dad also had the same reaction, but they were happy for me and as long as I was protected legally, so they supported it. I never told anyone else until I graduated High School.

那我首先告诉谁? 我告诉妈妈了 她的React? 感兴趣,有些困惑,有点担心。 她不明白我到底在做什么,我是如何进入的,或者人们为什么为此付费。 我的父亲也有同样的React,但是只要我受到法律保护,他们都会为我感到高兴,因此他们对此表示支持。 我直到高中毕业才告诉别人。

At this point you’re probably wondering, what did a kid like me do with all that money? To name a few things: I helped clear family debt, took my family to Disney World, and invested in myself. In hindsight, this opportunity couldn’t have came at a better time for my family and me. It was during the last U.S. recession, and like millions of others during that time, we had our struggles — but I’m proud to say this softened the blow.

在这一点上,您可能想知道,像我这样的孩子用这些钱做了什么? 仅举几例: 我帮助清除了家庭债务,将家人带到迪士尼世界,并投资了自己 。 事后看来,对于我的家人和我来说,这次机会来得更好。 那是在上一次美国经济衰退期间,和那段时间的其他数百万人一样,我们也进行了挣扎-但我很自豪地说这减轻了打击。

游戏和编程改变了我的生活。 (Gaming and Programming changed my life.)
I’ve been coding, designing, and managing products ever since. Shortly after I stopped working on the bots, I took my extra free time and learned Android development.

从那时起,我一直在编码,设计和管理产品。 在我停止使用机器人后不久,我花了额外的空闲时间学习了Android开发。

In February, 2012 I launched Follow, an app for Twitter that tracks who’s unfollowed you, whom you don’t follow, and who’s followed you. Within a few short months, the app reached 20,000 downloads. I wrote about how it reached 150,000 downloads, and today it has over 200,000 downloads.

2012年2月,我启动了Twitter的应用程序Follow ,该应用程序跟踪谁没有关注您,谁没有关注您以及谁关注了您。 在短短的几个月内,该应用程序达到了20,000次下载。 我写了有关它如何达到150,000次下载的信息 ,今天它已超过200,000次下载。

After three semesters in college, I dropped out to start Puricode — a product company. We wanted to build products for small businesses and start-ups and release our own internal products. Our first project was Runn, an on-demand delivery app for colleges. We launched a beta test on Wayne State University campus that got a lot of buzz, and led to us cold-emailing Mark Cuban and negotiating an investment.

在大学三个学期后,我辍学创办了一家产品公司Puricode 。 我们想为小型企业和初创企业开发产品,并发布自己的内部产品。 我们的第一个项目是Runn,这是一个针对大学的按需交付应用程序。 我们在韦恩州立大学校园内发起了Beta测试,引起了广泛关注,并导致我们冷酷地对待马克·库班 ( Mark Cuban)和进行投资谈判。

After two years, we stopped working on Runn, and focused on other opportunities. In addition to my own ventures, I’ve engineered at some great companies: Nexient, Ford, Nima Labs, Gigster and Bird.

两年后,我们停止在Runn上工作,而专注于其他机会。 除了自己的事业外,我还曾在一些伟大的公司工作过: Nexient , Ford , Nima Labs , Gigster和Bird 。

I’m now in Santa Monica, working on CodeSigned — a creative technology studio and lifestyle brand. I’ve been blessed to have the opportunity to do my favorite childhood hobby as a profession, and I couldn’t imagine doing anything else.

我现在在圣莫尼卡,从事CodeSigned (创意技术工作室和生活方式品牌)的工作。 我很幸运能够有机会做自己超喜欢的童年业余爱好,而且我无法想象要做任何其他事情。

Thanks for reading!

没有账号?注册  忘记密码?