Things I don't know as of Feb '19

List of programming aspects I would like to be better at

📅 Wednesday, February 13th 2019

5 minutes read

Copying Dan Abramov, and writing my version of Things I Don’t Know as of 2018. Well, I'm a bit late, so let's make it "as of Feb '19".

The article above really inspired me. I always felt that my knowledge in web development was falling short, and needed to push harder. Reading an accomplished developer like Dan Abramov, listing the things that he's lacking is mindblowing. It's very easy to feel overwhelmed at times and suffer from the impostor syndrome, so it made me relieved and more comfortable about my progress. One step at the time.

In this post, I'll list things that I actively want to explore more, and add some goals for each one.

Javascript Animation

I'm a sucker for animations. I periodically find myself being amazed by Codepen SVG animations. Anything that moves makes me drool. In the first iteration of this website in React, I tried to animate a Computer booting and writing stuff on the screen:

It felt awesome, but not as awesome as using something like Snap SVG, TweenMax, or Canvas.

Goals

  • Create a simple Canvas animation
  • Create a SnapSVG animation
  • Write a blog post about them

React - GraphQL - Apollo stack

So far, I can say I'm good with React and that I know (thanks to Gatsby) my way around GraqhQL.

Now I haven't utilized Apollo in an application. In fact, I don't know where to start. To be even more precise, I don't know what it is. There I said it.

Goals

  • Create an application with the above stack
  • Explain its use case in simple English
  • Understand the tradeoffs
  • Write a blog post about them

React Native

I have done some work in React native, but it was mostly debugging. I really want to learn more about it, and ship an application in any of Android or iOS.

Recently I tried Expo which is a tool to kickstart React Native applications. It has its limitations - but this depends on the nature of the app you want to make.

That being said it felt awesome developing for mobile devices, and not having to worry about configuration.

Goals

  • Create an application for Android

Node Frameworks

I've set up a microservice in Express, did a demo in koa, but both of these times it was with a nice tutorial on the side.

For back-end purposes, I resort to Firebase or a Headless CMS. Being able to spin off a Node backend is something that I should have under my belt.

Goals

  • Be able to quickly scaffold an Express backend
  • Be able to set up the bare minimum for a functional auth system

Reactive Programming

Streams, observables, oh my.

For sure I've used them in both Vue and Ember, but I don't have the deep knowledge I would like to.

Goals


Regular Expressions

People who can read and write regular expressions are wizards to me. I want to be one too.

Goals

  • Be able to solve the first 10 StackOverflow questions about RegEx found on Google

Web Components

Web components used to be that one thing that "needs so many polyfills, it's not worth my time". Lately, the adoption has been significantly better.

web-comp

Goals

  • Learn about Web Components
  • Try out Stencil

Accessibility / WAI-ARIA

I need to step up my game and have accessibility in mind while developing, as opposed to doing patch fixes later.

Goals

  • Read about accessibility
  • Identify common wrong patterns
  • Make my own cheatsheet for reference

Search Engine Optimization (SEO)

The fact that I can't get my fathers website to Google's front page, is the best testament that I'm doing something wrong.

Goals

  • Figure what holds back the website back and address those issues

Python

  • I learned Python before Javascript
  • An earlier version of my blog was built in Flask
  • I used Python for my university's assignments
  • I did some freelancing in Django
  • I wrote Python scripts for a previous employer

Today, I cannot remember a thing. I don't know where to start. Seems like I never trully learned the language, but knew my way to hack around.

Javascript is nice but I need to be good at a language other than it. (PHP does not count)

Goals

  • Learn the language properly
  • Read about testing in Python
  • Write my very own 3.X cheatsheet

Web Assembly

I did this presentation sometime in 2017. After that, I didn't bother with Web Assembly at all. Lately, paired with Rust it seems to be the new hotness.

Goals

  • Be able to hold a conversation with colleagues about it

Fin

Obviously that's not all. I would like to explore more tools like Electron, revisit algorithms, expand to Web design and so much more.

But let's take a step at the time. We can only do so much in our free time and I would prefer doing Brazilian Jiu Jitsu instead.

jon

Thanks for reading!  ❤️
Next up: My quest for digital minimalism
Previous: Working with images in Gatsby
Due to privacy concerns, I've decided to remove Disqus.
Until I settle for another commenting solution, you can share your thoughts with me via e-mail
Back to Blog