Articles

How to overcome your fear of JavaScript

JavaScript is scary. It’s scarier for you if you taught yourself how to code without having a proper programming background. It’s even more scary if you tried to learn it many times before through books and courses, but you’ve failed every single time.

“I don’t get it. I’m smart, but why can’t I learn JavaScript?”

“Can you really learn JavaScript without going to school?”

These questions keep popping into your head. It gets even scarier by the minute, doesn’t it?

Don’t worry, you’re not the only person who tried to learn JavaScript and failed before. I did too. Many people are like us. We failed trying to learn JavaScript before, but it doesn’t mean you’ll never succeed. You can.

The first step to learning JavaScript is to rid yourself of the fear you’re facing. That’s what you’ll learn in this article.

Read more

How to get hired as a junior web developer

It seems impossible to get a job as a web developer. Each job ad you see says need to know React, Vue, Angular, Node, Gulp, Webpack, Sass and plethora of skills you may have heard about, but don’t understand at all!

Is it possible to get hired without knowing all of them? Can you learn on the job? Will you get rejected for not having enough experience? And how much experience do you really need? 2 years? 5 years? Or more?

Can you even get a job without spending three years coding things yourself? Can you win boot camp graduates without going to school yourself? Why is it so hard to get a job as a web developer?

In this article, you’ll find my thoughts about getting a job as a web developer. You’ll also hear how I found my first job as a developer.

Read more

Should you use this in JavaScript?

Many people feel that this is incredibly confusing. Because it’s so confusing, they argue that this makes JavaScript complicated, and you should avoid them like a plague.

But does this really make your JavaScript complicated? Should you avoid using this?

Read more

How to think like a programmer

“I don’t get JavaScript. I can’t make components from scratch. My mind goes blank when I stare at a blank JavaScript file. I guess I can’t do it because I don’t know how to think like a programmer”.

Sounds familiar? You’re not alone, my friend. Many people who tried to pick up JavaScript as their first programming language faced the same problem.

Heck, even developers who are already coding in another language face the same issue with JavaScript too. Instead of “I can’t think like a programmer”, they say “I can’t think in JavaScript”.

But no more. Let today be the day where you learn to think like a programmer.

Read more

Remembering what you learned

Have you had instances where you wanted learn something, but it completely eludes you?

I’ve had some of them. One instance was when I tried to learn JavaScript. Another was when I wanted to learn Node and Express.

In each of these cases, no matter how hard I tried, I can’t seem to make the knowledge click on a deeper level. I read books, articles, and tutorials, but the knowledge I gained simply vanishes into thin air the very next moment.

Should I give up? I would ask myself occasionally. Am I just stupid?

But I never gave up on learning JavaScript, nor Node and Express. After spending god knows how many hours trying, I could magically remember the knowledge.

For a long time, I wondered why this pattern kept going on. I finally understand now.

Read more

This in JavaScript

Are you confused by the this keyword in JavaScript? It confuses everyone in the beginning, so don’t worry about it. You’re not alone.

But that doesn’t mean you can go on without understanding this forever. It is used so much in JavaScript and in tutorials everywhere that you need to grasp what this is sooner or later. Once you understand this, you’ll realize that it’s much simpler than you think it is.

By the end of this article, you would have demystified this for yourself. You’ll know what it is, what it does and how to use it.

Read more

Promises in JavaScript

Have you encountered promises in JavaScript and wondered what they are? Why are they called promises? Are they related to a promise you make to another person in any way?

Furthermore, why do you use promises? What benefits do they have over traditional callbacks for asynchronous JavaScript operations?

In this article, you’re going to learn all about JavaScript promises. You’ll understand what they are, how to use them and why they’re preferred over callbacks.

Read more

Callbacks in JavaScript

Have you came across the term “callback” but don’t know what it means? Don’t worry. You’re not alone. Many newcomers to JavaScript found callbacks hard to understand too.

Although callbacks can be confusing, you still need to learn them thoroughly as they form a critical concept in JavaScript. You can’t get very far without knowing callbacks 🙁.

That’s what today’s article is for! You’ll learn what callbacks are, why they’re important and how to use them. 😄

Read more

How to set up your development environment to learn JavaScript

Have you encountered any of these three problems when learning JavaScript?

You get confused with the JavaScript syntax. It’s unfamiliar to you. There are so many variations you don’t even know what is what.

You keep getting errors whenever you write JavaScript because of stupid typo mistakes.

You cannot remember what methods are available. You need to search google even for something as simple as addEventListener.

You’d love today’s article if you had these problems. I’ll show you how to tackle them all in one swoop by setting up your development environment.

Read more

Introduction to commonly used ES6 features

JavaScript has progressed a ton in the recent years. If you’re learning JavaScript in 2017 and you haven’t touched ES6, you’re missing out on an easier way to read and write JavaScript.

Don’t worry if you’re not a master at JavaScript yet. You don’t need to be awesome at JavaScript to take advantage of the added bonuses ES6 gives you. In this article, I want to share with you eight ES6 features I use daily as a developer to help you ease into the new syntax.

Read more

Altering the DOM with JavaScript

