andhapp Random ramblings

Pow doesn't work after upgrade to Yosemite

The last horse finally crosses the finish line.

Yes, I finally upgraded to Yosemite. Unfortunately, Pow didn’t take the upgrade kindly and decided to spew out a cryptic error message. Apparently, there was an issue with Pow on Yosemite but had been fixed a while back. So, I reinstalled the latest version with a hope it would fix it but that didn’t fix it either.

The trick is to uninstall pow and then reinstall from scratch to be able to use it again on Yosemite.

Hope it helps.

Chrome and the Web APIs

Browser is becoming better by the day and Chrome is at the forefront of this movement. There are a plethora of interesting Web APIs that will redefine the browser in the near future. It won’t be far wrong if we extended the Javascript prophecy to the browsers - ‘anything that can be done in a browser will be done in the browser in the future’, and it’s true to a large extent even now, i.e., Chromebook.

I recently came across Bluetooth API that landed in Chrome canary recently. It doesn’t do much right now, but, it’s a start. To see it in action:

  1. I enabled the Enable experimental web platform features in chrome://flags for my local Chrome canary installation

  2. Restarted the browser

  3. Connected the phone to the mac via bluetooth

  4. Opened Chrome developer tools and ran the following command:

navigator.bluetooth.requestDevice().then(
  function(d) {
   console.log('Found a device', d); 
  },
  function(e) {
  console.log('Exception', e); 
  }
);

It returned straight-away with the following output:

Found a device BluetoothDevice {instanceId: "E0:CB:EE:84:F7:C2"}

requestDevice() returns a promise and you can attach the appropriate resolve and reject callbacks with it.

That’s well and good, but what can I really do with this?

Just off the top of my head:

  • take a phone call on your computer
  • transfer data
  • transfer audio
  • …and lots more, in the future

Coding exercise as part of interview process

Unless you are a superstar programmer, you have to do a coding exercise as part of the interview process nowadays. I had a retired BBC journalist as a colleague at university. Very intelligent, focussed and an impeccable gentleman who could carry garish shirts in style. He gave me priceless advice on preparing my CV. He said - CV is your chance to get to the interview stage, keep it to the point. You get the whole interview to impress the interviewer(s).

Why am I giving you tips on CV?

Because, I think it is the same for coding exercises. The coding exercise is a way for you to get a face-to-face interview. So, don’t stray away from the requirements. It’d be lovely to hear about how you will architect the system, but that’s not the point of the exercise. There’s no need to go over the required and miss an important part. It is better to produce something close to the requirements. You can impress them in a face-to-face interview.

Books and Papers I read in 2014

Well, here’s a list of books and papers I read in 2014:

  • Are your lights on?
  • Pitching bible
  • Mixu’s Node book
  • RabbitMQ in Action
  • The Lean Entrepreneur
  • The Lean UX
  • The Lean Analytics
  • O’Reilly’s Graph database
  • SQL performance explained
  • The Cathedral and the bazaar
  • Frenetic: A Network Programming Language
  • HoneyBadger’s guide to machine learning
  • Things computer scientists don’t talk about
  • Mastering Node
  • Kanban and Scrum making the most of both
  • Scalable and Modular Architecture for CSS
  • Java Security Model and Bytecode Verification
  • Unix Shell in Ruby
  • Advanced Git Tutorial
  • Growth hacking handbook
  • Git Community Book
  • Git from the bottom up
  • Pragmatic Version Control Using Git
  • 50 Guerrilla Marketing tactics you should be using
  • 97 Things Every Software Architect Should Know
  • Thinking functionally in Ruby
  • Scalable networking
  • What Matters Now
  • Misunderstandings about state machines
  • Valve - Handbook for new employees
  • Mostly-Unsupervised Statistical Segmentation of Japanese Kanji Sequences
  • Static Analysis for Ruby in the presence of gradual typing
  • Where Stellar Messages Come From
  • Formatting and the Essentials of Web Writing