I started learning to code nearly a year ago in October 2018. Here's the advice I'd give to myself if I could go back in time and speak to past Olivia.
Document everything you learn.
Before I started learning I read a lot of articles and posts that encouraged students to keep a blog to document their code journey. With working full time and squeezing in at most 2 hours of coding a night I thought it'd be too much effort so I didn't.
I regret this.
Since I was short on time I could have been short with words, too. I should have just created a Twitter account to document my journey. I created a Twitter this month to document what I'm doing and I wish I had done this sooner.
Join dev communities.
I didn't know that so many existed online and they've been a great source of information, encouragement, wisdom, and support. Now I'm on a couple of Slack channels, Twitter, dev.to of course, and I've joined some tech organizations. They keep me accountable and excited about programming. I also have joined some tech meetups in my area. Being self-taught it's especially important to get together with other devs in real life to talk about programming and get used to interacting with other tech people.
If you're programming to get a job learn about other job skills and the interviewing process earlier rather than later.
I think a lot of newbies neglect this, and it's so important especially if, like me, this is more than just a hobby; it's a gateway to a better life and a fulfilling career.
Learning and doing enhances confidence.
I still don't feel super confident about my programming abilities but I've learned that knowledge and action are excellent ways to boost confidence. I've let my lack of confidence keep me from coding when I've had the time or opportunity to do so because I felt stupid or inadequate. This only reinforced my feelings of stupidity and inadequacy. Learn as much as you can and you'll feel empowered to learn even more and to build more.
Believe you can and you're halfway there.
Learning to code can be scary. It's frustrating and failure is inevitable, but if you keep faith and persevere through the challenges you will grow to be an awesome developer!