Live data from Hacker News

Ask HN: As a self-taught developer, what are your self-directed learning tips?

news.ycombinator.com

11–20 of 72 posts

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#11

Do the DS&A stuff. Learn the common data structures and their big-O. Do some Leetcode questions. You quickly discover that there were things you could have done better, and you realize pretty fast that a huge swath of problems are actually solvable with a small number of solutions. Other one is systems. Maybe less relevant for some people, but it's worth having a deeper model for how the OS works. How does virtual me…

Very much agreed on both. Especially systems. There seems to be a hard cutoff in developer productivity and solution finding that is directly correlated to their level of knowledge in this area. There is just something about being initiated into the UNIX philosophy that helps immensely.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#12
post #3

Every five years or so, my wife asks me, "What do you need to learn now for the next 10 years of your career?" If you're self taught, you can teach yourself the next thing. You don't have a solid CS background? You can teach yourself that. Go look at, say, the list of MIT courses for a CS degree. You don't have to take the MIT classes. But which of the things do you know, at least to some degree? The ones you don't k…

How do you learn if you don't take exams? I mean how do you know if you understand a concept if you don't have someone assessing your knowledge

Very few exams I've taken tested anything but the ability for rote memorization.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#13
post #3

Every five years or so, my wife asks me, "What do you need to learn now for the next 10 years of your career?" If you're self taught, you can teach yourself the next thing. You don't have a solid CS background? You can teach yourself that. Go look at, say, the list of MIT courses for a CS degree. You don't have to take the MIT classes. But which of the things do you know, at least to some degree? The ones you don't k…

How do you learn if you don't take exams? I mean how do you know if you understand a concept if you don't have someone assessing your knowledge

Here's my example. I'm currently learning test automation. There are courses for that on Udemy, so I can choose "Test automation with Selenium and Python".

The next step is to google "demo projects for test automation", pick one, and apply that knowledge. If you still need more, pick another.

This will be your proof of basic knowledge.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#14
post #3

Every five years or so, my wife asks me, "What do you need to learn now for the next 10 years of your career?" If you're self taught, you can teach yourself the next thing. You don't have a solid CS background? You can teach yourself that. Go look at, say, the list of MIT courses for a CS degree. You don't have to take the MIT classes. But which of the things do you know, at least to some degree? The ones you don't k…

How do you learn if you don't take exams? I mean how do you know if you understand a concept if you don't have someone assessing your knowledge

I suppose the person that assesses my knowledge the most is myself. You know you understand the concept when you can use it and build on it with other learning.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#15
The best way to learn something is to do a deep dive and present/share it with others. Repeat this cycle. Make it a regular habit.

This could be in the form of a tech blog or giving a presentation to your team. There are also meetup groups, social media, and other outlets. Mentoring junior developers is another great way to stay current.

If you've been focused on front end for a while then try giving a talk at your company about something orm, db, or api related. In doing research you will learn, and you'll find yourself digging for more information to answer potential questions.

In short: help others learn. You'll learn a lot yourself along the way.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#16
In my opinion (others will disagree), the vast majority of CS concepts are not very useful for most software developers. I don't think you should feel bad about that. I consider my time & money getting a CS degree to be almost entirely wasted.

If you're at a large company, look around for open positions that look interesting on other teams and talk to those team leads about what skills they would want. Maybe they'd even be willing to have you on board as a "trainee." If you're genuinely good at self-teaching, you will be an asset even without the skills built in.

If there aren't positions available at your current employer, you'll have to try to decide what skills are in demand and pick one, and you'll have to spend your personal time on it. My approach has always been to build something with the tech I want to learn. Usually just toys (a music player to learn GTK; many garbage video games and websites to learn various languages & toolkits) but sometimes useful stuff, too (a blog post demonstrating reverse-engineering a video game; many little unixy tools to make my dayjob easier; porting a Linux video game controller driver to macOS). In my opinion, just doing exercises isn't a good way to learn or demonstrate your abilities to an employer. Projects you own & and can talk about are way more interesting.

Also, consider that you might just be burning out on tech. I know I'm getting there. Ten-plus years in an industry is a long time, not everyone's built to do the same kind of work for their whole life. I'm keeping my eyes open for something in another field that grabs me.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#17
post #3

Every five years or so, my wife asks me, "What do you need to learn now for the next 10 years of your career?" If you're self taught, you can teach yourself the next thing. You don't have a solid CS background? You can teach yourself that. Go look at, say, the list of MIT courses for a CS degree. You don't have to take the MIT classes. But which of the things do you know, at least to some degree? The ones you don't k…

How do you learn if you don't take exams? I mean how do you know if you understand a concept if you don't have someone assessing your knowledge

Exams mostly don't assess knowledge and understanding, only snapshot regurgitation of facts and snippets. Additionally, when one takes an exam it's rare to require 100% correct to "pass" (and even when that does happen it's only 100% of the sliver of the total subject matter that was assessed). I know plenty of people (as I'm sure we all do) that can pass a test and still be functionally useless in a particular field. Not that I'm against exams (and I'll lump in certifications), I just don't think they're the silver bullet many make them out to be at least in the tech industry.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#18
I’m one of those kids who have been programming since they were 10 years old. My biggest tip is to work on personal projects that you are genuinely passionate about or would use yourself. It’s a great way to experiment with new technologies with practically zero risk. For example, I’m currently working on a web app that started out as a SvelteKit SPA and with two backend “micro services”. I just recently finished rearchitecting the project into a monolith and using Hotwire for the front end. I was able to get experience using both of these technologies risk-free.

As a result of being curious and working on things that interest me, there’s practically no area of software development that I haven’t touched. I’ve written Windows device drivers, firmware for an IoT product, hacked on the LLVM source, wrote a (really basic) hypervisor, and made countless web apps. All with no CS degree.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#19
Pick a new and hot tool in an unfamiliar language or with technique requirements that are not in your comfort zone. Build something with it!

Try out a new IDE, or workflow.

Read some code in an open source project that you use a lot in your current work.

The purpose of all these is to gain a greater understanding of what is possible! This is something as a self-taught programmer I do often.

Re: Ask HN: As a self-taught developer, what are your self-directed learning tips?

#20
post #3

Every five years or so, my wife asks me, "What do you need to learn now for the next 10 years of your career?" If you're self taught, you can teach yourself the next thing. You don't have a solid CS background? You can teach yourself that. Go look at, say, the list of MIT courses for a CS degree. You don't have to take the MIT classes. But which of the things do you know, at least to some degree? The ones you don't k…

How do you learn if you don't take exams? I mean how do you know if you understand a concept if you don't have someone assessing your knowledge

Same way you learn anything, read all about it then use what you read to implement something. When the something you implemented works and solves the problem, you've learned something! Repeat forever with different things (and sometimes with things you haven't done for a while). Each time you learn something new.

Exams are a hacky stand-in for actually using a concept to solve real world problems.

Post reply on HN