-
Invisalign Clinical Check – The start!
After visiting a few local orthodontists for the initial consulations, I booked a clinical check with Pennyhill Dental, Bagshot, which I attended earlier this week. The cost of the clinical check was £350, which would go towards the £3000 total cost (of the ‘lite’ Invisalign treatment) should I choose to go ahead. While this wasn’t the…
-
Scenic View Point in Ibiza – Punta de Creu
Feeling adventurous, I asked the TomTom to take us somewhere scenic – Scenic / Panoramic view! It suggested ‘Punta de Creu’ It wasn’t far from Santa Eulalia, so I thought we’d give it a go! After a drive down some very windy dirt tracks: We arrived here: What a view!
-
Stubbing middleware when testing an Express with Supertest
When testing a simple express app / api I like to use supertest. This can feel like integration testing, and to an extent it is. But we can stub things out with sinon, and tidy up our tests. Let’s look at an example. Suppose we have a simple API with the following router: var express…
-
Samsung UE46ES8000 wifi suddenly not working
I’ve got a Samsung UE46ES8000, which I bought back in 2012. It’s usually fine, works faultlessly. Suddenly, the wifi stopped working. If I went to the network settings screen it would constantly fail to pick up ANY wifi networks (not even my neighbours) I reset my router (just in case) – no avail. Eventually, I…
-
Transparent proxy from node.js app to WordPress for /blog route
For a recent car wash directory start up I have created, I wanted a blog. GetCarClean uses node.js; While there are node blogging platforms, what I really wanted to do, was proxy /blog of my main site, to a WordPress site (actually hosted on a subdomain – blog.<domain>.com) What I did, was to set up…
-
Working with branch deployments with TFS and Octopus
Decide on a branching strategy, and branch the code. This assumes you already have a TFS build set up on your “main” branch Once the branch is complete, it should be something like: $/projectname/Dev Branched to: $/projectname/BranchName Then, clone the TFS build definition you currently use for Dev (or whatever your main branch is) I…
-
Cloning TFS build definition for branches
As part of my effort to allow us to use branches with Octopus deployment, I needed to be able to duplicate our TFS build definitions. I would then create a branch-specific build definition, called something like MyProject – Branch123 I wanted to set things like a custom drop folder for the branch, and, since we’re…
-
Introducing GetCarClean.com – A car wash directory
Just a quick blog post, introducing GetCarClean – my latest startup venture, which aims to be the best car wash directory around. A while back, I wanted to get my car cleaned, but wasn’t sure where the nearest one was. So, I took to google; Car wash near me Thought this would return either some near…
-
Visual Studio 2013 Remote Debugging – No Symbols Loaded
When trying to use the Remote Debugger with Visual Studio 2013 – connecting to a server on the same network, I was getting ‘No symbols loaded’ I set the Remote Debugger to run with the /FallbackLoadRemoteManagedPdbs switch: After doing this, the symbols were loaded, and I could step through the code in Visual Studio on…
-
.net project unit test naming
Just wanted to do a quick post on unit test method naming, in particular with .net projects; Most test suites I come across are title cased: public void LikeThis() This annoys me. I find long method names hard to read, and easy to miss detail Example: public void DoesNotReImplementAdditionalInterfaceAlreadyImplementedByInterceptedClass() is not a readable as: public…
-
Create a Google Application for authenticating against with ASP.net Identity
Go to http://console.developers.google.com and log in with your Google account Click on Create Project Give your new project a name Important You will need to enable Google+ API More information on why, can be found here: http://blogs.msdn.com/b/webdev/archive/2014/07/02/changes-to-google-oauth-2-0-and-updates-in-google-middleware-for-3-0-0-rc-release.aspx Next, we’ll need to create our Client ID Configure your Consent screen:…
-
Github name squatting policy bullshit
I’ve been a loyal customer of GitHub since 2010 A couple of years ago, I started Cohoda – a software consulting company. Shortly after forming the company, I tried to register the github username – ‘cohoda’ It was taken (which I thought odd, since ‘Cohoda’ was a made up word!) After some investigation, I could…
-
Turn bluetooth on automatically when connected to Thunderbolt display
I use a MacBook Air as my primary machine. When at home in my office, I plug it in to a 27″ Thunderbolt display, and use the Apple keyboard and “magic” mouse – which are connected via bluetooth. To save battery, when not plugged in, I turn off bluetooth. When I come back to the…
-
Access host machine from Windows Parallels guest VM
I use Parallels to virtualise my Windows development environment, for use on my MacBook Air I created a fresh Windows VM, and wanted to keep it a little more lean than my previous version. One of the things I wanted to do, is use the MongoDB installation on my host (mac) machine, within windows. This…
-
Yosemite causing MacBook Air 2013 to crash when connected to Thunderbolt display
My setup is a fairly standard one: 13″ 2013 MacBook Air, which is occasionally, although more often than not, plugged in to a 27″ Thunderbolt Display. I “upgraded” to Yosemite last night. Booted my machine, everything seemed fine. I was downstairs at the time, no Thunderbolt display connected. This morning, plug in to the TB display,…
-
Fox Garage Blackwater – Review
I took my car to Fox Garage Blackwater as it was pulling to the left very slightly. I left it with them, with clear instructions not to phone me, but email me instead (I was going away, couldn’t pick up phone, but could easily reply to email) A few days later, when I returned from…
-
Resharper ASP.net MVC “Cannot resolve view” functionality missing in Visual Studio 2013
I installed Resharper (v 8.2.2) onto my fresh install of Visual Studio 2013, but noticed that the usual helpers I get over ASP.net MVC methods wasn’t there. For example, if I had a method like: public class MyTestController : Controller { public ActionResult Something() { return View(); } } … and the view (/Views/MyTest/Something.cshtml) didn’t…
-
Recovering Skype history from TimeMachine backup with Skyperious
It amazes me that Skype chat history is only stored on your local machine It’s just a simple sqlLite db file, located (on a mac at least) in /Users/alex/Library/Application Support/Skype/<username>/main.db Recently, I started fresh on my mac – fresh install of Mavericks, and re-installed all my apps I had a TimeMachine backup anyway, in case…
-
Introducing mongoose-status-manager – status updates for mongoose models
For a project I’m currently working on, I needed to be able to update the status of a document. For example, let’s assume it’s an Order. I need to create it, then set it’s status to ‘Pending’ When the Payment is completed, I need to set it to ‘Paid’ Then, as the order progresses, I…
-
Turned down for a contract role by a by a ghostly tech lead
I had a telephone interview earlier this week. From my point of view, I thought it went really well. I had ample experience, answered his questions (in my opinion) correctly Somewhat to my surprise, I was turned down after this interview. Naturally, I pressed the agency for feedback. Feedback from the recruiter was vague as…
-
Managing multiple MongoDB C# class maps – Part 1
I’ve used MongoDB with several net projects over the last few years, and one thing that has in the past frustrated me is the way BsonMapping is set up. This once per app setup can get pretty long, complex and hard to follow. As per the documentation this, on the face of it, it’s fairly easy:…
-
Charged £0.50p to print my own Farnborough Air Show 2014 tickets!
Today, I purchased tickets for the Farnborough Air Show 2014, at a cost of £48 each. As if that wasn’t bad enough, there was a £0.50p charge to print my tickets at home! The charge was the same for collecting from the Box Office. For convenience, I printed the tickets at home, but feel this…
-
One of the many benefits of keeping a git repository inside dropbox
A couple of weeks ago, for a number of reasons, I had polluted my working copy so much, i decided it would be easier to simply blow my cloned repository folder away, and re-clone. So, I deleted the folder, and made a fresh checkout to the same place. Today, I was about to resume work…
-
Link buying spam from Discover Media
I received a spam email earlier this week from a guy claiming to be John from Discover Media, asking to place an article on my blog, with a link to his ‘client’ site.His email address was john@discovermedia.co.uk Hi,I work for a company called Discover Media, acting on behalf of a casino client who like to…
-
How to assert.throws on an async function with a callback
Recently, I was writing a module that took a callback, and needed to write a test, asserting on an exception. Here’s how to do it: it(‘throws error if myParam is less than 10’, function(done) { var fn = function(){ myModule.doSomething(8, function(err) { if (err) throw err }); } assert.throws( function() { fn() }, /Value is…