2020 Retrospective: What I'll Keep Doing & What I'll Change
Published: 2021-01-10 17:29:18

Since I started my programming journey in November of 2019, the bulk of my time learning was spent in 2020. I've been blessed to have avoided certain hardships from the pandemic and for that I'm grateful. 

So naturally this really aided the process of learning programming in as relaxed manner as possible. As always, when looking back I can always have judgements about what I did well, what I did poorly, and everything in between.

## What I'll Keep Doing
### Being active in my community's Slack channel
By far this has been part of the 20% that gives 80% of assistance for my learning. Specifically this is the Orlando Devs (ODevs) Slack channel. I am very grateful for the time people have put into responding to my posts.
### Calling my mentor around once a month
For any big decision, such as what programming path, framework, or language to learn, I run it through my mentor. I can get dozens of opinions from ODevs, but it's really essential to give more weight to one individual's advice, not because it's going to be correct but because it prevents hesitation and doubt. Hesitation and doubt increases stress levels and inhibits learning. For myself, it's better to act sooner than later than to bounce around in uncertainty.
### Listening to TechJR
I find this podcast interesting because most other podcasts I listen to have been around for a while and are run by people who have generally been in their industry for a long time. Here I can hear a perspective that's a bit more relatable since the hosts have only been developers for over two years (at the time of this post).
### Listening to Douglas Crockford
My mentor recommended I listen to Douglas Crockford mainly, in my opinion, because he's opinionated and older. I appreciate his candor and the larger perspective he has because of how long he has been around. Particularly I connect with his statement that programmers are emotional just like everyone else and don't necessarily make decisions based in logic. He often cites the slowness of innovation in software for this. To paraphrase him, "We have to wait for the older generation to die off to get adoption of newer, good ideas."
### Maintaining a goal document in Evernote
I have a goal to obtain employment as a front-end React developer. I keep a document in Evernote where, with help from my mentor and one other ODev member [Vincent Tang](https://dev.to/vincentntang), the steps to get there are laid out in order. It's essential to have some kind of plan. The reality is that my plan changed a lot and therefore this document needed to be modified.
### Organizing projects in Workflowy
I really like this app. It makes it really easy to go on tangents and drill down into whatever specific point I might be at. I use it to organize the TODO list for an application as well as writing pseudocode. It's so easy. When I encounter a problem I go down another level and split the problem into two more bullet points named PROBLEM and SOLUTION.
### Work 25 minute spurts with 5 minute breaks
I work in 25 minute spurts because I think it's more effective for long term productivity but also so I can give my eyes a break (I have myopia).
### Scheduling tweets to buffer
This makes it really convenient to come up with some things to say on Twitter in an hour or two sitting and have them queued up for weeks.
### Keeping an engineering daybook
I got this idea from a [post](https://dev.to/germangamboa95/engineering-daybook-d6p) here by [German Gamboa](https://dev.to/germangamboa95). Basically you write down something you learned in the day of programming. I keep it to things that are not 'too' mundane. Think of it as a journal of TIL (Today I Learned).
## What I'll change
### Commenting frequently on Twitter
I'm not a fan of social media, but Twitter is a busy spot for conversations around development. I understand the necessity of getting involved in the conversation. For me though, my focus is to be really clear on why I'm on Twitter and not move my attention to topics that are distracting or inciteful. So the goal is to be more active in commenting on other conversations. The main point is daily.
### Not working past the point of my head hurting
I'm not very good at this. Since I put an arbitrary number on hours per day I want to study, which isn't necessarily a bad thing, I tend to push on even when I could lie down for a bit.
### Not considering a lot of advice/opinions
Since I follow the self-taught path, one of the biggest traps is considering too much advice. I notice I'm in this trap when I start to have feelings of frustration and confusion. I have to exercise the courage to cut-off additional information and realize it's not going to matter in the long game.
### Not going to bed earlier
I've already been a big stickler on sleep. The difference in my cognitive abilities, heck...everything, between the days I sleep well and don't is huge. If I could optimize anything right now it would be to get the best sleep possible. I have to wake at 4am for my day job so my bedtime is 8pm which I usually hit the sack at 8:15-8:30pm. Last night I crawled in at 7:20 and slept great, so probably doing that more might help. Overall I think I'm still too dumb to realize the false economy in programming while fatigued.
### Not focusing on personal projects
I've spent a good bit of time on tutorials, algorithm challenges, etc in 2020. For 2021, after I finish some courses on React, I plan on spending the majority of time creating projects to go on my resume.

And that's it! Let me know in the comments below 3 things you will keep doing and 3 that you'll change. Good luck in 2021!