With the holiday season round the corner and 2012 just coming to a close, members of the tech community  in Singapore were treated to the Azure Xmas Workshop — an evening of learning about Azure, made only more enjoyable with the on-coming Christmas cheer and the upcoming holiday season.

With three well-respected speakers in the tech scene, attendees of the Azure Xmas Workshop took part in an evening filled with useful tips on how they could make Microsoft Azure  work for them, be it in their work, or professional projects.

Michael Cheng, mig33

Michael Cheng, senior software engineer at social entertainment platform, mig33  kicked off the evening with an introduction to his very own open source project, PHP-Queue. Put simply, PHP-Queue is “a unified front-end for different queuing backends”, that helps developers to manage

communication between components of their application. What’s great about PHP-Queue is that it manages to abstract away the differences in the myriad different cloud queueing/messaging systems, freeing you up to concentrate on more mission critical code.

Varun Chatterji, sent.ly

Next up was Varun Chatterji from text messaging startup, Sent.ly. Sent.ly allows any company or organisation to very easily send and receive SMSes from users. Once the domain of only richer companies who could afford their own SMS gateways, Sent.ly brings the accessibility of SMS communication to the masses with just a simple
web service and a smart phone app.

Introducing the audience to how Microsoft’s Visual Studio tools helped him manage Sent.ly’s backend architecture, Varun demonstrated how Visual Studio’s deep integration with the Azure cloud platform made managing the system, along with testing and deploying the application, a piece of cake.

Information below taken from the post on MacOSXHints.com

So recently ran into an issue with my new HP LCD monitor where Snow Leopard suddenly decided to make my fonts look all skinny and malnourished (that’s turning font smoothing off, apparently). Which was really annoying, since I was using Monaco on the Terminal and in my code editors and they looked really horrible after that.

Finally get fed up enough to Google around a bit for Mac OS X font tweaks and ran into the solution below.

And now my fonts are happy! Or at least I am.

Hope it helps someone too.

Reposting here just so it gets out on the web more:

There is a bug in Snow Leopard that disables LCD (sub-pixel) font smoothing on many third party LCD displays, including models from Dell, Samsung, LG, HP, EIZO, and Lenovo. Here are the details:

Snow Leopard introduces simplified Font Smoothing options under the Appearance pane in System Preferences. Prior to Snow Leopard, the available options were:

  • Automatic – Best for Main Display
  • Standard – Best for CRT
  • Light
  • Medium – Best for Flat Panel
  • Strong

In Snow Leopard, you can only choose between Automatic and Standard CRT. Since few people use CRTs these days, most users now have only one option: Automatic. The problem with the Automatic option is that OS X incorrectly detects many third party LCD monitors as CRTs, and consequently, disables LCD font smoothing.

You can force OS X to use LCD font smoothing on all displays with this Terminal command:

defaults -currentHost write -globalDomain AppleFontSmoothing -int 2

The number 2 here corresponds to Medium – Best for Flat Panel. You may also use 1 for light smoothing, and 3 for strong smoothing, as per the original OS X font smoothing options.

I’ve been working on some stuff lately, and have found the need to dig deep and write some code of my own. They’re really small now, but all the same, I hope it’ll be useful to someone. Both DustJacket and isbndbpy below are written in Python.


A Python wrapper library for handling ebooks (only ePubs for now).

I’d been looking around for one of these in Python for a while but was unable to find one. It was really annoying being told, “Oh, an ePub is just a ZIP file, so you should be able to easily unzip it and read its contents.” Well, yeah. A car is essentially a platform on four wheels, but they’re much nicer than that now aren’t they?


A Python API wrapper library for the ISBNdb.com API

Same scenario as above. Need the code, couldn’t find a decent one (especially not in Python!), so decided to scratch that itch and make one myself. So here you go.

isbndbpy‘s implementation of the API is still quite incomplete though, so you have been warned.

That said, if anyone finds these projects even mildly useful, leave a comment! (And even better, help contribute to the projects! Basic stuff like tests, docs and general completeness is still greatly needed!)

Ran into an interesting problem with Python on Mac OS X (Snow Leopard). Part and parcel of writing web application is dealing with information transfer between the server and the client, and the most common format for this is JSON.

JSON is exceedingly common across the web, so imagine my surprise when I found that the default installation of Python on Mac OS X didn’t seem to include simplejson.

Resolving this is easy. The Python installation comes with a handy utility called easy_install, which, well, easily installs missing components:

$ sudo easy_install simplejson
Searching for simplejson
Reading http://pypi.python.org/simple/simplejson/
Reading http://undefined.org/python/#simplejson
Best match: simplejson 2.1.1
Downloading http://pypi.python.org/packages/source/s/simplejson/simplejson-2.1.1.tar.gz#md5=0bbe3a2e5e4cac040013733aca159d89
Processing simplejson-2.1.1.tar.gz
Running simplejson-2.1.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-Ii_EU9/simplejson-2.1.1/egg-dist-tmp-79Fj1U
Adding simplejson 2.1.1 to easy-install.pth file
Installed /Library/Python/2.6/site-packages/simplejson-2.1.1-py2.6-macosx-10.6-universal.egg
Processing dependencies for simplejson
Finished processing dependencies for simplejson

And there you go!

Had a little trouble trying to get the Android SDK running on Fedora Eclipse on Fedora 10 recently.

The problem I ran into upon attempting to install the Android Eclipse ADT was, as such:

  • Following the installations Android SDK site and adding the repository site for the ADT,
  • I get the following error about  org.eclipse.wst.sse.ui not being found
  • Which meant that the dependency checking for ADT failed, and I couldn’t get it installed.

The only tip Google could provide was that the default eclipse-platform package that Fedora 10 provided was lacking in the particular Eclipse component that the Android ADT needed, ie. org.eclipse.wst.sse.ui (and friends, presumably).

So here’s how to get around that:

  • Add the Eclipse Ganymede updates repository in Help -> Software updates.. -> Available Software.. (details).
  • You’ll get a new menu item in your Available Software tab: “Ganymede Update Site
  • In the search box, enter “WST Common UI“, and hit Install.

That would’ve brought in the necessary Eclipse components that the ADT requires. From there, follow the usual ADT installation instructions, and you’re done!

This happened to me after upgrading from Trac 0.10 to 0.11.

I’m running Debian Sid, and I simply apt-get installed the newer version of Trac.

Upon restarting Apache, and trying to access my Trac page again, I get the message that I need to manually perform the upgrade of the Trac files. Ok, so I do:

trac-admin /path/to/projenv upgrade

as recommended. That seemed to bring my Trac back, so I was happy.

However, when I wanted to write a new wiki page, I realised that the nifty formatting toolbar that used to appear over the textarea had now gone missing. Much Googling didn’t help, and unfortunately neither did the IRC channel. Looking back again at the TracUpgrade page included as part of the Trac wiki, I noticed another command that I had yet to run, the one to upgrade the wiki.

trac-admin /path/to/projenv wiki upgrade

I didn’t figure that this might help bring back my formatting toolbar. I only thought that it might be a good thing to run in the meantime, while I googled a little more.

I ran it, and lo and behold, it brought my formatting toolbar back! Unfortunately, this is not very intuitive, upgrading the wiki (implying information/data) to restore parts of the UI (presentation).

Anyway, hope this helps someone!