<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 <title>Tom Broerse Blog</title>
 <link href="http://tom.broerse.me/feed/" rel="self"/>
 <link href="http://tom.broerse.me/"/>
 <updated>2014-06-23T21:56:22+00:00</updated>
 <id>hhttp://tom.broerse.me/</id>
 <author>
   <name>Tom Broerse</name>
   <email>tom@broerse.me</email>
 </author>
 
 <entry>
   <title>Chrome notifier extension starter kit</title>
   <link href="http://tom.broerse.me/2013/02/chrome-notifier-starter/"/>
   <updated>2012-12-31T00:00:00+00:00</updated>
   <id>http://tom.broerse.me/2013/02/chrome-notifier-starter</id>
   <content type="html">&lt;p&gt;Need a Chrome extension that regularly checks for new updates on your favorite website or application and notifies you of new items, similar to &lt;a href=&quot;https://chrome.google.com/webstore/detail/google-mail-checker/mihcahmgecmbnbcchbopgniflfhgnkff&quot;&gt;Gmail Checker&lt;/a&gt; and &lt;a href=&quot;https://chrome.google.com/webstore/detail/outlookcom-notifier/mkmomflkhdooajekmffpilpoenndjppk&quot;&gt;Outlook.com Notifier&lt;/a&gt;?&lt;/p&gt;

&lt;p&gt;The Chrome Notifier Extension Starter Kit allows you to whip something together in a few easy steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Fork or clone the repo:&lt;/p&gt;
&lt;pre&gt;
git clone https://github.com/tombb/chrome-notifier-extension-starter.git
&lt;/pre&gt;&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Load the extension in Chrome:&lt;/p&gt;

&lt;p&gt;See &lt;a href=&quot;https://developer.chrome.com/extensions/getstarted.html#load&quot;&gt;Chrome Developer Docs&lt;/a&gt; on how to load an extension in developer mode.&lt;/p&gt;

&lt;p&gt;Out-of-the-box the extension will report a random number generated by &lt;a href=&quot;http://www.random.com&quot;&gt;www.random.com&lt;/a&gt;. Every minute the number will change to something else. Enable desktop notifications on the options page to get a notification every time the random number increases.&lt;/p&gt;

&lt;p&gt;This is of course pretty useless. To change it so it reports about your own application or site, follow the steps below.&lt;/p&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Change the title of the extension:&lt;/p&gt;

