Level Playing Field

Read this with a grain of salt. It’s how I feel, so put your pitch fork down. I know that this isn’t 100% accurate and there are cases you could point at that prove that. Calm down.

What do the l33t use?

I recently was talking to someone I’ve been teaching/mentoring. He was curious about the tools and methods I was showing him on how to make a web page. He assumed these tools and methods were not what the the professionals use, so he wanted to see how I actually do things. As I was explaining things I realized, maybe not for the first time, that in my field, Frontend Development, we all basically are on the same level playing field. Free tools, open source libraries, all available to everyone, n00bs and l33ts the same (l33t is kinda annoying but it gets the point across).

Code/Frameworks/Libraries

Let’s say you want to write a book. What do you need, and is there anything you have to pay for? Well, you need to know the language you’re writing in. You need something to write on to save it… You get the point.

You want to write some code or a program or whatever? Do you know the language? Guess what, it’s free. You don’t technically need to pay someone to teach you (though it can help). You don’t need to pay for a certificate or diploma. You don’t need to pay to gain access to the language or documentation on how to use it. It’s free.

JavaScript/HTML/CSS, it’s all free and wildly documented all over the internet. You can make a webpage on your computer this moment using any text editor in like two minutes. Using any computer, anywhere. Nothing stopping anyone from doing it.

Companies build things to help themselves and make it available free to the world. Facebook created React, a library for JavaScript that makes building interactive sites so easy. It’s just JavaScript but with pre-written helpers that you use to speed things up. Technically you could not use React and just use JavaScript to do the exact same thing, but React is easier and faster.

AirBnB made some JavaScript testing tools. Other people make tools and just publish for everyone to use. Things like EsLint, Prettier, lodash, styled-components. All free for everyone.

Editors

There are several free code editors out there. Do you need one? Nope., but think of the difference writing a paper for school in the basic text editor on your computer versus using Microsoft Word. Word picks up on spelling errors and shows them to you. It has all kinds of editing options and tools specific for writing documents that a normal plain text editor doesn’t have. Same goes for writing code. Technically you could use Vim, the text editor built i to your terminal(command line) on your computer. But that would be hell! So people made editors specific to the languages of code you write in to be able to pick up on mistakes and makes writing faster and easier.

The two big ones are VS Code and Sublime Text. I follow Wes Bos fairly closely, he makes awesome tutorials for JavaScript and React. Because he does tutorials for anyone wanting to learn he wants to make the learning focused on the topic, not the tools, and doesn’t want you to have you to have to pay for extra stuff, which is why he uses VS Code. Very awesome free editor. Very good for paid programming since you can collaborate on specific project with someone anywhere else in the world. I’ve used it a few times and it has been awesome.

At my work they pay for us to use WebStorm and PhpStorm, editors made by JetBrains. I found that because I have a masters degree my college gives my my .edu email for life. It so happens that the easier way to prove you are a student is to have a .edu email from a big college and that means student discounts or free stuff. I have WebStorm for free with their student program. It does a few things the free editors can’t or haven’t added yet, but VS Code is adding things all the time and can do many things WebStorm can’t. The idea is that, it doesn’t matter though. I don’t need to pay for an editor to code something.

Version Control / Backups

Writing code is basically just some text documents, usually doesn’t take up a lot of storage on your computer. But, it’s a good idea to keep it somewhere accessible and saved off your computer. You might think of other storage places like DropBox and GoogleDrive but that may eventually cost you as well, as you make a lot of projects.

In comes places like GitHub and GitBucket and another one… git labs maybe? They use command line interface (CLI) which, you guessed it, is free, called git. Git is used for version control and backing things up.

While writing a paper for school have you saved it (KittensPaper) duplicated it and made changes to the duplicate? Then you save that with a different name, like FinalKittensPaper. You are versioning your papers. Labeling them to help and making duplicates in case one is deleted or corrupted.

That is what git does, but for code. It lets you keep the good code on a branch while you make a new branch to try changing that code. If you changes are good you can merge them into the good branch and do it again. And those places like GitHub make it so you can save them online, for free, and show them to others and even have others use your code in their projects. That is where you can download all those libraries I was talking about earlier.

More than one way to skin a cat

Another awesome thing about programming is that you can create the same thing in a myriad of ways. You can use differe

Some ways may be worse/better than others but that is the idea. You can do it your own way.

Conclusion

It’s amazing that any computer right now could be used to create just about anything in code. You could download some free software, like code editors to make it easier, but you don’t have to. You could use some libraries other people have written for free, but you don’t have to. You can save it online for free, but you don’t have to. Right now you can code anything anyone else could code, you could create any website just like any other company or person could, in the world. The only difference is what you and they know about programming languages, which again, you could learn for free online. We developers are on a level playing field. It is awesome to know I can pick up any language I desire at any time. I can make a website just as good as a big corporation, if I had the motivation to. I am the only thing stopping me from learning how.