Being a web developer is difficult, stressful, confusing, and exhausting. But, it's also very exciting, interesting, and meaningful. I've learned many lessons during my journey of becoming a web developer at a young age. Here are 20 lessons I learned that will help you be a better web developer and more successful in life in general.
We write code for people not machines -- any 12 year old can code and see the pretty output but only a master can write code for people to understand. Remember code is twice as hard to read as it is to write but think of it as the ultimate design document, the single source of truth for a team
As a knowledge worker your role is to amass and disseminate knowledge think of yourself as a teaching professional like a tutor and abandon academic mark chasing ideology in favour of hyper learning
When we talk about DRY we're not only referring to code but also to repeating the same conversations and behavior patterns. Look at your work like an investment not just a trade of services for money -- seek ways to maximize the returns on your efforts and don't be swindled by people seeking to divorce you from the fruits of your labours by forcing you into narrow stereotypes -- they'll call you a ninja talent as a means to lower your guard you feel me?
Take it from someone who has been in software since before dialup everything we do is actually a conversation, it's no coincidence we call them languages and the quality of conversation determines the quality of the software it's a practical view of Conway's principle
Do your best and try to see beyond the curve at the application of computer science thinking to human behaviour after all software is a social exercise and in general a software solution is aimed at creating new communications pathways between people
I wanted to have fun. I built for me. I explored the depths of the internet to get experience with what could be done, and pushed a few boundaries myself. I made games. I wrote appalling code but that didn't matter because I kept moving forward. I built communities around my interests. I just had fun.
I'm going to lose points for this but 15yos shouldn't be worrying about coverage or quality metrics or critique. You're a child. Enjoy it while it lasts.
My second tip is to not get addicted to being in the spotlight. Getting your blog posts onto various front-pages is like cocaine. I mean that. Even after everybody's moved on, you'll still want more and more. That's where burn out lies.
Up- and down-votes are necessary for sorting and moderation purposes, but I wish it was less visible to me. There should be a "noscore" option on HN that hides the scores unless you view individual comments/posts, like "noprocast".
I haven't yet decided if it's absolutely unhealthy in the context of HN comments though. Just thinking aloud but I like to think that I've got something worthwhile to say if I get involved in a thread. That definitely wasn't the case on Digg or Slashdot way-back-when.
But if I'd comment less without the validation, perhaps they're not as worthwhile as I'd like to think and I'm just another karma-whore getting his fix.
If I may, I'd like to offer some constructive criticism, however. The tone of your posts is a bit instructional (self-help-esque) and comes across as marketing. This is why some people are being dismissive of your writing. I'd consider softening up the tone to be more personal and authentic. Personally, I am very interested in your honest perspective on web development and self-directed learning.
Best of luck!
A lot of the lessons you're talking about come to those of us later in life (college, jobs, projects), so it will helpful to you later on when you run into these same situations and have a better understanding how to handle them compared to trying to figure it out/deal with it later.
A few people here seem to be laughing due to age or experience (or lack of experience, in whatever area). Please don't take this to heart, as a lot of us may have forgotten that we had to conquer similar hurdles and deal with these issues and feelings, too. From the people I know around 15, you seem to be doing very well. Please continue on the path, though. Talent can get you to the race track, but hard work will make sure you're at the front of the pack.
It's a bit refreshing seeing a viewpoint from your eyes and mind. A lot of us began in a similar path to where you are, and, at least for me, it's been very rewarding. Things change all the time, cool new stuff comes out, and you're able to do things you thought impossible a year ago.
Reading through your site a bit, it seems you are working on some interesting apps and are solving problems that you'll continue to run into later (DRY, Writing Tests, etc). So far, you're on the right track. You build a house a brick at a time, and so far you're laying a good foundation.
I would actually add a lesson or two for you:
There is no Perfect Solution. Just because somebody really likes Python, or React, or Rust doesn't mean that those are the right languages to use for everything. Each language, framework, or mental-model has its strengths where it will work better than others, and weaknesses where it will not. You are not married to one thing, and no one thing will be the "perfect" solution to all of your problems.
Secondly, release. Playing with cool new libraries and frameworks is fun, but a lot of maturity and project knowledge (as a whole) comes from the big changes that releasing something to public (and making new releases and changes often) brings you. It also requires that you be consistent and learn what and who to prioritize.
Good job so far! Keep it up
You don't need their permission. Write about what you want. If they don't like it, well, nobody's forcing them to read it.
Dude, you got to the front page of Hacker News. That's impressive no matter how you cut it, and suggests you're doing something very right.
1. Not being able to drink at company events :( Intern and team events are sometimes dinner, booze and music. My apple juice was pretty good, and if it when up the wrong pipe then I could get the burn too! (there was actually a time where I never experienced that and deliberately tried to to get a sugary beverage into my nose. Kids, right?)
2. Dodging the education question as long as possible. I once got past two interviews with Mozilla before they realized how old I was. If you tell them your age immediately, they stop taking you seriously. If you tell them after a few interviews it amplifies your interview performance.
3. Short summers. When I interned at Shopify, I only had two months. I did that twice, and that really shows today in my ability to ramp up on new jobs/projects.
4. Quietly laughing at how much money your friends think you make. My friends in high school estimated anywhere between 15 - 50 dollars per hour of income.
5. Constantly questioning whether you were a pity/charity hire. Didn't help that I'm also female. I think when I was hired at Shopify I may have been one of the poorest performing intern by whatever measure, but I ended up with a full-time offer in less than a year. Embrace and accept the brownie points you get just by being young!
+1. I was the youngest in everything I did/achieved, until one day I wasn’t. It’s natural to take the ego boost, but it’s definitely something to introspect about and not get too attached to - I’ve seen the loss of the “young prodigy” label affect some friends deeply.
Any ways, congrats and good luck!
It may be that the level of stress that will cause burnout is lower, but that should be expected for someone who is young and learning to cope with the challenges of work. Not all 15 year olds have the same lives or problems, and it's quite insulting to trivialize OP's experiences based on your own assumptions.
I am now 17 and I now realize that if it wasn't for that situation, I would still be gaming instead of learning a valuable skill.
Many people don't realize gaming can be a futile addiction like anything else.
Broaden your horizons, Mr. "Empath"...
If you're sharing personal experience, that's of course completely welcome, but in that case please frame it that way, rather than as an attack on someone else.
Edit: you've unfortunately been breaking the site guidelines in previous comments a ton. We ban accounts that do that. If you wouldn't mind reviewing https://news.ycombinator.com/newsguidelines.html and sticking to the rules when posting here, we'd be grateful.
Or do you think something like I've stated doesn't/cannot happen?
Meant this to be an example of other ways "burnout" can happen.
Best of luck for your future Josh, I can't imagine what it would be like to have such technical experience and insight at such a young age.
By now the thread is decisively positive. That's because other readers see those reflexive reactions, have a WTF reaction themselves, and show up to express the opposing point of view. Perhaps ironically, that double negative ends up being much more positive, and those comments tend to end up the more highly upvoted.
I do however find the blog post a bit silly, because I'm pretty sceptical if you actually know what you talk about. I'm currently not even 30 and I've gone through two burnouts and I promise you that the issue isn't with not walking around the office every once in a while. I seriously doubt that you have experienced a burnout especially considering that you're not really even alle to bill for customer work due to your age.
Same goes for working with a team and resolving conflicts. The way you talk about the issues make it very clear that you do not have any real world experience in those matters.
I don't want to be dismissive and I know that this sounds likenit though. It's alright to write about your thoughts on issues, but you also need to realize that due to your age and lack of experience, you're not really in a place to give anyone advice on the matters.
So to be brutal, I don't think you should've posted this as in my opinion it shows immaturity on your part which invalidates a lot of what you're writing about. It's a long road you've got ahead of yourself and I hope you find the introspection within to see what I'm trying to convey.
A lot of these negative comments here have ground, but you should keep your head high and continue developing your skills and character! I wrote a lot of stuff like this when I was younger and got similar criticism. You're doing great for sure, but you might find yourself cringing at this a few years in the future! What you've written and worked on so far is indicative of very positive future growth.
You have a typo on the "Write For Us" page: "get our of" should be "get out of". A spellcheck against each page in your navigation bar did not turn up any misspellings -- though that wouldn't have caught "our/out."
Best of luck out there. If you're this entrepreneurial at 15, your life is going to be just fine.
> Many game developers are in it only for the final product, and the process is just what they have to go through to get there. I respect that, but my motivation is a bit different.
> For me, while I do take a lot of pride in shipping a great product, the achievements along the way are more memorable. I don’t remember any of our older product releases, but I remember the important insights all the way back to using CRTC wraparound for infinate smooth scrolling in Keen (actually, all the way back to understanding the virtues of structures over parallel arrays in apple II assembly language..). Knowledge builds on knowledge.
This really resonated for me, and might be along the lines of what GP meant. I don't know if that was your interpretation or not, but I thought it was an interesting perspective regardless.
"Not Others Asking For Help" looks like it was supposed to be, "Not Asking Others For Help."
I respect the hustle youre going to be a great programmer
I couldn’t find it.
Never be afraid to ask for the sale.
Learn how to name things.
"Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something."