Before making a server, I thought coding was cool, but had never done much beyond running some basic programs. Making a server gave me clear goals that helped me learn coding much faster. "I need to figure out how to add custom bosses so my server will be more fun!" is much more fun and interesting to a teenager than "I need to figure out how to remove a Car object from this list of Car objects". There's also the very important social aspect - seeing other real people enjoy code you wrote is extremely satisfying.
And you can do really cool stuff with servers that teaches you real things, moreso than any class could. My own experience writing a ton of custom code for my Minecraft server taught me things like Unix, Redis, MySQL, web dev, reading obfuscated code, networking (like running 8 servers and writing code to pass players from one to another), deployment, basic security, pathfinding algorithms, writing scripting engines, etc. etc. all of which I had no experience with before, and would not have learned for several years otherwise. I'm graduating with my master's in CS now and still haven't been taught in class many of the things I had to figure out to make what I wanted to make. The few other devs of big servers that I knew had similar experiences - started off as beginner programmers, and gained a huge amount of experience from building out a passion project.
Maybe the fact that you figured it out is an indication that it doesn't have to be taught in a CS curriculum. Most of the things that you mentioned have great documentation and tutorials outside of the classroom. The fact that so many people use them without them being taught in schools should be proof enough. I think the current situation makes sense -- Computer Science education should focus on teaching the fundamentals of algorithms, data structures, discrete math and how to think conceptually about problems without regard to implementation. By learning about data structures and the like, you indirectly learn how best to use memory, redis, MySQL, write servers and whatever else.
A data scientist is a statistician who can program or a programmer who understands statistics at a high level.
It's amazing how few CS people become data scientists, I think physics and economics degrees are the most common degrees among elite DSs I know.
but it actually makes a lot of sense - it's relatively easy to pick up coding. In fact, it could be the best-taught skill on the internet, there's no shortage of material for a person who wants to learn to code. I think that most CS people don't learn enough statistics to really pursue DS and a ton of people with advanced stats knowledge can pickup coding relatively easily.
Now when I talk to kids, I tell them that if they want to go to college, they should try to learn something they can't learn on their own.
I wish more CS/programming classes, particularly pre-college, were game-oriented. A Java course I took in school had us writing a 'database' command line app that held fake enrollment information. Had that kind of thing been the only exposure to programming that I was given, I almost certainly would not have entered the field. But show someone like me a way to automate or expand something like Runescape or Minecraft? That, I'm interested in.
Me neither. That said, in retrospect, I believe university is more similar to real jobs that people give it credit for - the tedium only gets worse in a typical dayjob. As much as I hate "fake enrollment DB" exercises, they're pretty accurate description of how the work looks like.
(I used to want to go into gamedev professionally; due to various life events I went a different way. Judging by stories from both HN and IRL people I know from the industry, I may have dodged a bullet here.)
Yeah, you can get there that way but it’s a slog, and the reward is a long way off. That’s not like work. At work you get a regular paycheck even if enrollment DB isn’t thrilling.
I saw an open source class called nand to tetris where students had a semester to create a machine that could play tetris, starting with only nand gates. I thought that seemed like a much more fun progression for computer hardware than the undergrad courses I took. I would love to discover something similar for programming but so far I haven't found it.
Simple 2d game
To do app
Implement a clone of x with something extra of your choosing
Top Twitter celebrity app using its API
Building a search engine
Creating a programming language
Our database class did use databases, but we had no integration of the two subjects.
Creating the 10000th Conways Game of Life? Developing some crappy game on my own? No, thanks.
Developing something for an existing game? That would have been great! I'm all with you.
Soon after, I got into a French MMORPG called Dofus and I absolutely loved it (maybe even a bit too much?). But since this was an online game, there was no cheat codes for it. After days of searching on the internet, I joined a few small communities of other kids that were learning programming in order to write bots for that game.
It was so much fun, and got me to learn about so many aspects of programming: reverse engineering, network communication, "AI", pathfinding, complex user interfaces, RSA authentication, security (the game had a lot of anti-bot technology), making a lexer/parser in order to have my own scripting system for users and so much more. It was messy and I kept rewriting all my code as I learned better ways to do things, but it was so rewarding having hundreds of users and a community around it.
I am now a professional programmer thanks to this, even through what I was doing wasn't particularly ethical or fair towards other players and the devs of the game. But I was too young and was having too much fun to understand that. I stopped once a friend got sued by the game company for making and hosting a server emulator.
Fortunately, "moddable" is a genre and people want it, so it can't be killed completely. Kind of like how adding IAP "makes more money", but "doesn't have IAP" is a genre people want, too.
I understand things change, income is different between jobs. I am not passing judgement on the fact that you transitioned away. It would be awesome if teachers were paid as well as a web dev.
As a teacher, I was working 70 hr weeks to get lesson plans in place and to grade work. Summers were booked for summer school. Every minor "vacation/break" was filled with catching up on everything. I worked with socio-economically challenged inner city kids whose families (generally) saw no benefit to an education. The pay was terrible. After 5+ years and if I were not the sole income for our household, we might have been able to eek by. As it was, we were in a debt cycle that we could not have escaped. I would never have been a home owner.
After becoming a software developer, in my first year, I made as much as a teacher with 20 years experience and a doctorate. Fast forward several years, and I out earn superintendents. I can actually have a mortgage and plan vacations with the family and help my kids with expenses.
This comment sums it up => "I'd consider it if I didn't need a four-year degree.", (https://news.ycombinator.com/item?id=20101794)
The type of work, though, and skills required are quite different, regardless of that they technically both develop and involve 'technology'. Semiconductor lithography requires a pretty exciting mix of skills starting with plain physics (classical and by now a bit of quantum optics), materials science, mechanical engineering, data analysis/science, software engineering (both for simulation and analysis of production of lensing systems), and I'm sure I'm missing half. It is quite different from "writes software for a software company", which is the framing I had interpreted from the comment I originally responded to.
2. Professionalism - all of the teachers I saw and talked to under 65 were treated like dirt, and were micromanaged instead of being treated like professionals
3. Barriers to entry. By the time I got my Master's and decided I'd rather teach high school than spend several more years getting a PhD, it was financially impractical for me to go back for more years to get a teaching degree. It was also very difficult to find internships and open positions. One guy I know who did a straight teaching degree interviewed almost a HUNDRED TIMES despite doing incredibly well in his program and student teaching at a prestigious high school.
I'm sure the kids are doing fine without me, but I had stellar reviews from every kid and parent I ever worked with, and from professors I TA'd for. People have told me my whole life I should be a teacher (came up again just the other day with the guy I was pair programming with). I'd happily take less money to be a teacher, but when you add in factors 3 and especially 2, it just isn't worth it to me. I'm not going to suffer a bunch of professional abuse and take a financial hit to boot to do something that my society doesn't seem to genuinely value.
However, you might be interested to know that the most successful business in my neighbourhood actually operates an online high school. A friend of mine in another city also operates an online high school and seems to be doing quite well for himself. There appears to be a large market for such services.
Especially if you also have web development skills, the internet provides a platform to be a teacher independently, resolving the second and third points. The first point probably depends on your business skills. However, seeing how well that aforementioned business in my neighbourhood is doing, the potential upside is huge.
It doesn't even have to be programming. One of my best friends started doing little gigs for clans/teams and designed their websites. Each game had its own little eco system back in the days where you could offer/buy anything from scripts, to websites and skins.
I wrote a plugin to fix an issue we had on our server, then got asked to do some work on the server's website to show news and in game stats.
Wound up on the admin team helping to run it. Built a number of plugins for it. Learnt a lot of Linux/ server ops through it, and the importance of backups.
And it helped me get a job. I showed off an Angular based editor I wrote for one an achievements plugin. The plugin exported data on available triggers and rewards ("is person in this area", "do they have this item equipped", "give them this item", "spawn this mob near them"), and the editor turned this into a GUI anyone could use to quickly make/edit achievements.
Back in the day, I actually talked to somebody in one of my C++ classes who made (IIRC) around $50k in a year running some kind of gaming server. I looked into it at the time, but it didn't seem like my cup of tea. I might revisit the idea. I suspect that these high-dollar figures are outliers, but it could be a good way to get the kids some valuable real-world experience and maybe they can make a few bucks so they have a little bit of spending money.
You can make some mini games with their game creation IDE but no servers
People tend not to consider the positive impacts of gaming, but I think there's something to be said for MMORPGs. Runescape has a complex economy, captivating story telling, and complex inter-player dynamics - in other words, a consequence-free playground that prepares kids for real life.
When I first started playing the game, I remember spending many hours aimlessly walking around. It felt like I was an explorer of old; I'd come across something new every hour. That feeling persisted throughout the years as I unravelled new experience after new experience: learning to become a merchant, joining a clan, killing a challenging boss for the first time, and so on. Compared to the day-to-day boredom of middle school and high school, perhaps it is only natural that kids gravitate to these online worlds.
It's absolutely understandable why kids gravitate to these online worlds but I regret the time lost in games and if I could go back I'd really limit my gaming to brief, enjoyable sessions, and invest my energy to more challenging and ultimately rewarding things. Building skills, building real relationships.
The best man at my wedding was a friend I played video games with that I met online (in "clans"). In fact, I'm sitting in a Discord server right now with about ten people that I've sat in a chat server of some sort since I was 14 years old (I'm 34 now). We meet up several times a year at different locations for vacations. Some of us now live close together and regularly hang out with each other's wives and kids. We still game together on a near nightly basis.
Maybe the relationships are only superficial and shallow if that's the level of effort you put into them.
WoW, by far the most successful and influential MMORPG ever made, has a large API surface for displaying in-game information and automating certain actions, and it has a large mod scene that takes advantage of it.
That's pretty much exactly how good and sustainable software business in the B2B world tend to start. As a HS student it's not very likely that you know much about the healthcare, legal or whatever domain but it is very likely that you "live" in some game domain.
I think there's some potential in cultivating this spirit and moving on to real world problems. Maybe something as silly as "talk to your family, what jobs do people have, are there painpoints you can identify, how would you solve them".
The good thing about games is that there's no bureaucracy involved and feedback loops are fast. It can be frustrating if you write an automation script that makes a task someone solves by doing manual steps (Excel entry etc.) easier and then not have it rolled out or having to wait half a year to get a report if it improved things etc.
I personally know multiple people that were fired from multiple jobs each because they would regularly call in or show up dead to the world specifically because of WoW. At one point I had 2 room mates, both got fired within a week of each other and would stay up playing WoW being incredibly loud in the living room for 18-20 hours at a time, often disturbing my sleep.
This is not an uncommon thing. People get incredibly addicted to these sorts of games chasing fictional lives, not contributing to society, letting their health slide into oblivion and even often spending actual money to purchase in game items. There have even been deaths and murders directly attributed to such games.
There is a reason people don't focus on the positive, those with negative impacts on their lives far outweigh those with positive I imagine.
Intro to Programming or how to develop an anxiety disorder wondering all day if your script broke or you got banned.
Now imagine if he tried to learn java by attending a class for it - i.e. sitting there for an hour listening to some guy explain how a for loop works. Chances are he would be bored silly and never get anywhere with coding. I think its important for people learning how to code to have a genuine motivation behind it - have something you actually WANT to build. Don't just learn it so you can get a job.
Ironically, I always believed the importance of the schooling but recently started to think maybe learning by doing without the necessity is easy to forget. Maybe we need new education methodologies.
Programmers are not different from other professions no matter how special you may feel.
I find it odd how offended you seem by my post.
I don't think that programmers are any different from other professions in this sense. But the subject of this thread is about programming which is why I commented about that. It is just like other STEM subjects in that - a lot of people study them at university, but only a few people actually go on to work in the field they studied. Some studies find that only around 25% of STEM graduates actually go on to work in the field they studied.
Instead you provided an insult and then gave anecdotal evidence.
Like the author, I got into creating Runescape bots for a bit - but never works to sell them, just made my own for fun and (in-game) profit.
As I dove deeper into the world, I came across people who would purchase a monthly VPS and install botting software on it. There were plenty of guides on how to go through - but no easy solutions for those who weren't technical.
Realizing I had an opportunity to capitalize on this - I built up a hosting company dedicated to the Runescape botting niche. Each VPS would come pre-installed with all the required software and make it dead simple to begin botting within 5 minutes or so.
At my peak, I think I had over 100 dedicated servers each running anywhere from 4-16 VPS on them. Some of my customers were using it to level up their personal accounts, others were running gold-farming operations.
The business was fairly passive, and I learned a ton from the experience. Things eventually came crumbling down when the creators of Runescape broke the bots (This would happen on occasion, but things would be up and running within a day or two normally) for a long time. I had to shut down as all my customers left overnight.
I would also appreciate at least a small effort to not glorify their actions...but what are you "calling out"? 13 year olds who botted some gold 10 years ago?
But I think your auto-typer was really one of the only "allowed" 3rd party programs, and auto-clicking was never really enforced strictly.
When the bots got advanced, they pretty much had two methods via either injection or emulation of the entire game. So either they broke them through making a bunch of fundamental changes of ingame systems or the ability to connect to the servers.
It wasn't exactly my entry, as I had programmed stuff before, but I learned a huge lot during my university time while writing a database site for World of Warcraft, which also had a distributed data collection mechanism by which hundreds of thousands of users could upload data gathered while playing the game to my site, where it would all be distilled into a database, of which a special, minified copy was then compiled and offered to be downloaded by the players right into the game, to be used while playing as a knowledge base. And alongside of that, people could query the database via a web frontend that used all the latest shit (it was 2007 or 2008, AJAX was a big deal back then, reactive layouts were in their infancy, but I had one, and I even wrote a 3D model viewer in the browser and something like Google Maps to view pre-rendered maps of the game world that looked like satellite images). That thing was 60k LOC Java (data processing and website), 30k LOC Lua (for the addon in the game), about 5k LOC ActionScript, some hundred lines of PHP and Bash scripts, and about 5-10k LOC of C++ for the native client to do data uploads and downloads.
I eventually sold it for about 60k€ including maintenance, and maintained it as a side project for 7 years total (most of the time I was also actively playing WoW) and then it was abandoned because the site didn't catch on enough among the competition, and the game itself assimilated lots of the functionality provided by my in-game database (which was named MobMap and did catch on massively with the players, I counted at least 1.1 million installs over it's lifetime) so that successful service became redundant over time and was eventually discontinued as well.
But that project brought me lots of experience. Different programming languages and runtime environments and contexts, operating a multi-server infrastructure all by myself, using the latest web tech before there were frameworks that did all the hard things for you, maintaining a codebase over a long period, reverse-engineering (to get some of the data out of the game you had to reverse the original game data file formats, and since they changed with every patch, that was a continued activity done by a very small community of people in obscure online wikis, to which I eventually started contributing), updating large numbers of client installs in a secure and reliable way, processing gigabytes of raw data per day into a concise database (I think it was about 50GB XML incoming per day and the final DB was 4GB MySQL - and it was pre-SSDs, so I had to work all in memory with that DB to get the insert and update speeds I needed), this project had it all, and I continue to draw from those lessons in my job today.
Now I find myself on the wrong side of 30 with a collection of useless money and assets slowly coming to accept that I’ll never have that ideal lifelong relationship with someone that matters. Soon I’ll have more years behind me than there are ahead and anyone I find will never have the shared experience of being with me during my prime years. They can never be a life partner now, they are simply a partner joining me as I age and go downhill from here.
I wish I had spent more time on the hunt when I still had my entire life ahead of me. So if that’s what you did, don’t worry, it works out better in the end.
It's not too late, and most people will spend most of their adult life above 30. The only thing that is better about being under 30 is less wear and tear on the body.
You have already figured out that money and stuff aren't the things that really matter, and that's worth a lot. I encourage you to keep looking.
Find someone who interests you, who is of similar age and experience -- someone who has also figured out that money and stuff aren't what matters. Yeah, you'll probably try multiple times and find that it doesn't work out (for whatever reason). But if you have reasonable expectations, keep trying, and honestly look for someone to give your love too, there's a good chance you'll find them.
One thing that might help is to find ways to serve others -- in a way that does not benefit you (except the satisfaction of really helping someone). Pick a charity or an organization that is doing something that interests you, but also benefits others. That could be a good way to find someone who cares about the same things you do.
Or just find a group that has events related to a hobby you have, or a sport that interests you -- anything casual and low-to-no-pressure, but is still an "in person" thing.
Worst case you do help some other people, and/or have some fun doing hobbies/sports/etc. Best case you find someone you want so spend the rest of your life with. I think it is worth the effort. so I encourage you not to give up.
> Soon I’ll have more years behind me than there are ahead and anyone I find will never have the shared experience of being with me during my prime years. They can never be a life partner now, they are simply a partner joining me as I age and go downhill from here.
You have it all wrong. Your "prime" is what you make of it. Thinking that someone couldn't be a lifelong partner because they entered your life past your prime will only set you up for unhappiness. I don't know you but I truly hope you do find someone whom you feel you can call a life partner.
I met my wife when I was 34 (married when I was 39) and I can’t imagine anyone I’d rather spend my life with. The only downsides are we’ll be a little older than average at college graduations, will be tired helping out with any grandkids, and are unlikely to celebrate a 75th wedding anniversary, but the game is far from over.
You’re not even to halftime yet... The grass is pretty damn green on your side, too.
My own path was to start dancing, a tough one like argentine tango, since it requires full mental awareness. Which in effect means that you always come home with a grin from side to side. This will be true with any form of activity that actually makes you focus.
You always have the rest of your life ahead of you, it's up to you to make something meaningful out of it. Don't set out to find a partner but rather your passion (that involves other human beings not computers), and love will find you. And as others wrote, it's a bit of luck involved, but you have to give luck a chance to strike you.
I guess it's never too late, regretting stuff is always a downward spiral.
For me it solved the puzzle of the meaning of life. After a couple of years I had a dance where everything just flowed perfectly. I clearly remember the feeling of 'dying' and being 'reborned'. That is now my point of reference going forward.
Do you have your health? Are you fit?
Because if you've taken good care of yourself throughout all these years, you can definitely get yourself a great life partner.
If not, then you might have to work on it.
Either way, change your outlook if you want to attract quality. People with options won't want to voluntarily subject themselves to this persona, it's miserable, learn to love yourself.
The combination of good health and fitness, financial stability, no debt, no kids, no divorce, is exponentially increasingly rare and desirable with age. It's a hell of a catch, a damn unicorn.
When I was in my 20s I found fit cougars undesirable as all hell, in my 40s now when I see a fit single woman over 35 without any kids, no divorce, no drama or evidence of crazy, I get very interested. It's the same for women. If you make it into your late 30s and beyond without getting trapped with a bunch of baggage and are in great health, you've dodged multiple bullets! You just have to put yourself out there and meet members of the opposite sex (or same if that's your preference) who are in a similar position and discover your real prime years.
My guess is some HNers who have taken on said baggage but haven't yet found themselves single again are having difficulty agreeing there's a substantial disadvantage to having it, should they be back on the market. The reality is it severely limits your options the more there is.
To be honest, I think that's how you become good - by working on your own stuff. I feel like my skills are rotting at work. I work with "cool tech," but I basically "learn it" for long enough to implement it and never look at it again.
I understand where you're coming from but this is also a harmful mindset for anyone coming into the profession - I have been careful to emphasise to the people I'm tutoring to not make my mistakes and sacrifice life outside of work in the pursuit of "better" coding skills.
But that doesn't preclude practicing in the same general area as other people with similar interests. And even if you end up practicing for 4 hours a day entirely by yourself, there are still 12 other waking hours you can spend doing things with other people.
I genuinely despise the change that lead to who I am. But as I write this I also realize that it was all me and this is just a bunch of self pity and I'm being a whiny little bitch that should not be scared of doing stuff for fear if not being as easy/able to as when I was younger. Fear of failure? Possibly. Probably. I'm too drunk to keep going and need help. Or money so I can take some time off and work on myself physically and mentally.
I ended up becoming a moderator on the RsBot forums and I remember Autofighter Pro when it came out. Super popular, and I didn't even realize it was made by someone the same age as me back then!
Anyways, even though I didn't make any money (I gave my scripts away for free!), I did learn a lot. I'm currently an engineer at Google and I honestly owe it to the incredible monotony of playing Runescape.
I think it's really a great way to get into programming, since it's SUPER rewarding to make the computer game work for you especially if you can sell some of this work afterwards. I know for some people it can be viewed as a shady practice, but I regret nothing ;)
Just a thought to put things into perspective.
That's a good reason why this activity (writing bots) is not seen in a negative light even if it may cause problems for the company running the game and/or other players and the game economy.
There are white-hat hackers out there and people driven by passion, but even Richard Stallman has enough income or social capital to lead a decent life. Being a paragon of virtue is a luxury predicated on meeting a minimum living standard.
You make a similar dismissal of people being virtuous, saying that they can only be virtuous since they otherwise can afford it, thereby implicitly excusing anyone else’s non-virtuous behavior if they aren’t feeling rich enough at the moment. This is similarly seductive argument, but it has real practical limits. If you are stealing bread because you are starving, that’s one thing, but as soon as you go a little beyond that, it’s certainly on you to live up to your own ethical standards.
I’m pretty convinced that anti-Bitcoin sentiment will be forgotten and/or disdained in a few decades.
I have not seen a single post praising the author's unabashed ruthlessness to make money illegally through the company's efforts.
All stories have multiple perspectives that everyone can relate to, agree with, and disagree with. In this case, many more people feel a relation to the story and want to voice it. If there is a large part of the community that disagrees with the author's way of going about it, either they are not as passionate about their disagreements, or did not wish to comment on the article, but these things are not mutually exclusive.
It's only when the person is framed to be in opposition to us that we stop doing this and start complaining.
That's why you can have people loving Iron Man as a character when they would hate him in real life. In fact the character's creator explicitly wrote him as a personal challenge: someone who went against the morality grain but whom audiences would learn to identity with regardless.
Of course the kid was hardly a monster for making bots but he did play a part in hurting the game and players who didn't cheat, and is cheered for it.
It most certainly takes motivation (I say passion) to become a self-taught programmer. I think the "larval stage" (http://www.hacker-dictionary.com/terms/larval-stage) is critical. That transformation makes you a different kind of programmer.
I am also a self-taught programmer, but I came at it from a different angle, long before this internet age. I wasn't hacking on games (although I did do that sometimes). I was hacking the machine (PC-XT!) and the OS and software that ran on it. I was fascinated. I went from command-line, to scripting, to Microsoft C, and then it took off from there, and I've been at it professionally uninterrupted since 1990.
I didn't go back to school for CS, though. I wish I did, and am happy to see other people here have. I think that's important. I had to teach myself all the best practices (thank goodness for "Code Complete") or learn them on the job.
This probably isn't 100% kosher, but this kind of story is a good indicator when hiring. If you ask how someone got their start and it's this kind of self-motivated journey they invariably make good employees. Over the years we've most certainly noticed there is a significant difference in value between someone who chose programming because it's a job and someone where programming chose them.
Back in my day, games weren't online, and I didn't really have the hardware to do them justice, nor the money to buy good hardware or games either. I remember playing Wolfenstein 3D from a cover-disk in a tiny postage-stamp sized window. At school we used to pass around cover-disks because we couldn't all afford to buy every mag.
Anyway, I kind of started programming from the get-go, and for a long time, programming _was_ my game. By the time I got to uni I found myself writing modding tools and editors for various games that my friends played or wanted to make mods for.
By then I had somehow found myself in a 'rogue' part of a very big company. I was surrounded by contractors making £60/hour so I started my own contracting company and was soon making way more money than I've ever made since.
Once I graduated I went into normal being-an-employee mode, and things have been getting financially worse ever since.
So its interesting, scary and confusing to read this guy's account of how he dropped out of school and has set up a stream of companies to sell his small products. Interesting, obviously. Scary, because I fear that some young people are reading it and thinking "I don't need school! I can make money!". Its the same way I get all scared when my daughters tell me how much youtubers apparently make. And confusing, because I can't spot the value in any of the products and stuff he has created recently. I guess I really don't get this whole social online world?! Perhaps I went in entirely the wrong direction all those years ago when I went and got a normal job?
Good luck to him!
Not sure what advice I'd give to a young kid now, though. To be honest, I'm not very keen on being an employee. But would you tell a kid to drop out of school and try and get funding for an app they sell to colleges etc?
Most don’t. It’s nothing new.
> Once I graduated I went into normal being-an-employee mode, and things have been getting financially worse ever since.
> Scary, because I fear that some young people are reading it and thinking "I don't need school! I can make money!".
Um... did you need school? You skipped the part where it helped you. (And were explicit that it hurt!) Why did you leave your personal contracting company?
When I went back to uni, I set up my contracting company and continued to work for them, but now as a contractor. I even managed to get on their 'preferred supplier' list, which was a really major coup. Anyway, it paid for uni.
The only way to play on a 286 without game-breaking stuttering visuals. Oh how far we've come in such a (relatively) short time.
When the project started, my partner and I (that's right, the $700 was for both of us) thought that $700 was an enormous sum and that we were being very clever. (This was in 1984).
After two years (18 months of which was after my partner left for college) I finally was able to bring the project over the finish line.
This made me laugh out loud, it reminds me of the prizes Atari would give software devs via Atari Program Exchange (APX) contests, some of which teens won, which would be a few hundred bucks (or sometimes more) of credit for hardware usually, plus royalties on sales of the software
Anyone remember SCAR?
Every morning before school and every afternoon when I got home I would check on my bot to see it either:
- Murdering chickens/Mining/Cutting wood
- Stuck on a tree
- Stock on the log in screen
I just remember how carefully i had to debug those scar scripts. A bug could waste night of botting, or worse do something suspicious and get your account locked.
I worry that kids growing up today have fewer opportunities like this.
It led to a passion for process automation, both hardware and software.
The one thing I could never overcome were the people in my surroundings - family, school, work ... they all said I was a cheat and if I cheat at video games what else wouldn’t I cheat at, why stop there. I haven’t noticed one comment regarding the ethics or morality of process automation for video games even though almost all games ban it under TOS. Would be fun to have a game encourage scripting.
That's what happened to me. I started playing games, then modifying them, then writing my own, then the coding consumed all my time.
Racing Sims like Assetto Corsa have a decent sized modding community with people designing and coding new car models, modifications to the physics/handling, audio packs, tracks/maps, etc.
Flight Sims are the same, and lots of other Simulator games.
As for open world games... Skyrim, GTAV, Empyrion, Space Engineers, Terraria, Starbound, are all moddable and have thriving communities.
Then there's the entire Steam genre of moddable games: https://store.steampowered.com/tags/en/Moddable#p=0&tab=TopS...
Modding is very much alive and well. I'd suggest just finding any of the above games that interest you and having a play with the mod system. I find it a very entertaining and interesting way to learn more about programming due to the specific constraints of each game.
Both fiction and non-fiction.
I highly recommend ‘Exit Strategy’.
1) Search screen for pixels within the color of bones
2) Pick up bones
3) Bury bones
My prayer level went through the roof! Then they implemented "sleep", a system where each action added a bit of "exhaustion" that could only be solved by walking to a bed, sleeping, and typing in a captcha in order to wake up. Killed my bots! But not my love of programming :-)
I wonder where this is happening today, for the next generation of developers. Roblox seems like a big one, are there others?
(I also remember that I became inactive, and then some scammer hacked my account, which may have left a bad taste in your mouth because you thought it was me)
I love the concept of making interesting bots for games that aren't originally intended for bots, but it's becoming harder and harder to do so given the issue of cheating. Makes for a major risk to a project that is already hard to justify doing. I believe Blizzard has sued someone for making and selling a game bot, so there is precedent for legal trouble as well, which is very unfortunate for hobbyists.
Regardless of how you started: good for you, and good luck with your career!
The cover of one of their issues is really something to behold: https://www.newyorker.com/books/page-turner/the-very-unnervi...
A lot of people I collaborated with ended up working in the games industry, either on games like Unreal, or in journalism. I ended up working in the enterprise, but from the many bad stories of life in the games industry, perhaps it was a lucky escape :)
I credit a good portion of my career success today to Runescape-centric experiences in CS, Business and Community Politics.
Thank you Andrew Gower + JaGeX team for creating a game much larger than itself.
But amazing stuff and self-taught is kinda how many get into coding. How I got into IT back in the 80's. The aspect of bailing out your parents, that is something to be extremely proud of and a life achievement anybody can respect.
Gaming is also one of the main things that got me into web development and programming too.
One of my first real projects beyond a Geocities personal site was a gaming ladder in 2000ish that a friend coded and I designed. It was basically a SAAS app for people to schedule, report and rank competitive Quake 3 matches. That project alone helped kick off a career in freelancing and I haven't stopped in nearly 20 years.
How did you manage to hide the money from your family and friends when you were still keeping your programming secret, before you told your parents? Did you have any problems getting certain bank accounts or cards because of age restrictions?
My background shares some similar elements of yours during the same time period albeit with a different game, Habbo Hotel, and a lot less money :-).
In a few years we'll start to see more from the Minecraft and redstone generation.
Never really manage to write the full bot, didn't know English well enough and the resources in my language were poor ;-(
I started at age 12, with QBasic and VB6, writing Trojans because that was what fascinated me at the time. A few years later, when .NET was introduced, I moved over to VB.NET. At the time, I was playing a web-based game called "BootLeggers.us". When I got into an accident, my leg was messed up, and I couldn't move off of a couch for a few days (stairs were not possible), I was still young and alone @home for a week because my parents were on holiday. I laid on that couch for 3 days, playing BootLeggers on a laptop, with my arm on a side-table. The worst position ever. I did this nearly 3 days straight, and it was when I first got carpal tunnel. I couldn't do anything for quite a while because it felt like my arms were on fire all the time :-/
Some time passes, and I can use a computer again for a bit, without too much pain, but I was no longer able to play Bootleggers, since I could not stay on the PC for that lang due to my carpal tunnel.
The game is basically a set of actions you can do every X time. I had written small 'timer' applications that warn you when your next action is available, and I thought: why not automate a bit more of the game, since I can't play it for the duration I want to myself, so I started creating an application to do so. I've spent about a year and created a bot that could do everything in the game. It used an embedded webbrowser that was fully automated, so it was not detectable. You could play the game yourself in the application, and if you'd stop, the app would take over and continue playing, that way you could do complex interactions with people yourself if you wanted, and add some non-obvious behaviour, making it harder to detect.
At the time, I was able to run the bot for weeks on end; I had it set up to take around 3 hours of downtime each day to make sure it would be 'defendable' to have a lot of activity, still, my account would rank faster than any other on the platform.
The game then introduced CAPCHAs to the game, and the bot would not be able to continue. So, I created my own OCR engine and got it working again. Over the time, I've written 3 complete new implementations of the OCR engine, each working better than the previous. It was amazing to do and I learned a lot from it. Had a whole crew who I shared my programs with, had it locked down on your CPU serialnumber, HDD serialnumber and mac address to prevent it spreading to people who were not 'authorised', etc.
It was definetively the thing that really made me more in love than ever with programming, the sheer power you wield and adoration you get from people you share your stuff with was amazing.
Only thing that came close to this, was when I created the first online rainbowtable lookup serivce for hacking Tompson modems (got me on national tv news for a feature peace years later as well. It's dutch but you can watch it here if you want: https://www.youtube.com/watch?v=zFfCEe9MuZg ).
Been writing software ever since I was 12, and still love it now. I started my own company finally two months ago after being the CTO of a startup for a year, and I'm so happy I did it, because I feel like, now I might get some time to get into some crazy project again :)
I have so much more to tell, but I think I'll take some more time later on and just write a big blogpost, but it was fun to relive some of that history again :)
Once the author saw the opportunity, he then pivoted to exploit it through a lot of time and effort. It's pretty clear that other bot makers did not see that opportunity, or saw it and did little.
if so, then all the MAC art in the article is slightly curious to me. Totally fine (I am currently a Mac user, and I’m sure the author is now as well) of course.
The answer to why this one is doing well is clear from the comments: a lot of readers found a lot to identify with in the article. That's the important thing, not what site it appears on.