Apologies for the trivial nature of this post. When it comes down to it - who cares if you use tabs or spaces for indentation? However, I've recently changed over sides in the age old argument, so thought I'd write about it anyway!
Sorry to go slightly off topic for this post, but I have a huge piece of news! Last week, my wife gave birth to our first child! A beautiful baby boy, whom we've named Jack!
Whilst debuggers have become more and more powerful over the years, simple debug output traces certainly still have their place in many situations. Logging out information at certain points in your code can tell you a lot about what's going on, especially when trying to debug an issue.
I've just moved this blog from my own blogging solution to the new Ghost Platform. As mentioned in the above post, I love writing in Markdown, and had decided to write my own solution as there wasn't anything at the time I was happy with. That was until I found Ghost. Whilst happy with my own solution, there were a lot of things I wanted to improve, but just didn't have the time to do.
For quite a while I've been planning on posting a list of my favourite software, apps, plugins, etc. I'm quite a heavily user of software tools to aid productivity, and would like to share what's in my toolbox.
I was re-motivated to write this post when I saw Scott Hanselman's post containing his list. There's a lot of overlap between his list and mine, but hopefully not enough to make my list not useful. Any overlap is due to the greatness of the software - not because of any list copying! ;) Scott certainly has a lot more in his list - which makes me wonder how long his system installations take! Anyway, I decided to copy his layout of a big long list, rather than separating the categories into different posts. It makes it easier for me to maintain, and also provides a one-stop list in one web page.
I'll keep this post updated as I find new gems. Please feel free to add comments with your suggestions and thoughts! Note that I'm a Windows user, so this list is very Windows specific.
A couple of years ago, I wrote a slightly negative post about Evernote, complaining about a lack of support for the tab character and also about various buggy aspects with regards to its handling of formatting. I did say at the time that if it wasn't for these small issues, I thought that Evernote would be amazing. I also said that I would write another blog post raving about it if these niggling issues ever got resolved.
Since writing this post, I've discovered a new blogging platform called Ghost. This is Markdown driven, and perfect for what I need. So I've decided to switch and use this instead. More details can be found in my more recent post about the Ghost platform.
Before reading this, I'd recommend reading my previous post, which goes into the core differences between different Version Control System (VCS) features, with a very strong emphasis on Git.
I started off intending this post to be about the opensource Git-Tfs project. I've used Git at home for both personal and freelance projects for quite a few years, but at work we unfortunately use TFS2008. To allow me to use some of the power of Git at work (at least locally on my computer), I've turned to Git-Tfs.
I quickly realised that in order to explain my reasons for wanting the extra functionality of Git over TFS, I would first have to explain how some core features differ in different Version Control Systems (VCSs). So I decided to split this into two posts - one about Git and VCSs in general, and the other about Git-Tfs. The second post about Git-Tfs can be found here.
In the previous part of this series I introduced some very basic concepts of Vi, including some very simple navigation commands. These do not even scratch the surface of what Vi can do. There's no doubt that learning Vi is a huge time commitment before you can begin to use Vi effortlessly. There really is so much to learn. The important thing is to take it one step at a time. Learn the basics and drill those, then slowly add more commands to your commandset over time. If you program for a living, then you're writing code all day long anyway, so you have a lot of typing time to enforce Vi commands into your subconcious muscle memory.
In part one I discussed using the HJKL keys instead of the cursor keys and also introduced a very small number of basic navigation commands. In this post I will introduce the Vi registers.