I hated Jade as many other Node.js developes do. But I changed 180 after I realized that it has tons of features.
At Storify and DocuSign we used Jade for EVERYTHING. We used Jade even in the browser. There is a little trick called jade-browser. It was developed by folks at Storify. I maintained it for a bit.
The funny thing is that DocuSign team used jade-browser long before they met me. They swear they hired me without knowing that I was involved in that library. :-)
Anyway, after covering Jade and Handlebars in previous posts, it’s time to apply them to do some real work. In this post, I’ll cover:
- Jade and Handlebars usage in Express.js 4
- Project: adding Jade templates to Blog
Getting a job of your dreams might be easier than you think. Apply these five hacks and see for yourself.
Study after study has showed that being satisfied and happy at a job is paramount for a healthy, productive and long life. In other words, if you’re miserable at a job, then other areas of your life will suffer as well: personal life, health, spirituality, family, friends, etc.
Here are the 5 Hacks that will help you to get your dream job:
- Write a book
- Create a strong web presence
- Boost your LinkedIn profile
- Speak at a conference
- Take a MOOC (Massive open-online course)
You can use these five hacks to get the job of your dreams in pretty much any industry or field. And most of them will cost you nothing or close to nothing!
Of course, any of these hacks are useless if you don’t know what your dream job is. If you are not sure, then before reading any further, answer these questions:
- How much money do you want to make in a year or an hour?
- How much maximum commute can you tolerate (e.g., 30min, 1hr)?
- Do you like a certain area of your city?
- Do you want to work with certain technologies or in a particular industry?
- What kind of benefits do you want to have (ideally)?
Go crazy with these questions, let your fantasies go wild… yet remain realistic, otherwise you won’t believe it’s possible.
We are not separate people when we go to work and come back from it. We cannot separate our jobs from the rest of our lives. The quality of your job and its factors are in direct proportion to your happiness and physical and mental health.
So let’s start with my favorite hack.
I’ve wrote how I struggled with Jade, but I had no choice except to master it. However, before beginning to understand Jade, I admired Handlebars GREATLY. I did it mostly for its simplicity and similarity with plain HTML.
If you want to write templates for Node.js apps, then consider Handlebars. This short tutorial will get you started on the path of becoming a pro. And if you haven’t even heard about Handlebars, then you’re missing out big time!
Here’s the outline of this post:
- Handlebars syntax
- Handlebars standalone usage
When I started working at Storify as a Node.js Engineer. The tech stack was Express and Jade. I hate to admit it, but I struggled with Jade a lot!
Before, I mostly worked with Underscore, and Handlebars. I attempted to modify some HTML in the Jade templates. Other times I would only change the text. Those were trivial updates, but very often they cause the whole server to crash.
I was failing miserably to learn by trail and error. I hated Jade. I was starting to hate editing templates as well. Then I had a light bulb moment: I need a tutorial. I went to the official docs. I wish this article existed at that time. After spending just an hour learning Jade, I was able to use Jade and make all the changes to templates smoothly.
Smart people learn by their mistakes, and wise people learn from others. Don’t repeat my folly. Skim through this Jade tutorial to harness the power of this wonderful template language.
The goal of this mini-project is to add a few tests for Blog.
The project is on GitHub at https://github.com/azat-co/blog-express.
We won’t get into headless browsers and UI testing, but we can send a few HTTP requests and parse their responses from the app’s REST end points.
Test-driven development (TDD) , as many of you might know, is one of the main, agile development techniques. The genius of TDD lies in increased quality of code, faster development resulting from greater programmer confidence, and improved bug detection (duh!).
Historically, web apps have been hard to autotest, and developers relied heavily on manual testing. But, certain parts such as standalone services and REST API can be and should be tested thoroughly by the TDD. At the same time, rich user interface (UI) / user experience (UX) can be tested with headless browsers such as PhantomJS.
MongoDB, Express, Angular and Node (M.E.A.N.) is a popular choice for web&mobile applications. By getting on this mind-blowing-massive-value bundle right now, you’ll become the well versed in the M.E.A.N stack.
Nathan made tons of money on apps and books. I had the privilege to meet with Nathan at Gumroad events and at the Pioneer Nation conference. He’s cool.