In the project I'm working on right now, we needed a way to disable some input fields based on a condition which is pretty common. I ended up writing a directive to reduce the amount of duplicated code and keeping it clean and simple. However, there was one problem, we didn't use the default checkboxes. Instead, we ended up using the icons from fonts-awesome library (Checked Icon, Unchecked Icon).
I struggled with this question for a long time. It is contradictory in a way that using a password manager should make everything more secure, but using a master password introduces a single point of failure. So is it more or less secure? Given the number of accounts I have created over the years, I would say going with a password manager is the better choice and stop repeating same passwords on different sites. This way hackers can only hack into one of your accounts if they hack into a site.
Recently, the community of React has been exploding. AngularJS 2.0 has not convinced me that it is worth investing time in. So I have decided to start learning React with Flux Architecture. This blog is the summary of my recent learning of React and Flux. I am just writing about my thinking/learning process, so apologies if the structure is not very easy to understand.
Programming is a skill like any other, it is easy to get something done but difficult to do it well. Everyone can learn to code, there are so many resources teaching anyone to write their mobile app or website. So what defines a good developer from the crowed? Here's what I believe.
It is always easy to assume that you've understood something before someone showed you the correct solution. When I tried to follow someone's tutorial on how to create REST APIs using node.js and express.js, I found out I didn't get REST APIs completely right. I have also found out a few more things on the side, which I will also be sharing in this blog.
There are plenty of companies researching into Artificial Intelligence (AI) and Machine Learning. Products such as Google Now, Siri and Cortana are all examples of combinations these. Apart from these big players, the trend is moving toward "vague" software usages, where the user specify something without being very exact. From these non-deterministic instructions, the software will be able to understand and execute and product the correct results. The following are just two examples I came across recently, both are pretty cool.
Started working on a existing project built using MEAN.IO, and Mongoose framework was used as well. I found its documentation a little confusing, so here's what I found out after doing some research.
I have already blogged about bash alternatives, Fish shell and Zsh in my previous blog here. I have only started using Zsh recently due to recommendations from a colleague, so thought I'd give it a try. This blog is mainly focusing on how to make Zsh look nice, so no tutorial on installing it.
A lot of people talks about the benefits of Test-Driven Development, how great it is when you compare it with non-test driven development. People would give a massive list of advantages of using TDD. For me these are the core reasons: