Articles

Building a Simple CRUD Application with Express and MongoDB

If you know me, you know that I started learning about the web without having gone through any computing courses in university previously. I didn’t dare to venture into server-side programming for a long time because of my background.

I remember when I eventually picked up the courage to try, I had such a hard time understanding the documentations for Express, MongDB and Node that I gave up.

One year later, I finally understood how to work with these tools. Then, I decided to write a comprehensive tutorial so you won’t have to go through the same headache I went through.

Everything I know about Responsive Web Typography

Responsive typography is a tough nut to crack. This was the best method I could come up with when I first started creating responsive websites:

p {
font-size: 16px;
}

@media (min-width: 800px) { p { font-size: 18px; } }

/* Repeat for h1 - h6 and other type groups */

I’ve learned a lot more about typography since then and picked up best practices like using relative units, vertical rhythms and meaningful typography scales.

These new practices were wonderful. They made my websites look more pleasing to the eye. Implementing them, however, was a horrible experience.

I had to write complex code and I found myself struggling to create responsive websites under tremendous time pressure.

Now, after months of hacking, I’ve finally created a solution that I’m happy to share with you. It’s called Typi.

Typi is great because it allows me to use the practices I’ve learned, and at the same time solves most of the problems I’ve encountered in 3 simple steps. Let me explain these three steps by walking you through the practices I use when working with responsive typography.

Year End Review – 2015

2015 has gone by in just a blink of an eye. I realized that I haven’t been taking stock of my life for the past 27 years. So, I decided to do a year-end review for the first time to end 2015 completely, and the begin 2016 anew.

Animating SVGs (CSSConf.Asia talk)

I gave a talk about animating SVGs in CSSConf.Asia 2015. The video is finally ready and I’m super stoked to share it with you! Have a look and let me know what you think! :)

Trolls & Expert Opinions – Lessons Learned From Publishing on a Popular Website

I recently published an article on Smashing Magazine. For those who don’t know, Smashing Magazine is a well respected website in the design and development world. It’s kind of like Lifehacker or Tiny Buddha, but for web designers and developers.

I was incredibly proud of the article I published. It took weeks of effort and I was elated that I made a contribution to the world. I went to sleep feeling awesome about it.

Unfortunately, I woke up feeling horrified when I looked at my twitter notifications the next day. Many people (mostly whom I don’t know) commented on my article, saying how “the author doesn’t know what he’s talking about”, that “it was a bad article”.

Even people whom I know and respect said that they felt “confused and bizzare” that an article like mine appeared on a well-curated website like Smashing Magazine, and they were “getting worried” about the contents of the article.

The same happened under the comments section on Smashing Magazine as well.

What a great start to the day. What would you have felt, or did?

Website Layout Tools Compared—Flexbox Vs. Susy

Flexbox has become one of the most popular tools for creating website layouts. Susy is another layout tool that has gained popularity with the Sass community over the last few years.

Many developers I’ve spoken with are unsure which tool is best for creating layouts for their websites. Some feel that flexbox is powerful enough to handle all of their layout problems. However, they are unsure whether to learn it because of its confusing syntax. Others feel that Susy is much simpler and prefer its simplicity to flexbox.

Overcoming Your Fears

“Thanks for helping to organize Devfest.Asia!” Someone said to me as the largest community-organized web developer festival in South-east Asia draws to a close. “I really enjoyed it!”.

I should be happy when I hear things like this. Right? Well, I thought so too. But I didn’t feel it.

Deep down inside, instead of happiness, I feel a stab of pain whenever someone thanked me for organizing Devfest.Asia.

Strange, isn’t it? I couldn’t explain this feeling for a long time.

Now, I finally understood what has happened, and how it affects my life. I’d like to share this story since it might affect yours positively too.

Note: This would be an interesting read if you are someone who constantly feels you’re not good enough, or you haven’t done enough. For the rest, you can stop reading here now.

Migrating From Bootstrap to Susy

One of the most asked questions I get about migrating from Bootstrap to Susy is this: “How do I build a Bootstrap-like grid with Susy?”

I feel that if I answer this question, I’ll be leading you down a path that I don’t agree with. That’s why I hesitated with answering this question previously.

In this article, I want to tell show you why this is a wrong question to ask, and what to do instead.

What to add to your Gitignore File

What files should you push up into a Git repository? What files should you ignore? These are two questions that plague most beginners when they’re learning about Git.

We’re going to explore these two questions in this article so you’ll never have doubts on whether you should ignore a file in the future.

How to Modularize HTML Using Template Engines and Gulp

Template Engines are tools that help us break HTML code into smaller pieces that we can reuse across multiple HTML files. They also give you the power to feed data into variables that help you simplify your code.

You can only use template engines if you had a way to compile them into HTML. This means that you can only use them if you’re working with a backend language, or if you’re using client-side JavaScript.

However, with Node.js, we can now harness the power of template engines easily through the use of tools like Gulp.

That’s what we’re going to cover today in this chapter. We’re going to find out what template engines are, why we should use them, and how to set one up with Gulp.

Hold on while i sign you up…

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