My Developer Path
Tags: tutorial, beginners, javascript, firstyearincode
Published: 2020-08-11 05:34:11

Just thought I’d share my learning path as a fullstack developer with some alterations, hopefully it’ll guide someone who wants to get into software development. Like myself 5 years ago.

Now in no way is my stack perfect though I always do my research before deciding which to use, and I often mix it up several times a year. Always looking for tech to speed up development.

If you need any help along the way, feel free to chat with me on [Discord](https://discord.com/invite/EvNvnyQ)

### Resources
A lot of the things I taught myself how to use through reading docs, watching youtube videos and following articles just like this one. Before that I bought some courses to kickstart my career. I highly recommend [wesbos](https://wesbos.com/courses), [leveluptutorials](https://www.leveluptutorials.com/tutorials), [DesignCourse](https://www.youtube.com/user/DesignCourse)



Something I couldn’t have learned myself are best practices from working with colleagues on team projects. As well as contributing to open source projects here and there. Don’t be afraid to ask for help.

### HTML/CSS/Javascript
Luckily I’ve already learned the basics in school, I used to make websites using only this stack. Nowadays you can get away with skipping this part and absorbing them as you go along, it helps but not required, you’ll learn these things from most web development tutorials or courses.

### React + Next
Every developer I know is using a frontend framework of some kind, they make our development lives so much easier. I brewed myself some coffee and completed this specific course in one sitting. Some courses may be outdated, read though react’s docs to keep yourself updated with new features.
https://reactforbeginners.com/

I’ve been sticking with Nextjs because it’s a great all in one solution no matter what project you’re working on, I’ve tried gatsby but I wouldn’t use it for large real time projects like your own twitter clone.
https://github.com/ghostventures/halfdone-next

### ES6, ES7 and Beyond
Familiarize yourself with newer javascript features and syntax, eventually every dev will be using them so why not start now.
https://es6.io/

If you’re gonna buy a phone, may as well buy one from this year. If you’re writing a function, may as well use the new supported features.

### NodeJS
Node is practically just javascript, I’m all for using just one language for frontend, backend, and even mobile platforms. I love being lazy, if you’re writing in Java, Swift, Python, and Javascript all for one cross-platform project, kudos to you. Just like in real life, I don’t see the point in speaking two different languages with different people in different scenarios.
https://learnnode.com/
https://advancedreact.com/

### FaunaDB + GraphQL
If you want a database without dealing with the complexities of setting one up,  try out FaunaDB. Personally I’m no database expert and my use cases are pretty basic for now. I found FaunaDB to be very simple and easy to use with little to no abstractions. Lately I’ve made graphql the standard for my APIs, because I’m too lazy to write docs for a Rest API and having one endpoint for your frontend is pretty sweet.

When your project needs more advanced options, then you should aim for the likes of DynamoDB or MongoDB.

### Tailwind
I’m not a big fan of writing too much css, it’s redundant and prone to inconsistencies if not done carefully. So imagine my excitement when I heard of Tailwind, premade utility classes to satisfy most of my needs.
{% youtube 8k165Y0qBN0 %}

### Git
I still prefer using Git apps like Gitkraken, Github Desktop or VS Code’s source control over a command line unless I really need to. The difference is one button click vs 2 seconds to type a git command, my fingers are fatigued enough as it is. Though knowing how to use git commands does come in useful here and there.
{% youtube 20PG7aehR1M %}

### Figma
I saved myself some time by using Figma to mock my designs before starting development, especially since I’m a bit of a perfectionist. I also discovered that my first drafts are always so bad, it takes like 5 redos before I find the perfect design. If I need more design features then I’d switch to using Illustrator.
{% youtube 3q3FV65ZrUs %}

### Typescript
I’ve used flow for a while but I still ran into errors like using the wrong props, when I moved to using typescript across all my projects, things just went smoothly. Type Checking is more strict for my own benefit.
https://nextjs.org/learn/excel/typescript

### Serverless Framework
To be billed the same price for a Nodejs server running 24/7 regardless of whether it’s in use or not, just doesn’t make sense for applications with inconsistent usage. Serverless could save you a lot of money and time, creating backends in separate functions makes things much easier to maintain.
{% youtube D5_FHbdsjRc %}

### React Native
Write an application once and deploy it across multiple platforms, as a web app, a mobile app, or a desktop app, that’s the dream. A dream that’s closer than you think, tools are currently being developed just for that purpose, React Native + Electron, Ionic React. These are stable enough that they’re being used in some popular applications like VS Code.
https://www.leveluptutorials.com/tutorials

### Ghost Developers
My friends and I are teaming up to work on some open source projects.
Like this [NextJS Starter Template](https://github.com/ghostventures/halfdone-next) we’re using on several websites.
{% github ghostventures/halfdone-next no-readme%}

We don’t like to use emails, Join us in [Ghost Discord](https://discord.com/invite/EvNvnyQ) if you wanna talk code, design, learning resources, etc.. 

You can support our open source group on [Patreon](https://www.patreon.com/ghostventures).