If you’re learning JavaScript, the first thing you should learn (after understanding the basics like variables, functions, etc.) is to alter the DOM. This is one of the things you do daily as a frontend developer.

Changing the DOM used to be difficult. We needed jQuery to make things easier. Luckily, there’s no need for jQuery anymore.

In this article, I’ll show you the things you need to be familiar with as a frontend developer.

Read more

Breaking the rules

If you read my past articles on CSS architecture, you would have noticed I took parts of techniques created by experts and mixed them into a set of rules that I follow. Some of my rules helped others understand how to use a technique, while others sparked public outrage (like my unconventional BEM usage. People exclaimed that I broke BEM rules).

I’d like to confess today that I broke more rules than that. Breaking rules is my way of finding out what to take in from techniques mentioned by experts. It’s also my way of figuring what to change to adapt to my personal belief. Today, I’d like to dig into this rule-breaking process.

Read more

Writing modular CSS (Part 3) — CSS file structure

We’ve already talked about writing Modular CSS with BEM and namespaces in the past two articles. In this article, I want to veer away from the process of writing CSS selectors into the mystical art of file structure and organization.

If you’ve ever wondered what’s the best practice for organizing files, how to find any CSS file easily and how big or small each file should be, this article is written for you.

Read more

Writing modular CSS (Part 2) — Namespaces

Last week, I shared how I use BEM to create a sensible CSS architecture. Although BEM is awesome, it’s only part of the solution. There’s another part I’ve yet to mention — namespaces.

In this article today, I want to share with you why BEM isn’t enough and how I use namespaces to bridge the gap.

Read more

Writing modular CSS (Part 1) — BEM

Have you worked on large websites that spans more than a few pages? If you did, you probably realized the horrors of not conforming to a robust CSS architecture. You probably would also have researched on ways to write maintainable CSS.

Since our industry is awesome, we don’t only have one recommended solution. Experts have jumped in and provided us with suggestions like BEM, OOCSS, SMACSS, Atomic Design and many others.

Now, instead of suffering from “I don’t know what to do”, the question becomes: “there’s so many ways. Which should I try?” Should I use everything, only one approach or create a custom architecture from the possible picks out there?.

I started off with only one approach. Then, as I tried different approaches, I began to include what I thought made sense into my process. In this article, I want to share with you how I structure my CSS and why I do so. Hopefully, it’ll help you find your preferred method.

Read more

Should you learn [insert shiny new tool]?

Oh look! Everyone is talking about Webpack now! Should I upgrade my workflow to use Webpack?!

“Hmmmmm… Maaaybe I should use PostCSS since expert X highly recommends it. I can’t decide…”

“OH WOW. FACEBOOK USES REACT! REACT MUST BE HAWT! I NEED TO LEARN THAT TOO!”

Are you familiar with any of these conversations? It’s not surprising if you are! New tools pop up in the frontend world incredibly quickly. Whenever something new pops up, people scream about how cool it is. Even industry experts begin using them. Heck, the expert you love and follow may even recommend you to use them!

Do you feel pressured to try the new tool out? Do you feel like a shitty developer if you don’t keep up with the latest tools?

If you do, you’re not alone!

Today, I want to share with you a simple framework to determine if you should learn/switch to [insert shiny tool]. Read on if it sounds any interesting.

Read more

How to pair typefaces

The act of choosing two typefaces is probably the first (and often most difficult) task you do when creating a new design. Many people get stuck here, myself included.

Recently, I discovered a simple method to pair typefaces effectively and I’d love to share them with you. (Hint: it’s a 3×3 grid).

Read more

Fighting decision paralysis

It’s common for designers and web developers to suffer from decision paralysis. You know you’ve battled with it if you had problems like:

  1. Spending hours choosing the right typefaces
  2. Obsessing over choosing the right framework
  3. Scratching your head over what to learn next
  4. Facing writer’s block

Does any of them sound familiar?

Decision paralysis has been the bane of my life so far. I battled against it again recently and I’m happy to say I finally got out of the rut (today!).

In this article, I’d love to share my experiences with you and how I handle decision paralysis.

Read more

How to read faster and remember more

Reading is a skill I wanted to improve for ages. I wanted to read faster, because reading faster means I’ll learn faster. So, I tried to learn how to speed read many times in the past.

Speed reading wasn’t too difficult. The sad thing is, I can’t seem to remember anything I read, which makes the speed useless.

In 2017, since my theme for the year is experimentation, I wanted to see if I could improve my reading capabilities. This time, I found some success: I read 1.5 books and remembered most of what I read in three weeks.

I’m so elated by the discovery of this technique and I’m happy to share it with you!

Read more

Year End Review – 2016

2016 was a strange year. It was full of up and downs. On one hand, I had eye-opening experiences that taught me a lot about myself. On the other hand, I was horrified at the amount of time I wasted accomplishing nothing, so much that I ended the year loathing myself to the core.

But that’s enough. The new year is here. It’s time for me to recollect my experiences and regrets and move on. This article is a summary of my learnings in 2016 and my plans for 2017.

Read more

Hold on while i sign you up…

🤗
Woohoo! You’re in!
Now, hold on while I redirect you.