&lt;p&gt;in &lt;code&gt;app-notifier.js&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;
AppNotifier.ATTRS = {
	// ..
	title: {
		value : &quot;Your Title&quot;
	},
	// ..
}
&lt;/pre&gt;&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Make sure the domain(s) for which your extension needs permission are in the manifest and in &lt;code&gt;app-notifier.js&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;manifest.json&lt;/code&gt; (use &lt;a href=&quot;https://developer.chrome.com/extensions/match_patterns.html&quot;&gt;Chrome Match Patterns&lt;/a&gt;):&lt;/p&gt;
&lt;pre&gt;
&quot;permissions&quot;: [
	&quot;tabs&quot;,
	&quot;*://*.domain.of.your.app.com/&quot;
],
&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;app-notifier.js&lt;/code&gt; (use exact domains):&lt;/p&gt;
&lt;pre&gt;
AppNotifier.ATTRS = {
	// ..
	domains : {
		value : [
			'the.domain.of.your.app.com',
			'another.domain.of.your.app.com'
		]
	}
	// ..
}
&lt;/pre&gt;&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Set the &lt;code&gt;url&lt;/code&gt; attribute in app-notifier.js to the URL you’d like to poll for updates/activity:&lt;/p&gt;
&lt;pre&gt;
AppNotifier.ATTRS = {
	// ..
	url : {
		value : 'https://url.to.your.app.com/some/page'
	},
	// ..
}
&lt;/pre&gt;&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Change &lt;code&gt;getNumberFromNode()&lt;/code&gt; in &lt;code&gt;app-notifier.js&lt;/code&gt; to return a number of new or unread items you’d like to notify the user about:&lt;/p&gt;
&lt;pre&gt;
getNumberFromNode : function (node) {
	return node.one('.some .selector').get('text');
}
&lt;/pre&gt;&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Optionally, replace the following files by your own images:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;app.png&lt;/code&gt; Image shown on the options page and in desktop notifications of your extension.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;browser-action-icon-active.png&lt;/code&gt; Active browser icon, shown when the extension is successfully polling your app or site.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;browser-action-icon-inactive.png&lt;/code&gt; Inactive browser icon, shown when the extenstion couldn’t reach the app or site it’s checking for activity.&lt;/p&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Reload your extension in Chrome, then debug and improve until you’re happy!&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;</content>
 </entry>
 
 <entry>
   <title>New Chrome Extension - Outlook.com Notifier</title>
   <link href="http://tom.broerse.me/2012/12/outlook-com-notifier/"/>
   <updated>2012-11-28T00:00:00+00:00</updated>
   <id>http://tom.broerse.me/2012/12/outlook-com-notifier</id>
   <content type="html">&lt;p&gt;A common bug report I receive from users who try my &lt;a href=&quot;#outlook_365_notifier_now_in_chrome_web_store&quot;&gt;Outlook 365 Notifer Chrome extension&lt;/a&gt; is that it doesn’t work for the “new” Hotmail: &lt;a href=&quot;http://outlook.com&quot;&gt;Outlook.com&lt;/a&gt;. The reason: it was never meant to.&lt;/p&gt;

&lt;p&gt;This got me browsing the Chrome Webstore for an extension that does what these people want. To my surprise I was unable to find it. Although I’m not a Hotmail user nor a Christian, I decided to write one. Love Thy Neighbor as Thyself!&lt;/p&gt;

&lt;p&gt;After a few hours refactoring and tweaking the original extension, there we go: An email checker for users of Microsoft’s new smart and modern free inbox.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://chrome.google.com/webstore/detail/outlookcom-notifier/mkmomflkhdooajekmffpilpoenndjppk&quot;&gt;Outlook.com Notifier&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Displays the number of unread emails&lt;/li&gt;

&lt;li&gt;Click on the button to open your inbox&lt;/li&gt;

&lt;li&gt;Optional desktop notifications&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It’s early days, but I’m excited to see a steady growth of user numbers and some raving reviews for this extension!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Outlook 365 Notifier now in Chrome Web Store</title>
   <link href="http://tom.broerse.me/2012/07/hello-world-from-jekyll/"/>
   <updated>2012-08-05T00:00:00+00:00</updated>
   <id>http://tom.broerse.me/2012/07/outlook365-notifier-in-chrome-webstore</id>
   <content type="html">&lt;p&gt;A few months ago, the organisation I work for migrated email from a combination of on-side hosted MS Exchange and Linux based mail servers to Microsoft’s new cloud based offering: &lt;a href=&quot;http://www.microsoft.com/en-us/office365/online-software.aspx&quot;&gt;Office 365&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Not entirely to my surprise, I Immediately I found myself in some trouble. I use Ubuntu on my desktop with Mozilla Thunderbird as the email client. Although Outlook 365 does have IMAP support, it didn’t play as nicely with Thunderbird as I would like.&lt;/p&gt;

&lt;p&gt;I tried using MS Outlook in a Windows virtual machine for a while but that had it’s own drawbacks (e.g. links would be opened in the Windows browser instead of on my host OS).&lt;/p&gt;

&lt;p&gt;Thankfully, the Outlook 365 web-based email client isn’t too bad.&lt;/p&gt;

&lt;p&gt;Problem solved? Well, no.. the web app doesn’t work on my favorite browser, Chromium for Linux.&lt;/p&gt;

&lt;p&gt;So, I wrote a little Chrome extension that fixes the issue (by pretending to be another browser) and threw in desktop notifications as well.&lt;/p&gt;

&lt;p&gt;After having used it for a while and some beta-testing by a colleague I &lt;a href=&quot;https://chrome.google.com/webstore/detail/dhfemhokeipigjjdopkanibcilnbbjpf&quot;&gt;published it on the Chrome Web Store&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;So far so good, it’s been in the store for a few days now and already has 50 users. Great to see this is useful to folks out there! :-)&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Made with Jekyll and Foundation</title>
   <link href="http://tom.broerse.me/2012/07/made-with-jekyll/"/>
   <updated>2012-07-25T00:00:00+00:00</updated>
   <id>http://tom.broerse.me/2012/07/made-with-jekyll</id>
   <content type="html">&lt;p&gt;A few words on what this site is made of. It’s based on some great work by the open source community:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It’s a static site, made with &lt;a href=&quot;http://jekyllrb.com/&quot;&gt;Jekyll&lt;/a&gt;, which means I’m writing this in &lt;a href=&quot;http://daringfireball.net/projects/markdown/&quot;&gt;Markdown&lt;/a&gt;. Why Jekyll? I had a look at Python tools like &lt;a href=&quot;http://ringce.com/hyde&quot;&gt;Hyde&lt;/a&gt; and &lt;a href=&quot;http://www.blogfile.com&quot;&gt;Blogofile&lt;/a&gt; as well, but thought this was as good an excuse as any to start having a play with Ruby.&lt;/li&gt;

&lt;li&gt;I’m using &lt;a href=&quot;http://foundation.zurb.com/&quot;&gt;ZURB Foundation&lt;/a&gt; a, SASS/Compass based responsive front-end framework to make it all look decent. Why Foundation? I didn’t want this to look like yet another Bootstrap site, and this was as good an excuse as any to have a look at SASS :) Plus, Foundation comes with some nice little Javascript features like JQuery Orbit (slideshow) and Reveal (modal panel), which came in handy on the &lt;a href=&quot;/projects/&quot;&gt;projects&lt;/a&gt; page.&lt;/li&gt;

&lt;li&gt;Writing and maintaining a CV isn’t the most interesting task, so I had had a look around to see if there’s anything out there that can make this a bit more fun. I thought of using LaTex, but wanted to keep it simple. I came across &lt;a href=&quot;https://github.com/icco/Resume&quot;&gt;this project on Github&lt;/a&gt; that allows you to write your CV in Markdown and easily host it on Github-pages or Heroku. I liked &lt;a href=&quot;https://github.com/maxim/maxim.github.com&quot;&gt;another project&lt;/a&gt; that had a nice summary button. I decided I would take a bit of both and would be able to use &lt;a href=&quot;http://code.google.com/p/wkhtmltopdf/&quot;&gt;wkhtmltopdf&lt;/a&gt; and/or &lt;a href=&quot;http://johnmacfarlane.net/pandoc/&quot;&gt;Pandoc&lt;/a&gt; to generate .doc, pdf and even LaTex documents if needed.&lt;/li&gt;

&lt;li&gt;Oh, last but not least, this site is hosted on Rackspace and for now deployed using the magic of scp..&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Still to do: dot a few i’s here and there and share on Github like most of the projects mentioned above!&lt;/p&gt;</content>
 </entry>
 
 <entry>
   <title>Welcome!</title>
   <link href="http://tom.broerse.me/2012/07/welcome/"/>
   <updated>2012-07-22T00:00:00+00:00</updated>
   <id>http://tom.broerse.me/2012/07/welcome</id>
   <content type="html">&lt;p&gt;Welcome to yet another “tech blog”. I’m starting this site for two reasons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To have a proper web presence where colleagues, employers, clients and who-ever might be interested can find information about my “professional” life.&lt;/li&gt;

&lt;li&gt;To have a place where I can share and discuss anything I’ve learnt that I think may be worth something to others too.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’ll probably talk about my experiences writing apps and managing a software development team.&lt;/p&gt;

&lt;p&gt;If you’re looking for my adventures coming to Australia, you can still find them &lt;a href=&quot;http://xplizit.com/tom&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Thanks for stopping by!&lt;/p&gt;</content>
 </entry>
 
</feed>