Five Reasons Why I Use Vim for All My Coding

1. It forces me to learn to be more productive A few days ago, I needed to perform a simple copy and paste of some Javascript. For such a simple task, I wanted to know how to perform it as efficiently as possible. While a simple (command + c), (command + v) would have done it, I wanted to instead use the single key commands (‘y’ and ‘p’). The first challenge was to learn how to quickly select the block of code which I wanted to copy. The Vim wikia has this great article on copying and pasting within Vim....

Five Lessons I’ve Learned from Failed Personal Coding Projects

1. Comment well enough so that you can read your code in six months My first personal data mining code base was horribly commented. Fast approaching deadlines put so much pressure on me to produce code quickly. I remember thinking I could come back to the Java code at a later date and comment it. Oh boy, I was wrong! I eventually came back to this code base and got lost in my own code very quickly. A new deadline was approaching and I needed to use the code base. This resulted in multiple all-nighters of slowly losing my sanity...

How Machine Learning Can Locate Bugs in Source Code

Machine learning has been used to perform some nifty tasks. My favourite is locating bugs in source code. We data scientists often refer to this as software defect prediction (SDP for short). I’ve been involved in SDP for 4 years now, constantly making improvements to the existing machine learning algorithms used for SDP. I reckon I can do a pretty swell job of explaining it… So grab a cup of coffee and a biscuit and by the time you’ve finished your snack, you’ll understand how SDP works! Step 1: Measure Existing Source Code Software engineers have invented a ton of software metrics which are used to...