<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on Nifty tidbits!</title>
    <link>https://blog.rraghur.in/post/</link>
    <description>Recent content in Posts on Nifty tidbits!</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <managingEditor>raghu.nospam@gmail.com (Raghu)</managingEditor>
    <webMaster>raghu.nospam@gmail.com (Raghu)</webMaster>
    <copyright>Copyright 2004 - 2022, Raghu Rajagopalan</copyright>
    <lastBuildDate>Mon, 31 Jan 2022 10:06:07 +0530</lastBuildDate>
    
	<atom:link href="https://blog.rraghur.in/post/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>An year of Functional Programming</title>
      <link>https://blog.rraghur.in/2022/01/31/an-year-of-functional-programming/</link>
      <pubDate>Mon, 31 Jan 2022 10:06:07 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2022/01/31/an-year-of-functional-programming/</guid>
      <description>An year - already? It&amp;#8217;s been little more than an year of starting with F# and functional programming for real. I can finally say that I feel comfortable with the mental model. I&amp;#8217;ve started thinking in functions rather than in terms of Object/Classes/Interfaces and then wondering &#34;how do I do that in FP?&#34;. Frankly, this switch has been the hardest part of the transition.
 It hasn&amp;#8217;t been easy, nor was there any &#39;one moment&#39; of enlightenment that stands out - rather, more a series of randomly interspersed &#39;aha&#39; moments.</description>
    </item>
    
    <item>
      <title>Docker daemon network address space clash</title>
      <link>https://blog.rraghur.in/2022/01/29/docker-daemon-network-address-space-clash/</link>
      <pubDate>Sat, 29 Jan 2022 09:33:19 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2022/01/29/docker-daemon-network-address-space-clash/</guid>
      <description>Oops! Ran into a weird problem yesterday - I had to manually update my Gitlab LetsEncrypt Auto SSL tool to use the newest dehydrated script. Updated the new script and ran docker build
 docker build -t gitlab-cf-le-autossl .   And it blew up on apk update&amp;#8230;&amp;#8203; What the heck? 😕 That&amp;#8217;s weird, I think.
 A little bit of duckduck-fu 🦆 ensued and all I could find is network fetch errors during docker build when behind a proxy&amp;#8230;&amp;#8203; I&amp;#8217;m at home and don&amp;#8217;t have a proxy so that&amp;#8217;s not going to be it.</description>
    </item>
    
    <item>
      <title>KDE Papercuts and bandaids</title>
      <link>https://blog.rraghur.in/2020/05/29/kde-papercuts-and-bandaids/</link>
      <pubDate>Fri, 29 May 2020 19:02:36 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2020/05/29/kde-papercuts-and-bandaids/</guid>
      <description>KDE frustrations On my home desktop, I have KDE Neon ever since it came out and before Kubuntu 16 I guess. I should also mention that my home desktop also happens to be a common machine with each family member with their own accounts (so it&amp;#8217;s sort of a shared computer). Not once in the last 5+ years have any of them complained that something didn&amp;#8217;t work as expected. However, this doesn&amp;#8217;t mean that KDE is the bright, shining light of Linux desktop UX.</description>
    </item>
    
    <item>
      <title>Putting a Raspberry Pi to work</title>
      <link>https://blog.rraghur.in/2019/11/23/putting-a-raspberry-pi-to-work/</link>
      <pubDate>Sat, 23 Nov 2019 11:42:24 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2019/11/23/putting-a-raspberry-pi-to-work/</guid>
      <description>Like a lot of fellow geeks, I have collected a few raspberry pi&amp;#8217;s at home. For the longest time, these were basically bought and then were forgotten on a desk. At some point though, I finally got around to putting them to work for adblocking - and since then, they&amp;#8217;ve become pretty much my goto machines when I need a server that&amp;#8217;s available 24x7. Speaking to my friends, a lot are in the same quandry - got a pi, booted it up a few times and then it lies&amp;#8230;&amp;#8203;.</description>
    </item>
    
    <item>
      <title>There&#39;s no place like 127.0.0.1! Connect back home with wireguard, IPv6 and NAT</title>
      <link>https://blog.rraghur.in/2019/11/14/theres-no-place-like-127.0.0.1-connect-back-home-with-wireguard-ipv6-and-nat/</link>
      <pubDate>Thu, 14 Nov 2019 15:56:04 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2019/11/14/theres-no-place-like-127.0.0.1-connect-back-home-with-wireguard-ipv6-and-nat/</guid>
      <description>This is another one of those &#39;scratch an itch&#39; projects - recently, was away from home and needed to dial back in to one of my home machines. It wasn&amp;#8217;t something I was set up to do - so all I could do was wait till I got back home.
 Once I got back home, I started looking into setting up a VPN server that I could use to dial home.</description>
    </item>
    
    <item>
      <title>Pihole with DNSSEC</title>
      <link>https://blog.rraghur.in/2019/10/02/pihole-with-dnssec/</link>
      <pubDate>Wed, 02 Oct 2019 16:03:31 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2019/10/02/pihole-with-dnssec/</guid>
      <description>So what&amp;#8217;s the deal Chances are that if you&amp;#8217;ve somehow landed here, it means that you have an idea of what DNS does for you. Chances are also there that you&amp;#8217;re also privacy &amp;amp; security conscious and want to secure DNS lookups.
 In any case, a short refresher below:
  50K feet view of DNSSEC   DNS is how your machine (and other machines including your router etc) translate a domain name like www.</description>
    </item>
    
    <item>
      <title>LEGO releases Micropython image for the Mindstorms EV3</title>
      <link>https://blog.rraghur.in/2019/05/04/lego-releases-micropython-image-for-the-mindstorms-ev3/</link>
      <pubDate>Sat, 04 May 2019 11:15:13 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2019/05/04/lego-releases-micropython-image-for-the-mindstorms-ev3/</guid>
      <description>This is just so awesome! LEGO officially released Micropython image that can run on the EV3.
 For the uninitialized
  LEGO mindstorms is LEGO&amp;#8217;s robotics focused kit. Think LEGO technic blocks + a programmable microcontroller and assorted selection of motors and sensors.
  The EV3 &#39;Brick&#39; runs a visual programming interface built on Labview(?). It&amp;#8217;s nice for kids to get started with but a PITA as you need a windows machine.</description>
    </item>
    
    <item>
      <title>TIP: Track starred github project releases like a pro</title>
      <link>https://blog.rraghur.in/2019/01/21/tip-track-starred-github-project-releases-like-a-pro/</link>
      <pubDate>Mon, 21 Jan 2019 09:48:17 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2019/01/21/tip-track-starred-github-project-releases-like-a-pro/</guid>
      <description>I have ~90+ projects that I&amp;#8217;ve starred on github over time. Usually, I&amp;#8217;d like to know when they cut a new release. Github offers an RSS feed for project releases but having to go into releases page of each project to grab it&amp;#8217;s RSS feed url and then having to stick that into your feed reader isn&amp;#8217;t fun. That&amp;#8217;s where today&amp;#8217;s micro tip comes in:
  Stick the following into your terminal (of course replace your github username).</description>
    </item>
    
    <item>
      <title>Using Wireguard when UDP is blocked</title>
      <link>https://blog.rraghur.in/2018/11/24/using-wireguard-when-udp-is-blocked/</link>
      <pubDate>Sat, 24 Nov 2018 10:32:41 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/11/24/using-wireguard-when-udp-is-blocked/</guid>
      <description>Wireguard is a new, fast efficient VPN that&amp;#8217;s likely to be merged into the linux kernel. If you haven&amp;#8217;t heard about it yet, then head over here for a quick overview. Wireguard only works on UDP though and in this post, we&amp;#8217;ll see how to use it by tunneling UDP over TCP
 Now on Linux, udptunnel, socat and even tunneling UDP over SSH are all great options but I&amp;#8217;m stuck with a Windows machine so need something that&amp;#8217;ll work cross platform - and that&amp;#8217;s where I came across Secure Socket Funnel</description>
    </item>
    
    <item>
      <title>Fruzzy - a freaky fast fuzzy finder for Vim/Neovim</title>
      <link>https://blog.rraghur.in/2018/09/27/fruzzy-a-freaky-fast-fuzzy-finder-for-vim/neovim/</link>
      <pubDate>Thu, 27 Sep 2018 12:30:53 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/09/27/fruzzy-a-freaky-fast-fuzzy-finder-for-vim/neovim/</guid>
      <description>Scratching an itch A fuzzy finder is invaluable - Triggering the fuzzy finder with denite (plugin that shows filterable lists from many sources - files, buffers, tags etc) is probably the most frequent operation in vim/neovim. Having something that&amp;#8217;s used so frequently fast and correct is critical!
 Given that I have to use windows (still on 8.1) - so tools like fzy or fzf don&amp;#8217;t exactly work properly.
 As I said, I use denite to switch/jump buffers, tags, files, whatever.</description>
    </item>
    
    <item>
      <title>VPN - Wireguard&#39;s the new BOSS!</title>
      <link>https://blog.rraghur.in/2018/08/09/vpn-wireguards-the-new-boss/</link>
      <pubDate>Thu, 09 Aug 2018 09:56:48 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/08/09/vpn-wireguards-the-new-boss/</guid>
      <description>Wireguard When Linus endorses something like this
  Can I just once again state my love for it and hope it gets merged soon? Maybe the code isn&amp;#8217;t perfect, but I&amp;#8217;ve skimmed it, and compared to the horrors that are OpenVPN and IPSec, it&amp;#8217;s a work of art.  &amp;#8212; Linus Torvalds
lkml - 02 Aug 2018   You&amp;#8217;ve got to take notice&amp;#8230;&amp;#8203; Can it be true? Is it really possible that he&amp;#8217;s giving high praise to somebody&amp;#8217;s code?</description>
    </item>
    
    <item>
      <title>Moving from &#39;Kube-cert-manager&#39; to &#39;cert-manager&#39;</title>
      <link>https://blog.rraghur.in/2018/07/05/moving-from-kube-cert-manager-to-cert-manager/</link>
      <pubDate>Thu, 05 Jul 2018 11:44:26 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/07/05/moving-from-kube-cert-manager-to-cert-manager/</guid>
      <description>In a previous post, I&amp;#8217;d covered how to use Kube-cert-manager to automatically create and update TLS certificates from LetsEncrypt.org.
 Kube-cert-manager was, even then, not seeing a lot of activity and Jetstack&amp;#8217;s cert-manager was the project to watch/follow. Given that it was still early days with cert-manager, I used Kube-cert-manager. In the last 6 months, cert-manager has moved quite a bit forward. Also, LetsEncrypt now supports wildcard certificates.
 Today, I decided to give it a spin and was pleasantly surprised.</description>
    </item>
    
    <item>
      <title>Having fun with a kaput monitor</title>
      <link>https://blog.rraghur.in/2018/07/04/having-fun-with-a-kaput-monitor/</link>
      <pubDate>Wed, 04 Jul 2018 15:57:20 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/07/04/having-fun-with-a-kaput-monitor/</guid>
      <description>Couple of weeks ago my ancient 10 year old Viewsonic 19&#34; LCD monitor started going bonkers&amp;#8230;&amp;#8203; Wouldn&amp;#8217;t switch on properly - the standby light would just blink. Initially I suspected a contact problem and re attaching the cables seemed to do the trick - the monitor would come up and it would be fine until I swtiched off again. It seemed to be an intermittent problem so not much I could do besides do.</description>
    </item>
    
    <item>
      <title>Programming the LEGO Mindstorms EV3 in Linux</title>
      <link>https://blog.rraghur.in/2018/06/12/programming-the-lego-mindstorms-ev3-in-linux/</link>
      <pubDate>Tue, 12 Jun 2018 14:40:02 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/06/12/programming-the-lego-mindstorms-ev3-in-linux/</guid>
      <description>We got the kids a Lego Mindstorms set last week. I&amp;#8217;ve been eyeing it for quite a few years, but have been waiting for the kids to grow up a bit till they can handle it - especially since LEGOs are costly in general and the Mindstorms kit in particular costs a pretty penny.
 
 Anyway, they&amp;#8217;ve been having a blast building our first robot - for now with LEGO&amp;#8217;s android app over a Bluetooth connection.</description>
    </item>
    
    <item>
      <title>Kicking the tires on Rancher 2.0</title>
      <link>https://blog.rraghur.in/2018/05/15/kicking-the-tires-on-rancher-2.0/</link>
      <pubDate>Tue, 15 May 2018 15:56:53 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/05/15/kicking-the-tires-on-rancher-2.0/</guid>
      <description>While I&amp;#8217;d sort of an idea in terms of where Rancher fits in the ecosystem as a cluster management solution, I hadn&amp;#8217;t played with it. Also, 1.x of rancher had it&amp;#8217;s own orchestration engine and so on and I wasn&amp;#8217;t that interested. Fast forward to 2017 and Rancher is putting it&amp;#8217;s weight being Kubernetes and going all in.
 Rancher 2.0 was announced in Sep last and has followed up with a stream of RCs and moved to beta.</description>
    </item>
    
    <item>
      <title>git log: One command to rule over your git history</title>
      <link>https://blog.rraghur.in/2018/03/26/git-log-one-command-to-rule-over-your-git-history/</link>
      <pubDate>Mon, 26 Mar 2018 15:42:22 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/03/26/git-log-one-command-to-rule-over-your-git-history/</guid>
      <description>I don&amp;#8217;t know about you but while I&amp;#8217;m pretty comfy with git cli for most routine operations, there are a few things that I do like a GUI for - most notably going through git history. Like most of you, I have an alias in my ~/.gitconfig to show logs on one line
 [alias] lg = log --graph --pretty=format:&#39;%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)&amp;lt;%an&amp;gt;%Creset&#39; --abbrev-commit --date=relative --date-order   While this is usually enough, it&amp;#8217;s not for cases when I need to search through history for commits touching a specific file or having some specific word/regex.</description>
    </item>
    
    <item>
      <title>Battle of the backup tools</title>
      <link>https://blog.rraghur.in/2018/02/09/battle-of-the-backup-tools/</link>
      <pubDate>Fri, 09 Feb 2018 13:09:24 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/02/09/battle-of-the-backup-tools/</guid>
      <description>I&amp;#8217;ve finally set up backup of the different servers at home and in a way that I&amp;#8217;m actually satisfied. In the past, it had been just rsync scripts.. needless to say, that it wasn&amp;#8217;t working out that well and so things stood. and so things stood.
   Last week, I was thinking of giving Gnome a try out - I prefer KDE and run KDE Neon user edition on my main machine.</description>
    </item>
    
    <item>
      <title>Fail: Minikube on Windows 10 using HyperV</title>
      <link>https://blog.rraghur.in/2018/01/19/fail-minikube-on-windows-10-using-hyperv/</link>
      <pubDate>Fri, 19 Jan 2018 15:44:13 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/01/19/fail-minikube-on-windows-10-using-hyperv/</guid>
      <description>So I&amp;#8217;m stuck on windows 8.1 on my work machine - not that I mind too much.. It&amp;#8217;s just too much work to set up the machine from scratch. However, windows 10&amp;#8217;s WSL and docker for windows support using HyperV was something I wanted to give a spin.
 With Azure now supporting nested virtualization, I set up a dev machine on azure on the Dv3 SKU&amp;#8217;s and set up minikube on it.</description>
    </item>
    
    <item>
      <title>Automatically provision sub-domain and SSL certificates on AKS</title>
      <link>https://blog.rraghur.in/2018/01/16/automatically-provision-sub-domain-and-ssl-certificates-on-aks/</link>
      <pubDate>Tue, 16 Jan 2018 20:57:21 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2018/01/16/automatically-provision-sub-domain-and-ssl-certificates-on-aks/</guid>
      <description>Recently, I ported a large-ish codebase to .Net core. As part of that, one thing to deal with was continuous integration and continuous delivery. As Kubernetes was the platform of choice, I was looking into options that would let us:
  Deploy any branch, tag, pull request etc easily.
  Be able to host multiple app installations side by side.
   The first was easily solved with creating a Helm chart.</description>
    </item>
    
    <item>
      <title>My first neovim plugin: vim-ghost</title>
      <link>https://blog.rraghur.in/2017/11/23/my-first-neovim-plugin-vim-ghost/</link>
      <pubDate>Thu, 23 Nov 2017 13:52:13 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/11/23/my-first-neovim-plugin-vim-ghost/</guid>
      <description>Introducing Vim-Ghost Always hated typing long text in browser text areas? How about posting at reddit or stackoverflow and feeling like pulling your hair out in frustration while posting text with code or just editing markdown?
 Wished for having the full power of (n)vim while editing browser text areas? Then here&amp;#8217;s a plugin that&amp;#8217;ll go a long way towards answering those wishes!
  Figure 1. Here&amp;#8217;s vim-ghost in action along with the GhostText browser plugin  If you were a It&amp;#8217;s all text user on Firefox, then you probably know that it&amp;#8217;s dead and the author suggests the GhostText plugin.</description>
    </item>
    
    <item>
      <title>EventStore on Azure Container Services(AKS)</title>
      <link>https://blog.rraghur.in/2017/11/20/eventstore-on-azure-container-servicesaks/</link>
      <pubDate>Mon, 20 Nov 2017 09:38:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/11/20/eventstore-on-azure-container-servicesaks/</guid>
      <description>Eventstore on Azure Container Services At work, Ryan shared this post about getting Eventstore running on Google Cloud Platform (GCP) to try out on Azure. Now for those of you who don&amp;#8217;t want to read the entire other blog post, what it talks about is setting up a Eventstore cluster in two ways
  Cluster using Pod local storage - where if the pod goes down, you lose all data and when Kubernetes brings up another pod, it will have to catch up.</description>
    </item>
    
    <item>
      <title>Enable remote SSH even if your ISP is using a NAT</title>
      <link>https://blog.rraghur.in/2017/09/29/enable-remote-ssh-even-if-your-isp-is-using-a-nat/</link>
      <pubDate>Fri, 29 Sep 2017 14:32:23 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/09/29/enable-remote-ssh-even-if-your-isp-is-using-a-nat/</guid>
      <description>What? I have a couple of machines at home that I would like to be able to access remotely. Now, in the past, the way I&amp;#8217;ve done this is:
  Setup Dynamic DNS on my router - so that home.rraghur.in will resolve to my router.
  Setup Port forwarding on the router to map an incoming port to port 22 of each internal machine that I want to access remotely.</description>
    </item>
    
    <item>
      <title>Today&#39;s keyboard awesomeness - Switch tabs by name</title>
      <link>https://blog.rraghur.in/2017/09/15/todays-keyboard-awesomeness-switch-tabs-by-name/</link>
      <pubDate>Fri, 15 Sep 2017 10:00:29 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/09/15/todays-keyboard-awesomeness-switch-tabs-by-name/</guid>
      <description>Usually when researching a topic, I end up with a lot of tabs open in firefox - usually grouped by topic in 3 to 4 windows with 7 to 15 tabs in each - so we&amp;#8217;re talking rougly 30 - 40 tabs at a time. With that many tabs, it&amp;#8217;s just too slow to switch tabs with the mouse. First you have to Alt-Tab to the right window, then eyeball the right tab within the window (which is problematic if you have more than a handful of tabs that window titles don&amp;#8217;t provide enough info)</description>
    </item>
    
    <item>
      <title>Front end development - Vue, Webpack and ASP.NET core 2.0</title>
      <link>https://blog.rraghur.in/2017/08/28/front-end-development-vue-webpack-and-asp.net-core-2.0/</link>
      <pubDate>Mon, 28 Aug 2017 12:32:56 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/08/28/front-end-development-vue-webpack-and-asp.net-core-2.0/</guid>
      <description>Front end development in 2017 So the last week I have been delving into Vue.js. This wasn&amp;#8217;t exactly intentional - with .NET core 2.0 being released, I wanted to give it a run and decided to start with one of the starter templates. I&amp;#8217;ve been reading quite a bit of nice things about Vue so decided to create a project based on the Vue SPA template.
 It&amp;#8217;s also been a long while since I have done any sizable front end work so it was also a way to see what has changed in the &#39;forever in flux, a new framework everyday&#39; javascript land.</description>
    </item>
    
    <item>
      <title>Microservices - asking the right questions</title>
      <link>https://blog.rraghur.in/2017/06/22/microservices-asking-the-right-questions/</link>
      <pubDate>Thu, 22 Jun 2017 12:34:43 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/06/22/microservices-asking-the-right-questions/</guid>
      <description>In my previous post, I talked about microservices trade offs and how you need to be aware of them to navigate the waters. I also touched upon how we went about it successfully. In this post, I&amp;#8217;ll go over some of the questions to pose to yourself/your team from an engineering/infrastructure standpoint as you embark on your microservices journey.
   Questions It helps to try and answer some of the questions below.</description>
    </item>
    
    <item>
      <title>My photo got a 100k views</title>
      <link>https://blog.rraghur.in/2017/06/20/my-photo-got-a-100k-views/</link>
      <pubDate>Tue, 20 Jun 2017 19:17:43 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/06/20/my-photo-got-a-100k-views/</guid>
      <description>My photo from 2013 got a 100k views. This is from Bheemeshwari Nature and Adventure camp. If you&amp;#8217;re in Bangalore, take the time to visit this place for a day or two - it&amp;#8217;s just a 2 hour drive and totally worth it. Best time of the year&amp;#8217;s after the monsoons in August/September when the river&amp;#8217;s in full spate.
  Fond memories!
 </description>
    </item>
    
    <item>
      <title>The Microservices Siren Song</title>
      <link>https://blog.rraghur.in/2017/06/16/the-microservices-siren-song/</link>
      <pubDate>Fri, 16 Jun 2017 17:49:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/06/16/the-microservices-siren-song/</guid>
      <description>Everyone wants them, many claim to have used them with success, few in reality have done it right and a minuscule percentage understand the trade offs involved. They&amp;#8217;re all the rage these days - if you don&amp;#8217;t have a &#39;Microservices architecture&#39; then someone higher on the totem pole is bound to pontificate that the approach is outdated/legacy. :)
 Of late, I&amp;#8217;ve come across customers &amp;amp; teams where there&amp;#8217;s a rush to &#39;do microservices&#39; and I&amp;#8217;ve spent a good amount of time laying out the trade offs and helping them evaluate their own readiness (or lack of it).</description>
    </item>
    
    <item>
      <title>MSYS2 Git, Git for Windows - line endings and cross platform setup</title>
      <link>https://blog.rraghur.in/2017/06/06/msys2-git-git-for-windows-line-endings-and-cross-platform-setup/</link>
      <pubDate>Tue, 06 Jun 2017 18:27:27 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/06/06/msys2-git-git-for-windows-line-endings-and-cross-platform-setup/</guid>
      <description>I use multiple machines - work machine is Windows 8.1 with Git for Windows and MSYS Git while at home I have Linux. Given that I frequently pull and push from any of these depending on what I&amp;#8217;m using at any given moment. Having a setup that works with least surprises is an important quality of life factor. If I can, I prefer linux versions since I can share the same setup with my home machine and it&amp;#8217;s easier for muscle memory.</description>
    </item>
    
    <item>
      <title>ANN: easyblogger 2.0 released</title>
      <link>https://blog.rraghur.in/2017/06/05/ann-easyblogger-2.0-released/</link>
      <pubDate>Mon, 05 Jun 2017 11:49:36 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/06/05/ann-easyblogger-2.0-released/</guid>
      <description>Yesterday I released easyblogger 2.0 - it&amp;#8217;s available on PYPI as usual - so to get it just do pip install easyblogger
 Major changes warranting a 2.0 version bump as follows
  Post download now defaults to generating a TOML frontmatter header that is compatible with Hugo.
  Post download will also include an alias to the permalink so that if you move your blog, old urls continue to work.</description>
    </item>
    
    <item>
      <title>CountdownEvent for synchronization</title>
      <link>https://blog.rraghur.in/2017/06/03/countdownevent-for-synchronization/</link>
      <pubDate>Sat, 03 Jun 2017 16:16:35 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/06/03/countdownevent-for-synchronization/</guid>
      <description>In the .Net framework a CountdownEvent is an object that represents a thread synchronization primitive that is signaled when its count reaches zero. It can be used to wait for N events to happen before letting a thread proceed further. This has a number of applications when you&amp;#8217;re trying to co-ordinate multiple threads.
 One example is say when you perform an action that generates some events. Let&amp;#8217;s say that your application also lets you register handlers for events and these handlers are (possibly) invoked on a different thread.</description>
    </item>
    
    <item>
      <title>Targetting the right object when using Python mock library&#39;s patch</title>
      <link>https://blog.rraghur.in/2017/05/27/targetting-the-right-object-when-using-python-mock-librarys-patch/</link>
      <pubDate>Sat, 27 May 2017 19:28:45 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/05/27/targetting-the-right-object-when-using-python-mock-librarys-patch/</guid>
      <description>When you&amp;#8217;re writing unit tests, and your class/function under test uses another object, you most likely want replace it with a mock object in your test so you can define it&amp;#8217;s behavior. This is where Python standard library&amp;#8217;s unittest.mock library comes in along with it&amp;#8217;s Mock class and patch functions.
 from mock import patch ... with patch(&#39;package.module.Classname&#39;) as mockObj: # do something with the mock     Tip 1: Figuring out the right namespace The trouble is that specifying what to mock isn&amp;#8217;t always quite straightforward - esp for someone like me who doesn&amp;#8217;t fully grok how python looks up objects in namespaces.</description>
    </item>
    
    <item>
      <title>Microcontainers with Iron.io&#39;s base images</title>
      <link>https://blog.rraghur.in/2017/05/23/microcontainers-with-iron.ios-base-images/</link>
      <pubDate>Tue, 23 May 2017 12:27:56 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/05/23/microcontainers-with-iron.ios-base-images/</guid>
      <description>While I knew about Alpine Linux and have been using them to create smaller docker images, I just came across Iron.io&amp;#8217;s set of alpine based container images for pretty much every major programming language.
 If you haven&amp;#8217;t come across Alpine yet, it&amp;#8217;s a tiny (5mb) security focused linux distribution based on musl libc &amp;amp; busybox. What&amp;#8217;s nicer is that they also have dev images which allow you to use images for development workflows as well.</description>
    </item>
    
    <item>
      <title>Ultisnips snippet for generating Hugo TOML front matter header</title>
      <link>https://blog.rraghur.in/2017/05/21/ultisnips-snippet-for-generating-hugo-toml-front-matter-header/</link>
      <pubDate>Sun, 21 May 2017 10:06:19 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/05/21/ultisnips-snippet-for-generating-hugo-toml-front-matter-header/</guid>
      <description>Here&amp;#8217;s a small Ultisnips snippet for creating a TOML front matter header for Hugo
 snippet post &#34;blog post&#34; +++ author = &#34;Raghu Rajagopalan&#34; date = &#34;`!v strftime(&#34;%FT%H:%M:%S&#34;).strftime(&#34;%z&#34;)[:2].&#34;:&#34; . strftime(&#34;%z&#34;)[3:]`&#34; publishdate = &#34;`!v strftime(&#34;%FT%H:%M:%S&#34;).strftime(&#34;%z&#34;)[:2].&#34;:&#34; . strftime(&#34;%z&#34;)[3:]`&#34; tags = [&#34;easyblogger&#34;, &#34;blogging&#34;] title = &#34;${1:title}&#34; lastmod = &#34;`!v strftime(&#34;%FT%H:%M:%S&#34;).strftime(&#34;%z&#34;)[:2].&#34;:&#34; . strftime(&#34;%z&#34;)[3:]`&#34; +++ $0 endsnippet   To update the last modified date on save, put this little autocmd in your .vimrc
 augroup AsciiDoc au!</description>
    </item>
    
    <item>
      <title>ANN: EasyBlogger 1.2.7 released</title>
      <link>https://blog.rraghur.in/2017/05/21/ann-easyblogger-1.2.7-released/</link>
      <pubDate>Sun, 21 May 2017 08:00:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/05/21/ann-easyblogger-1.2.7-released/</guid>
      <description>Made a few changes to EasyBlogger to support migrating from Blogger to Hugo. Changes are:
  In easyblogger get, the count is now optional [earlier defaulted to 10]. This now lets to slurp down your all blog posts if you so wish.
  Support for Hugo front-matter in TOML format. Generated files above will use post metadata to create TOML headers in each file - like so. The current permalink is preserved as an alias.</description>
    </item>
    
    <item>
      <title>Blog.Reboot()</title>
      <link>https://blog.rraghur.in/2017/05/17/blog.reboot/</link>
      <pubDate>Wed, 17 May 2017 14:14:30 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/05/17/blog.reboot/</guid>
      <description>I&amp;#8217;ve been considering moving away from blogger and using one of the static site generators for my blogging needs. There&amp;#8217;s quite a few things in the way though - migrating content, search engine rankings and then the fidelity of the migration. The last time wasn&amp;#8217;t too easy so I&amp;#8217;ve been putting it off for sometime&amp;#8230;&amp;#8203; finally, I&amp;#8217;ve gotten around to it and it took some doing.
 My blog was initially on Wordpress.</description>
    </item>
    
    <item>
      <title>Proxy PAC file for work</title>
      <link>https://blog.rraghur.in/2017/03/02/proxy-pac-file-for-work/</link>
      <pubDate>Thu, 02 Mar 2017 11:12:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/03/02/proxy-pac-file-for-work/</guid>
      <description>Proxy pac file to switch proxy based on whether I’m connected to OpenVPN or not.
 Basically, OpenVPN IP is 10.8.0.6 and at home I have 192.168.1.xxx - so if either of those two are available, then I bypass proxy.
 function FindProxyForURL(url, host) { // firefox - Ctrl-Shift-J Chrome/Chromium: chrome://net-internals/#events var debug = true; var log = function() { if (debug) { var args = Array.prototype.slice.call(arguments); alert(args.join(&#34; &#34;)); } } var bypassProxy = false; log(&#34;</description>
    </item>
    
    <item>
      <title>Easyblogger 1.2.4 released to PYPI</title>
      <link>https://blog.rraghur.in/2017/03/01/easyblogger-1.2.4-released-to-pypi/</link>
      <pubDate>Wed, 01 Mar 2017 15:35:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/03/01/easyblogger-1.2.4-released-to-pypi/</guid>
      <description> Just pushed out a minor update v1.2.4 to Easyblogger
 This release now let’s you get blog posts by url
 # get a post by url $ easyblogger get -u &#34;https://blog.rraghur.in/2015/06/js-development-2015.html&#34; 658290074469501527,JS development - 2015,/2015/06/js-development-2015.html   </description>
    </item>
    
    <item>
      <title>Asciidoc feature tour on Blogger</title>
      <link>https://blog.rraghur.in/2017/02/27/asciidoc-feature-tour-on-blogger/</link>
      <pubDate>Mon, 27 Feb 2017 09:09:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/27/asciidoc-feature-tour-on-blogger/</guid>
      <description>So this post is more a memory aid for me rather than anything as I transition over to using asciidoc for my blogging/general technical writing needs. Content is almost verbatim from the asciidoc online user manual - but since I have to wrangle blogger css a bit, this is basically to check if everything works as advertised on the tin styling wise.
 Code with callouts using log4net; using log4net.Config; using log4net.</description>
    </item>
    
    <item>
      <title>AsciiDoc vs Markdown</title>
      <link>https://blog.rraghur.in/2017/02/26/asciidoc-vs-markdown/</link>
      <pubDate>Sun, 26 Feb 2017 20:49:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/26/asciidoc-vs-markdown/</guid>
      <description>I’ve been a markdown user almost exclusively - more due to github and stackoverflow popularizing the format. Markdown is great for lightweight markup and with excellent tools like Pandoc, it’s a joy to produce good looking technical docs. Suffice to say that I’ve been taken with markdown and even use it to produce word documents and such.
 While Markdown is great, it has it’s share of niggles - try to go beyond the basics and want some advanced features and you get into trouble.</description>
    </item>
    
    <item>
      <title>A C# Trie implementation</title>
      <link>https://blog.rraghur.in/2017/02/24/a-c-trie-implementation/</link>
      <pubDate>Fri, 24 Feb 2017 11:07:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/24/a-c-trie-implementation/</guid>
      <description>What’s a trie? A trie is a datastructure that’s optimized for prefix retrieval. It’s basically a prefix tree with each node being the letters seen till that point. For example - A trie with apple
 
 Now if we add apply to the tree above, we get:
 
 What if we add something without a common prefix - say boat
 
 I needed a trie recently and was checking Nuget for available libraries - surprisingly there aren’t too many datastructure libraries available for .</description>
    </item>
    
    <item>
      <title>EasyBlogger now supports pandoc filters</title>
      <link>https://blog.rraghur.in/2017/02/20/easyblogger-now-supports-pandoc-filters/</link>
      <pubDate>Mon, 20 Feb 2017 22:27:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/20/easyblogger-now-supports-pandoc-filters/</guid>
      <description>I just pushed version 1.1.0 of EasyBlogger to pypi. Notable changes are that it now exposes ability to set pandoc filters.
 Pandoc filters basically let you write plugins that can affect the document conversion. For example, my filter - mermaid-filter will let you embed diagrams in text using mermaid syntax and then when you convert a markdown document, generate a .png file on the fly, upload it to imgur and embed the link in the generated HTML file - so that your final HTML shows the image and not a fenced code block!</description>
    </item>
    
    <item>
      <title>Feature branches vs feature flags</title>
      <link>https://blog.rraghur.in/2017/02/20/feature-branches-vs-feature-flags/</link>
      <pubDate>Mon, 20 Feb 2017 14:56:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/20/feature-branches-vs-feature-flags/</guid>
      <description>Of late, we’ve been working with more and more customers who want to adopt DevOps friendly engineering culture and practices. While customers love what they hear about DevOps, esp that it lets you ship features sooner out of the door and shorten feedback cycles, my experience with customer organizations has been somewhat a mixed bag in terms of true on the ground adoption.
 A recent experience that has gotten me thinking is about feature branches vs feature flagging.</description>
    </item>
    
    <item>
      <title>Neovim on Windows</title>
      <link>https://blog.rraghur.in/2017/02/20/neovim-on-windows/</link>
      <pubDate>Mon, 20 Feb 2017 10:25:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/20/neovim-on-windows/</guid>
      <description>If you’re a fan of Vim, then no doubt you’ve heard of Neovim - in fact, neovim has been a key driver in much of the changes that have made it into the latest version of vim (async, job control etc).
 Neovim works extremely well as a daily driver on Linux - but for Windows support has been lagging. I’ve been using a fork from contributor equalsraf who’s been behind a lot of the windows support.</description>
    </item>
    
    <item>
      <title>Cleaned out my Desktop machine today</title>
      <link>https://blog.rraghur.in/2017/02/19/cleaned-out-my-desktop-machine-today/</link>
      <pubDate>Sun, 19 Feb 2017 14:51:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/19/cleaned-out-my-desktop-machine-today/</guid>
      <description>Cleaned out my desktop machine today. It&amp;#8217;s been a long time since I did and it&amp;#8217;s got loads of dust and dust bunnies inside. The fan&amp;#8217;s been whining away for sometime and gotten irritating.
 It&amp;#8217;s been a good ten days since I felt good - had come down with another attack of pancreatitis and after the usual running around, finally was feeling ok.
 Anyway, armed with a compressed air can, microfiber gloves, screwdrivers, thermal paste and isopropyl alcohol, opened up my case.</description>
    </item>
    
    <item>
      <title>Reloading configuration in .NET core</title>
      <link>https://blog.rraghur.in/2017/02/08/reloading-configuration-in-.net-core/</link>
      <pubDate>Wed, 08 Feb 2017 11:52:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/08/reloading-configuration-in-.net-core/</guid>
      <description>Being able to reload configuration on change is typically a key requirement. ASP.NET core configuration infrastructure provides a reloadOnChange property that you can set:
 var builder = new ConfigurationBuilder() .SetBasePath(env.ContentRootPath) .AddJsonFile(&#34;appsettings.json&#34;, optional: true, reloadOnChange: true) .AddJsonFile($&#34;appsettings.{env.EnvironmentName}.json&#34;, optional: true) .AddEnvironmentVariables(); Configuration = builder.Build();   However, your application still has to handle the change. In asp.net core, this is via a IChangeToken and the Configuration class provides a GetReloadToken().RegisterChangeCallback - the only trouble is that this is fired only once since the change token can change.</description>
    </item>
    
    <item>
      <title>Building slim .NET core docker images</title>
      <link>https://blog.rraghur.in/2017/02/06/building-slim-.net-core-docker-images/</link>
      <pubDate>Mon, 06 Feb 2017 19:27:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/06/building-slim-.net-core-docker-images/</guid>
      <description>As I play with .NET core, I was getting a little frustrated with waiting for docker build and docker push to complete - the docker images for .net core are pretty large - weighing in at a gig as shown below. My trivial web service is hardly 80mb with dependencies - so this did not feel good at all.
 rraghur/webapi-app v3 9ff77929c379 25 hours ago 976.5 MB   The .</description>
    </item>
    
    <item>
      <title>Blogger REST Api inconsistencies</title>
      <link>https://blog.rraghur.in/2017/02/04/blogger-rest-api-inconsistencies/</link>
      <pubDate>Sat, 04 Feb 2017 12:59:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/04/blogger-rest-api-inconsistencies/</guid>
      <description>Yesterday I noticed that blogger API now supports posting as draft. This wasn&amp;#8217;t the case when I wrote easyblogger - a cli tool to edit and post to Blogger from Vim.
 In any case, since the API now has the ability, I updated EasyBlogger to post as draft. Trouble came when I went to update an existing draft - it fails with a 404
 C:\Users\raghuramanr&amp;gt;easyblogger file c:\Users\raghuramanr\blogentries\a.sample.draft.md    raise HttpError(resp, content, uri=self.</description>
    </item>
    
    <item>
      <title>Kubernetes cluster visualizer</title>
      <link>https://blog.rraghur.in/2017/02/02/kubernetes-cluster-visualizer/</link>
      <pubDate>Thu, 02 Feb 2017 11:14:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/02/02/kubernetes-cluster-visualizer/</guid>
      <description>GCP live k8s visualizer is a cool project to visualize your k8s cluster. As pods, services &amp;amp; other resources come in and go out, it shows a visual map of your cluster
 
 gcp live k8s visualizer
 The animation above is from this guide. Followed the instructions there in but ran into javascript null errors .
 Anyway, took a look this morning and while it was a simple fix, I&amp;#8217;m not sure why the kube api is returning null for something that&amp;#8217;s a collection?</description>
    </item>
    
    <item>
      <title>Minikube on Windows - teething troubles</title>
      <link>https://blog.rraghur.in/2017/01/31/minikube-on-windows-teething-troubles/</link>
      <pubDate>Tue, 31 Jan 2017 20:40:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/01/31/minikube-on-windows-teething-troubles/</guid>
      <description>The .minikube folder location So I was recently getting Minikube on my work laptop. As it happens, this did not go painlessly. My C drive has a measly 100G (free 8G) so almost all tools I install, if their dot file folder is going to hold anything significant like virtualbox images, I usually symlink it off to my D drive which is a lot roomier.
 DON&amp;#8217;T DO THAT WITH MINIKUBE YET&amp;#8230;&amp;#8203;.</description>
    </item>
    
    <item>
      <title>Torrent download notifications with Pushover</title>
      <link>https://blog.rraghur.in/2017/01/30/torrent-download-notifications-with-pushover/</link>
      <pubDate>Mon, 30 Jan 2017 18:21:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/01/30/torrent-download-notifications-with-pushover/</guid>
      <description>Last weekend I setup torrent complete push notifications to be delivered via pushover. I have my media center box running ubuntu 16.04 with Kodi. It also serves as my torrent box with qbittorrent.
 On Android Transdroid is great to manage torrents but it doesn&amp;#8217;t have auto refresh. Given that I rediscovered my pushover account last week, it seemed just begging to be used.
 Here&amp;#8217;s a shell script to send push notifications - just set it up in in qbittorrent (or whatever you use) to run at torrent completion - like so /bin/user/bin/push.</description>
    </item>
    
    <item>
      <title>Azure VM - start/stop using automation</title>
      <link>https://blog.rraghur.in/2017/01/27/azure-vm-start/stop-using-automation/</link>
      <pubDate>Fri, 27 Jan 2017 19:50:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/01/27/azure-vm-start/stop-using-automation/</guid>
      <description>So this is just sharing my long time azure automation script to start/stop a vm. I have this on a schedule so it starts on weekdays in the morning and is shutdown in the evening. There&amp;#8217;s also a couple of webhooks so I can start/shutdown using my phone.
 The latest addition is integrating push notifications to my phone - I have a Pushover which offers a nice api to send push notifications to your devices.</description>
    </item>
    
    <item>
      <title>Syncthing - run your own sync server</title>
      <link>https://blog.rraghur.in/2017/01/26/syncthing-run-your-own-sync-server/</link>
      <pubDate>Thu, 26 Jan 2017 18:29:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/01/26/syncthing-run-your-own-sync-server/</guid>
      <description>What I&amp;#8217;m after I&amp;#8217;m trying out syncthing - I&amp;#8217;ve become frustrated that none of the other options seem to tick all the boxes of my needs. Here&amp;#8217;s what I need and it doesn&amp;#8217;t seem that I&amp;#8217;m asking for a lot here:
  Bi directional file syncing
  Security &amp;amp; privacy - at rest and in motion
  Windows client
  Linux desktop client
  Android client.</description>
    </item>
    
    <item>
      <title>Zsh constantly crashes on Msys64</title>
      <link>https://blog.rraghur.in/2017/01/26/zsh-constantly-crashes-on-msys64/</link>
      <pubDate>Thu, 26 Jan 2017 09:08:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/01/26/zsh-constantly-crashes-on-msys64/</guid>
      <description>So, I wanted to try out Zsh as a bash replacement after using it on and off. Now I don&amp;#8217;t write a lot of scripts - but mostly for running apps etc. The only real improvement that I needed was cross shell history&amp;#8230;&amp;#8203; I can never remember where I typed a command and hitting Ctrl-R and finding the command is super nice.
 On my msys64 install, did a pacman -Su zsh and zsh was installed.</description>
    </item>
    
    <item>
      <title>Posix compatible PTY in Windows</title>
      <link>https://blog.rraghur.in/2017/01/24/posix-compatible-pty-in-windows/</link>
      <pubDate>Tue, 24 Jan 2017 17:33:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2017/01/24/posix-compatible-pty-in-windows/</guid>
      <description>Get a real Posix compatible PTY in Windows If you do any work on hte console in WIndows and are not on Windows 10, then you should probably use Conemu.
 If you&amp;#8217;re a linux shell fan and are using Msys2 or Cygwin on windows, then an additional tweak is to enable the experimental Posix compatible PTY support in ConEmu.
 I&amp;#8217;ve been a long term ConEmu user and did not know about this till yesterday.</description>
    </item>
    
    <item>
      <title>Neovim on Windows 7</title>
      <link>https://blog.rraghur.in/2015/06/04/neovim-on-windows-7/</link>
      <pubDate>Thu, 04 Jun 2015 20:45:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2015/06/04/neovim-on-windows-7/</guid>
      <description>Neovim on Windows For folks who dig vim as an editor, you have most likely heard of Neovim - a fork of the vim with the goal to modernize the codebase and add unit tests.
 In fact, on Linux, the editor&amp;#8217;s been functional for quite some time and I&amp;#8217;ve replaced vim with neovim - and I&amp;#8217;ve hardly ever come across a serious issue. My original dotvim works flawlessly with all 54 plugins loaded and running!</description>
    </item>
    
    <item>
      <title>JS development - 2015</title>
      <link>https://blog.rraghur.in/2015/06/01/js-development-2015/</link>
      <pubDate>Mon, 01 Jun 2015 17:37:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2015/06/01/js-development-2015/</guid>
      <description>#_javascript_in_20151. Javascript in 2015 If you’re managing any sort web application development then you’re going to manage how your front end is built and how well it stands up to change over time. Even if FE is not of your area of expertise or you generally hate having to do anything with the front end (typical of most folks who spend their time lower in the stack), it doesn’t hurt to understand the space - especially if it’s (or may become) your job to manage the software development.</description>
    </item>
    
    <item>
      <title>Password utopia - finally!</title>
      <link>https://blog.rraghur.in/2014/07/31/password-utopia-finally/</link>
      <pubDate>Thu, 31 Jul 2014 12:51:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2014/07/31/password-utopia-finally/</guid>
      <description>Passwords - what a pain. Bajillions of websites, different usernames, work projects and their environments and their passwords&amp;#8230;&amp;#8203;how the hell are you supposed to keep track of all of it. And then a dozen different machines that you work on&amp;#8230;&amp;#8203; and need access to your passwords
 Each of us have their own mechanisms - plain text file &#39;hidden&#39; some place to slightly more advanced ones. For the longest of times, I used to have a GPG encrypted text file sync&amp;#8217;ed over my github repository.</description>
    </item>
    
    <item>
      <title>Weekend with yeoman, grunt, bower and oh so much more</title>
      <link>https://blog.rraghur.in/2014/05/18/weekend-with-yeoman-grunt-bower-and-oh-so-much-more/</link>
      <pubDate>Sun, 18 May 2014 19:12:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2014/05/18/weekend-with-yeoman-grunt-bower-and-oh-so-much-more/</guid>
      <description>Weekend with Yeoman So it started with a post on reddit (something that I spend too much time on.) about an interactive Angular JS tutorial. It&amp;#8217;s been some time since I played with Angular and decided to spend some time on it. One website led to another and I eventually got around to Yeoman. So ended up digging into Yeoman a lot more than anything else. Given our status at work building brewmaster and scheduler, and our architecture where the front end is just consuming REST services, we might be able to move to a pure Nodejs front end.</description>
    </item>
    
    <item>
      <title>Nginx reverse proxy with SSL offloading and authentication</title>
      <link>https://blog.rraghur.in/2014/05/14/nginx-reverse-proxy-with-ssl-offloading-and-authentication/</link>
      <pubDate>Wed, 14 May 2014 00:39:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2014/05/14/nginx-reverse-proxy-with-ssl-offloading-and-authentication/</guid>
      <description>What&amp;#8217;s it Recently we&amp;#8217;ve started down the ElasticSearch/Kibana road and also had a handful of other node.js apps. Setting up access control for these was becoming a pain - especially with ES which doesn&amp;#8217;t come with any authentication/security out of the box. General advice on the interwebs is to let upstream server handle authentication and SSL + basic auth is good enough.
  Install nginx  sudo apt-get install nginx apache2-utils Apache2 utils is for generating the htpasswd file for use later.</description>
    </item>
    
    <item>
      <title>Upgrading to Kitkat on Nexus4 from rooted, custom 4.3 ROM</title>
      <link>https://blog.rraghur.in/2013/11/15/upgrading-to-kitkat-on-nexus4-from-rooted-custom-4.3-rom/</link>
      <pubDate>Fri, 15 Nov 2013 17:21:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/11/15/upgrading-to-kitkat-on-nexus4-from-rooted-custom-4.3-rom/</guid>
      <description>Kitkat&amp;#8217;s here! So Google finally posted kitkat factory images for Nexus4. Saw it on Reddit this morning and started the download before I had my morning cuppa.
 Hmm - and then to flash. Flashing image will nuke your device (including all photos etc) which I didn&amp;#8217;t want. As I was on AOKP, a data wipe will be needed but there&amp;#8217;s no reason to kill my storage too. And while we&amp;#8217;re at it, why not also root it in the process.</description>
    </item>
    
    <item>
      <title>Flickr-Uploader is like Google&#43; Autobackup - only at full resolution.</title>
      <link>https://blog.rraghur.in/2013/11/08/flickr-uploader-is-like-google-autobackup-only-at-full-resolution./</link>
      <pubDate>Fri, 08 Nov 2013 10:28:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/11/08/flickr-uploader-is-like-google-autobackup-only-at-full-resolution./</guid>
      <description>Auto backup It&amp;#8217;s been some time since I&amp;#8217;ve used anything other than my Nexus 4 to take photos. And after a recent scare where I thought I&amp;#8217;d lost 10 years worth of memories after a hard disk failure, I&amp;#8217;ve been very diligent about having one or two backups.
 Google+ does a great job of automatically uploading photos and then applying the auto awesome effects - but just with one downside - if you want to upload photos at full resolution, it will most probably count against your storage quota.</description>
    </item>
    
    <item>
      <title>Vim: Making Ultisnips and NeoComplete play nice</title>
      <link>https://blog.rraghur.in/2013/10/05/vim-making-ultisnips-and-neocomplete-play-nice/</link>
      <pubDate>Sat, 05 Oct 2013 07:02:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/10/05/vim-making-ultisnips-and-neocomplete-play-nice/</guid>
      <description>Plugin conflict! If you have both Ultisnips and NeoComplete then you cannot use the same key for expansion. I used to have tab mapped out to both for completion with AutoComplPop and Ultisnips. I had tab set for g:UltiSnipsJumpForwardTrigger but NeoComplete still doesn&amp;#8217;t like it. So now, that&amp;#8217;s changed to Control + Tab and things are good again.
 let g:UltiSnipsExpandTrigger=&#34;&amp;lt;C-CR&amp;gt;&#34; let g:UltiSnipsJumpForwardTrigger=&#34;&amp;lt;C-tab&amp;gt;&#34; let g:UltiSnipsJumpBackwardTrigger=&#34;&amp;lt;s-tab&amp;gt;&#34;   Only wish one NeoComplete OR Ultisnips makers see this and make it work without conflict</description>
    </item>
    
    <item>
      <title>What publishing a python module taught me</title>
      <link>https://blog.rraghur.in/2013/09/04/what-publishing-a-python-module-taught-me/</link>
      <pubDate>Wed, 04 Sep 2013 23:58:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/09/04/what-publishing-a-python-module-taught-me/</guid>
      <description>Programming in Python So I&amp;#8217;ve mostly used python for one off scripts and tools and at one point for a serious foray into Django - but never came into a situation where I&amp;#8217;d thought of publishing anything.
 Hmm - crossed that bridge over this weekend - and its been a fun journey. I&amp;#8217;m writing this post with what I wrote :)
 Things I&amp;#8217;ve picked up
 Code  Better understanding into Python modules, classes and code organization for libraries.</description>
    </item>
    
    <item>
      <title>Fixing Wifi sleep of death</title>
      <link>https://blog.rraghur.in/2013/08/30/fixing-wifi-sleep-of-death/</link>
      <pubDate>Fri, 30 Aug 2013 20:05:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/08/30/fixing-wifi-sleep-of-death/</guid>
      <description>The problem I have a TP-Link WN722N USB Wifi dongle. Linux Mint picked it up during install and seemed like all was good.
 Then the other day, noticed that sometimes WiFi would be flaky like hell - all I&amp;#8217;d get is the password prompt. Turns out that this is a common problem with USB Wifi. After a few days, the pattern appeared to be a recurring problem after putting the computer sleep.</description>
    </item>
    
    <item>
      <title>Moving from Wordpress.com to Blogger</title>
      <link>https://blog.rraghur.in/2013/08/26/moving-from-wordpress.com-to-blogger/</link>
      <pubDate>Mon, 26 Aug 2013 11:08:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/08/26/moving-from-wordpress.com-to-blogger/</guid>
      <description>Moving from wordpress So I moved my blog from its old home at http://niftybits.wordpress.com to I&amp;#8217;ve also moved out of wordpress.com to blogger. For quite some time, I&amp;#8217;ve not been happy with Wordpress&amp;#8217;s abilities for a tech blog. It&amp;#8217;s a commercial endeavour and so if you need additional features/tweakability you&amp;#8217;ve got to fork out the good stuff. Anyway, I was intending to get my own domain and wordpress hosting that would give me full control over the blog engine and the ability to install any addons that I wanted.</description>
    </item>
    
    <item>
      <title>Linux Mint 15 KDE - tweaks and fixes</title>
      <link>https://blog.rraghur.in/2013/08/24/linux-mint-15-kde-tweaks-and-fixes/</link>
      <pubDate>Sat, 24 Aug 2013 11:04:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/08/24/linux-mint-15-kde-tweaks-and-fixes/</guid>
      <description>Additional fixes post installation SSH connection refused So today I tried ssh&amp;#8217;ing into the desktop and no go. I was getting a connection refused and thought it had to do with either SSH not being installed or being blocked by the firewall. Later on when I checked, OpenSSH server was installed and the service was also running
 sudo service status ssh ssh start/running, process 2709   Hmm - this is weird.</description>
    </item>
    
    <item>
      <title>Mixing Generics, Inheritance and Chaining</title>
      <link>https://blog.rraghur.in/2013/08/20/mixing-generics-inheritance-and-chaining/</link>
      <pubDate>Tue, 20 Aug 2013 13:24:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/08/20/mixing-generics-inheritance-and-chaining/</guid>
      <description>In my last post on unit testing, I had written about a technique I&amp;#8217;d learnt forhttp://niftybits.wordpress.com/2013/08/14/unit-tests-simplifying-test-setup-with-builders/[simplifying test set ups with the builder pattern.] It provides a higher level, more readable API resulting in DAMP tests.
 Implementing it though presented a few interesting issues that were fun to solve and hopefully, instructive as well. I for one will need to look it up if I spend a few months doing something else - so got to write it down :).</description>
    </item>
    
    <item>
      <title>Unit Tests: Simplifying test setup with Builders</title>
      <link>https://blog.rraghur.in/2013/08/14/unit-tests-simplifying-test-setup-with-builders/</link>
      <pubDate>Wed, 14 Aug 2013 06:16:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/08/14/unit-tests-simplifying-test-setup-with-builders/</guid>
      <description>Had some fun at work today. The web portal to Scheduler service is written in ASP.NET MVC4. As such we have a lot of controllers and of course there are unit tests that run on the controllers. Now, while ASP.NET MVC4 apparently did have testability as a goal, it still requires quite a lot of orchestration to test controllers.
 Now all this orchestration and mock setups only muddies the waters and gets in the way test readability.</description>
    </item>
    
    <item>
      <title>And we&#39;re back to windows</title>
      <link>https://blog.rraghur.in/2013/08/11/and-were-back-to-windows/</link>
      <pubDate>Sun, 11 Aug 2013 03:06:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/08/11/and-were-back-to-windows/</guid>
      <description>Well not really - but I have your attention now&amp;#8230;&amp;#8203; So in my last post, I talked about moving my home computer from Win 7 to Linux Mint KDE. That went ok for the most part other than some minor issues.
 Fast-forward a day and I hit my first user issue :)&amp;#8230;&amp;#8203; wife&amp;#8217;s workplace has some video content that is distributed as DRM protected swf files that wil play only through a player called HaiHaiSoft player!</description>
    </item>
    
    <item>
      <title>Upgraded to Linux</title>
      <link>https://blog.rraghur.in/2013/08/10/upgraded-to-linux/</link>
      <pubDate>Sat, 10 Aug 2013 04:39:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/08/10/upgraded-to-linux/</guid>
      <description>So after suffering tons of crashes (likely due to AMD drivers) and general system lagginess, I finally decided to ditch windows and move to linux full time. This is on my home desktop which is more a family computer than something that only I would use. I was a little apprehensive with driver support as usual and tricky stuff like suspend to ram (s3) which always seems highly driver dependent and problematic on Linux (it is still a pain on my XBMCBuntu box).</description>
    </item>
    
    <item>
      <title>Vimgrep on steriods - even on Windows</title>
      <link>https://blog.rraghur.in/2013/07/25/vimgrep-on-steriods-even-on-windows/</link>
      <pubDate>Thu, 25 Jul 2013 15:17:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/07/25/vimgrep-on-steriods-even-on-windows/</guid>
      <description>So I was looking at this vim tip for finding in files from within Vim - while it looks helpful, there are a number of possible improvements:
  Why a static binding? being able to tweak the patterns or the files to search is quite common - so much more value if you could have the command printed in the command line, ready to be edited to your heart&amp;#8217;s content or just go ahead and execute the search with Enter.</description>
    </item>
    
    <item>
      <title>Downloading over an unreliable connection with Wget</title>
      <link>https://blog.rraghur.in/2013/02/16/downloading-over-an-unreliable-connection-with-wget/</link>
      <pubDate>Sat, 16 Feb 2013 23:46:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/02/16/downloading-over-an-unreliable-connection-with-wget/</guid>
      <description>This is a part rant, part tip - so bear with me&amp;#8230;&amp;#8203; My broadband connection absolutely sucks over the past week. I upgraded from 2Mbps with a download limit to a 4Mbps with unlimited downloads and since then it has been nothing but trouble&amp;#8230;&amp;#8203; Damn BSNL!! I&amp;#8217;ve probably registered about 30 odd complaints with them to no avail. If there was a Nobel for bad customer service, BSNL would probably win it by a mile.</description>
    </item>
    
    <item>
      <title>Single Page Apps</title>
      <link>https://blog.rraghur.in/2013/02/03/single-page-apps/</link>
      <pubDate>Sun, 03 Feb 2013 11:09:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2013/02/03/single-page-apps/</guid>
      <description>We released the Scheduler service(cloud hosted cron that does webhooks) on the 18th of Jan. It was our first release (still in beta) and you can sign up for it via the Windows Azure store as an addon. Upcoming release will have a full portal and the ability to register without going via the Windows Azure portal.
 We&amp;#8217;ve been building the user portal to the Scheduler service as a Single Page app (SPA) and I wanted to share a some background and insights we&amp;#8217;ve gained.</description>
    </item>
    
    <item>
      <title>Rewriting history with Git</title>
      <link>https://blog.rraghur.in/2012/12/13/rewriting-history-with-git/</link>
      <pubDate>Thu, 13 Dec 2012 15:28:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/12/13/rewriting-history-with-git/</guid>
      <description>What&amp;#8217;s this about rewriting history? While developing any significant piece of code, you end up making a lot of incremental advances. Now, it&amp;#8217;ll be ideal if you are able to save your state at each increment with a commit and then proceed forward. This gives you the freedom to try out approaches, go in one way or the other and at each point have a safe harbor to return to. However, this ends up with your history looking messy and folks whom you&amp;#8217;re collaborating with have to follow your mental drivel as you slowly built up the feature.</description>
    </item>
    
    <item>
      <title>Nexus 7 - First impressions and tips and tricks</title>
      <link>https://blog.rraghur.in/2012/10/03/nexus-7-first-impressions-and-tips-and-tricks/</link>
      <pubDate>Wed, 03 Oct 2012 04:18:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/10/03/nexus-7-first-impressions-and-tips-and-tricks/</guid>
      <description>So I got my Dad the 8GB Nexus 7. This is an awesome tablet - exactly what a good tablet should be. The UI is buttery smooth and things just fly. The hardware is not a compromise, excellent price point and overall a superb experience.
 Of course, there are some things to deal with like 8 GB storage,lack of mobile data connectivity, lack of expandable storage and no rear camera.</description>
    </item>
    
    <item>
      <title>Websocket server using Jetty/Cometd</title>
      <link>https://blog.rraghur.in/2012/09/26/websocket-server-using-jetty/cometd/</link>
      <pubDate>Wed, 26 Sep 2012 04:52:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/09/26/websocket-server-using-jetty/cometd/</guid>
      <description>So I just wrote up a Websocket server using CometD/Bayeux. It&amp;#8217;s a ridiculously simple app - but went quite a long way in helping to understand the nitty gritties with putting up a Websocket server and CometD/Bayeux. Thought that I&amp;#8217;ll put it up for reference - should help in getting a leg up on getting started with CometD.
 The sample&amp;#8217;s up on github at https://github.com/raghur/rest-websocket-sample
 Here&amp;#8217;s how to go about running it:</description>
    </item>
    
    <item>
      <title>Android WordHero - product lessons</title>
      <link>https://blog.rraghur.in/2012/09/21/android-wordhero-product-lessons/</link>
      <pubDate>Fri, 21 Sep 2012 17:27:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/09/21/android-wordhero-product-lessons/</guid>
      <description>So, yesterday I figured that now I&amp;#8217;m an addict.. fully and totally to something called wordhero on my phone&amp;#8230;&amp;#8203; it&amp;#8217;s one of those games where you have a 4x4 grid of letters and you need to find as many words as you can within 2 mins. Nothing special&amp;#8230;&amp;#8203; and there are tons of look alikes and also rans on the Google Play store. Even installed some of them and then removed them&amp;#8230;&amp;#8203;</description>
    </item>
    
    <item>
      <title>Google Maps Navigation enabled in India!!</title>
      <link>https://blog.rraghur.in/2012/09/06/google-maps-navigation-enabled-in-india/</link>
      <pubDate>Thu, 06 Sep 2012 09:06:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/09/06/google-maps-navigation-enabled-in-india/</guid>
      <description>Just came across an awesome piece of news - Google Maps now has turn by turn, voice guided directions officially in India!!
 Uptil now, I used to get the Ownhere mod for Google Maps that enables World navigation - It used to be available on XDA-Forums but got taken down once google frowned on it!
 No more of that hassle - just go to Play store and install Maps.</description>
    </item>
    
    <item>
      <title>Converting xml to json with a few nice touches</title>
      <link>https://blog.rraghur.in/2012/08/21/converting-xml-to-json-with-a-few-nice-touches/</link>
      <pubDate>Tue, 21 Aug 2012 13:49:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/08/21/converting-xml-to-json-with-a-few-nice-touches/</guid>
      <description>During my recent outings in heavyweight programming, one of the things we needed to do was converting a large XML structure from the server to JSON object on the browser to facilitate easy manipulation/inspection.
 Also, the XML from the server was not the nice kind - what I mean is that tag names were consistent - but the content was wildly inconsistent. For ex, all of the following were recd:</description>
    </item>
    
    <item>
      <title>Microsoft Releases Git TFS integration tool</title>
      <link>https://blog.rraghur.in/2012/08/21/microsoft-releases-git-tfs-integration-tool/</link>
      <pubDate>Tue, 21 Aug 2012 11:22:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/08/21/microsoft-releases-git-tfs-integration-tool/</guid>
      <description>Microsoft released a cross platform Git TFS integration tool Git TF!! It&amp;#8217;s definitely a good step and acknowledgement about the mindshare that Git has. I took it for a spin - the integration is supposed to be cross platform - so that it should work on cygwin also. However, the first time I tried, it did not and had to tweak the script a little.
 In the script &amp;lt;install folder&amp;gt;/git-tf</description>
    </item>
    
    <item>
      <title>Coffeescript rocks!</title>
      <link>https://blog.rraghur.in/2012/08/10/coffeescript-rocks/</link>
      <pubDate>Fri, 10 Aug 2012 06:16:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/08/10/coffeescript-rocks/</guid>
      <description>I&amp;#8217;ve been absent a few weeks from the blog. Life got taken over by work - been deep in the Javascript jungles and Coffeescript has been a lifesaver. Based on my earlier peek at Coffeescript, we went ahead full on with Coffeescript and I have to say it has been a pleasant ride for the team with over 4.7KLoc of Javascript (with Coffeescript source weighing in around 3.7KLoc including comments etc) that now I can confidently recommend it for any sort of Javascript heavy development.</description>
    </item>
    
    <item>
      <title>Media center setup - XBMC-XVBA</title>
      <link>https://blog.rraghur.in/2012/07/03/media-center-setup-xbmc-xvba/</link>
      <pubDate>Tue, 03 Jul 2012 02:08:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/07/03/media-center-setup-xbmc-xvba/</guid>
      <description>I finally got my nettop - AMD E-350 based barebones system. Installed 4G of RAM and the plan was to set it up with XBMCBuntu or XBMC-XvBA. Instead of installing the XBMC-XvBA version directly, I figured that I could start with XBMCBuntu, see how it does and then if necessary move to the XvBA enabled builds.
 I don&amp;#8217;t have a hard drive for the nettop - the plan was to have the system run off a 8Gig pen drive.</description>
    </item>
    
    <item>
      <title>Avast! trial expiration kills Internet connection - how bad is that!</title>
      <link>https://blog.rraghur.in/2012/06/30/avast-trial-expiration-kills-internet-connection-how-bad-is-that/</link>
      <pubDate>Sat, 30 Jun 2012 06:54:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/06/30/avast-trial-expiration-kills-internet-connection-how-bad-is-that/</guid>
      <description>So I use &#39;free for personal use&#39; Avast Antivirus at home for the past couple of years. It&amp;#8217;s been mostly good though I&amp;#8217;ve had some reservations about it - namely, nag pop-ups and so on. Some months ago (or maybe was it a year ago?) there was a program update and it wanted me to install &#39;Avira Internet Security&#39;. Now I had no need for this (I use COMODO firewall which has been quite good) however, there was no way around it.</description>
    </item>
    
    <item>
      <title>Media center upgrades - part two</title>
      <link>https://blog.rraghur.in/2012/04/04/media-center-upgrades-part-two/</link>
      <pubDate>Wed, 04 Apr 2012 15:06:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/04/04/media-center-upgrades-part-two/</guid>
      <description>So this is a continuation to my last post on my effort to upgrade the media center at home. While I wait for hardware to come, I&amp;#8217;ve been reading up through forums and blogs online and am finding it real hard to get some good advice. So, thought it might help to list down concisely the situation as it stands currently, in the hope that it will server other folks who&amp;#8217;re trying to find similar answers.</description>
    </item>
    
    <item>
      <title>Compiling Vim again - Cygwin</title>
      <link>https://blog.rraghur.in/2012/04/02/compiling-vim-again-cygwin/</link>
      <pubDate>Mon, 02 Apr 2012 13:55:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/04/02/compiling-vim-again-cygwin/</guid>
      <description>Vim installed by Cygwin&amp;#8217;s setup project does not have Ruby/Python/Perl support enabled by default. As my list of must have vim plugins has a few which use Ruby and Python, thought that it might be good to build my own Cygwin build of Vim. Turned out a little more work than I thought - but that&amp;#8217;s more due to the misleading (at least for me :) ) Make file in the vim source tree called Make_cyg.</description>
    </item>
    
    <item>
      <title>Media center upgrades</title>
      <link>https://blog.rraghur.in/2012/03/31/media-center-upgrades/</link>
      <pubDate>Sat, 31 Mar 2012 06:21:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/03/31/media-center-upgrades/</guid>
      <description>I have a small form factor (SFF) machine on the way to take up duties as a media center machine. After waiting for long, finally pulled the trigger on a Foxconn Barebones Book sized system and 4G of RAM. I haven&amp;#8217;t ordered a hard drive - the plan is to run XBMC completely off a USB drive. As it is, media is on a 1TB external disk and the cost of 2.</description>
    </item>
    
    <item>
      <title>Moved to bitbucket</title>
      <link>https://blog.rraghur.in/2012/03/23/moved-to-bitbucket/</link>
      <pubDate>Fri, 23 Mar 2012 23:15:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/03/23/moved-to-bitbucket/</guid>
      <description>I&amp;#8217;ve been using Git Enterprise for hosting private repositories since github&amp;#8217;s free plan doesn&amp;#8217;t include any private repos. Git enterprise&amp;#8217;s worked - but the UI leads a lot to be desired the few times that you actually have to use the web interface.
 So the other day while doing something else, I landed on bitbucket. Bitbucket is Atlassian&amp;#8217;s code hosting service - and for some reason I was under the impression that it only supported mercurial repositories.</description>
    </item>
    
    <item>
      <title>Hey look! A flying pig!</title>
      <link>https://blog.rraghur.in/2012/03/22/hey-look-a-flying-pig/</link>
      <pubDate>Thu, 22 Mar 2012 23:49:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/03/22/hey-look-a-flying-pig/</guid>
      <description>:)
 MS has added git support to Codeplex - who&amp;#8217;d have thought that such a day would ever dawn.
 Kudos to the good souls at MS who made this happen - One can only imagine the kind of conversations that would&amp;#8217;ve taken place to get the necessary approvals for this :).
 Still Git has great mindshare but native windows support is pretty bad. Hopefully this might even help making a good gui for git on windows.</description>
    </item>
    
    <item>
      <title>Coffeescript looks promising</title>
      <link>https://blog.rraghur.in/2012/03/13/coffeescript-looks-promising/</link>
      <pubDate>Tue, 13 Mar 2012 07:06:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/03/13/coffeescript-looks-promising/</guid>
      <description>I&amp;#8217;ve just ran across Coffeescript&amp;#8230;&amp;#8203; can&amp;#8217;t believe what sort of a hole I&amp;#8217;ve been living in.
 It&amp;#8217;s a source to source compiler (ie when you &#39;compile&#39; a coffeescript script, you get javascript source.)
 So why would you want a source to source compiler for Javascript? Well, as apps become more and more &#39;front-end&#39; heavy with DHTML/Ajax bling bling, the javascript that holds all that together also becomes more and more complex.</description>
    </item>
    
    <item>
      <title>VIM config updates</title>
      <link>https://blog.rraghur.in/2012/02/17/vim-config-updates/</link>
      <pubDate>Fri, 17 Feb 2012 17:05:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/02/17/vim-config-updates/</guid>
      <description>Ultisnips has been updated to 2.0. See the video here for the updates and new features. One piece of information - and one that I was eagerly waiting for is that 2.0 works perfectly with auto complete popup. This wasn&amp;#8217;t always the case - in fact, the bug on launchpad for the same had been marked as a &#39;wont-fix&#39;. In any case, I was super thrilled to see that its been fixed.</description>
    </item>
    
    <item>
      <title>IOS-no previous simulator versions!</title>
      <link>https://blog.rraghur.in/2012/01/27/ios-no-previous-simulator-versions/</link>
      <pubDate>Fri, 27 Jan 2012 18:03:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/27/ios-no-previous-simulator-versions/</guid>
      <description>Ran into a situation today where we had a mobile web app that was reported to be misbehaving on iOS 3.2. The Mac at work has the latest XCode and IOS 5 simulator loaded on it. So we thought it would be quite routine to just start a simulator running IOS 3.2 - after all this having simulators of different versions of the OS is pretty routine. Android makes it trivial and before that, Blackberry has always had different simulator versions for different versions of their OS.</description>
    </item>
    
    <item>
      <title>VIM macro super powers</title>
      <link>https://blog.rraghur.in/2012/01/27/vim-macro-super-powers/</link>
      <pubDate>Fri, 27 Jan 2012 17:28:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/27/vim-macro-super-powers/</guid>
      <description>So my affair with Vim continues - and I seem to have discovered VIM&amp;#8217;s macro super powers. The obvious next step is to shout from the rooftops and hence this blog post (and there&amp;#8217;s hardly anything original - apart from the fact that I&amp;#8217;ve just had a &#39;aha&#39; moment when it comes to macros and thought it might help other budding vimmers out there&amp;#8230;&amp;#8203;
 A little primer - Macros let you repeat a set of commands.</description>
    </item>
    
    <item>
      <title>Yoohooo!! Successfully compiled Android from source</title>
      <link>https://blog.rraghur.in/2012/01/17/yoohooo-successfully-compiled-android-from-source/</link>
      <pubDate>Tue, 17 Jan 2012 15:38:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/17/yoohooo-successfully-compiled-android-from-source/</guid>
      <description>Finally!!!
 So my last weekend project had been to compile Android ICS from source. Given that the size of the repo itself is in excess of 6Gigs, just getting it down itself took the better part of Friday night and Saturday night. When I got down to running make on it, it was Sunday afternoon.
 Needless to say, things didn&amp;#8217;t work too well. I&amp;#8217;m running this on a 32 bit Ubuntu 10.</description>
    </item>
    
    <item>
      <title>Ubuntu, Console VIM - weird characters in insert mode</title>
      <link>https://blog.rraghur.in/2012/01/16/ubuntu-console-vim-weird-characters-in-insert-mode/</link>
      <pubDate>Mon, 16 Jan 2012 13:53:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/16/ubuntu-console-vim-weird-characters-in-insert-mode/</guid>
      <description>Now that I feel quite comfy with VIM, over the weekend I needed to edit a config file in my Ubuntu 10.10 Virtualbox machine quickly. Instead of GVim, I just opened the file in console VIM. As I hit i to get into insert mode, a bunch of weird character boxes were inserted. That was not good at all :( - just when you think you&amp;#8217;re comfortable with something if it does something totally weird.</description>
    </item>
    
    <item>
      <title>Android Annoyances</title>
      <link>https://blog.rraghur.in/2012/01/11/android-annoyances/</link>
      <pubDate>Wed, 11 Jan 2012 15:18:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/11/android-annoyances/</guid>
      <description>So yesterday and today while driving back from work, I&amp;#8217;ve had to join conference calls. The conference call provider we use at work has 10 digit passcode numbers. Usually, I have a few bridge numbers with the DTMF codes saved in my contacts so I can just click on the contact to get dialled to the access number and have the participant passcode typed in for me. However, yesterday and today&amp;#8217;s calls were on a different bridge and I had to try to remember a 10 digit number after dialling the access code - and all that while driving.</description>
    </item>
    
    <item>
      <title>Facebook publicize is driving me nuts!</title>
      <link>https://blog.rraghur.in/2012/01/10/facebook-publicize-is-driving-me-nuts/</link>
      <pubDate>Tue, 10 Jan 2012 13:51:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/10/facebook-publicize-is-driving-me-nuts/</guid>
      <description>I&amp;#8217;m thoroughly frustrated with Wordpress.com&amp;#8217;s facebook publicize feature. In theory, its supposed to post to your facebook wall whenever you publish a new post and that way publicize your post among your friend circle&amp;#8230;&amp;#8203;..if it ever works. I&amp;#8217;ve done all the resets, disconnects and reconnects and it just doesn&amp;#8217;t. Now, this could very well be a facebook problem rather than a wordpress.com problem - so while my rant might be misdirected, its a rant anyway against the thoroughly frustrating experience.</description>
    </item>
    
    <item>
      <title>A syntax highlighter extension for Deck.js</title>
      <link>https://blog.rraghur.in/2012/01/09/a-syntax-highlighter-extension-for-deck.js/</link>
      <pubDate>Mon, 09 Jan 2012 14:01:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/09/a-syntax-highlighter-extension-for-deck.js/</guid>
      <description>So for the past few hours, have been playing with Deck.js. I like the idea of a web based presentation format rather than a blob like powerpoint. At the same time, I&amp;#8217;m a bit circumspect too - given the state of the tools. At least for my use, there&amp;#8217;s really no burning need that powerpoint can&amp;#8217;t solve (though I get the shivers everytime I have to do a presentation). All the web based/HTML5 seem raw at the moment on some much needed features (slide notes, slide prints, scaling issues etc).</description>
    </item>
    
    <item>
      <title>Vim - unmap Esc!!</title>
      <link>https://blog.rraghur.in/2012/01/06/vim-unmap-esc/</link>
      <pubDate>Fri, 06 Jan 2012 01:13:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/06/vim-unmap-esc/</guid>
      <description>So I had the bright idea (by no means original, though, as I later figured out) that it&amp;#8217;d be great to avoid the Esc key on Vim as its so far away from the home row. The alternative to pressing Esc is Ctrl-[ which, even though I&amp;#8217;ve mapped CapsLock to control, I still find hard. So then, after some more googling around I&amp;#8217;ve settled down on mapping jk to Esc. Its been a few hours with this setup and while its been an absolute pain till now, I think its a great way to avoid the Esc key jump.</description>
    </item>
    
    <item>
      <title>Upgraded to XBMC 11.0 Eden beta</title>
      <link>https://blog.rraghur.in/2012/01/06/upgraded-to-xbmc-11.0-eden-beta/</link>
      <pubDate>Fri, 06 Jan 2012 01:00:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2012/01/06/upgraded-to-xbmc-11.0-eden-beta/</guid>
      <description>So I upgraded the good ole&#39; media center machine at home to XBMC 11.0 Beta . XBMC has been one of those software finds that has been just marvellous - to the point where I can&amp;#8217;t imagine the telly at home without XBMC. I&amp;#8217;ve pretty much stopped watching regular tv/cable and almost exclusively on XBMC. Also, its been a great way to keep the aging laptop (circa 2006 - core2Duo 1.</description>
    </item>
    
    <item>
      <title>Unit testing Apache CXF RESTful services - code available</title>
      <link>https://blog.rraghur.in/2011/12/31/unit-testing-apache-cxf-restful-services-code-available/</link>
      <pubDate>Sat, 31 Dec 2011 03:55:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/12/31/unit-testing-apache-cxf-restful-services-code-available/</guid>
      <description>So, the original post on the topic written about two and a half years ago had code snippets, but there&amp;#8217;s been comments and PMs for the complete code. So last week, as I resurrected this blog, decided to get that code out on github. Unfortunately, that was easier said than done; it has been quite some time and frankly, I&amp;#8217;d lost the code. I must&amp;#8217;ve switched machines about 3 times in the interim and gone from SVN to github for personal projects.</description>
    </item>
    
    <item>
      <title>Syntax highlighting support in Wordpress.com with markdown</title>
      <link>https://blog.rraghur.in/2011/12/31/syntax-highlighting-support-in-wordpress.com-with-markdown/</link>
      <pubDate>Sat, 31 Dec 2011 03:38:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/12/31/syntax-highlighting-support-in-wordpress.com-with-markdown/</guid>
      <description>Now that I&amp;#8217;ve cozied up to Vim/VimRepress combo for posting to this blog, there are a few things where I&amp;#8217;m finding issues with posting code. With straight wordpress.com, I used to be able to mark up code with the [sourcecode][/sourcecode] tag and syntax highlighting comes in. With markdown - indenting a block of code with 4 spaces renders it as a &amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt; tags, but I don&amp;#8217;t know if there&amp;#8217;s a way to let WP.</description>
    </item>
    
    <item>
      <title>Creating an interstitial login page with JqueryMobile</title>
      <link>https://blog.rraghur.in/2011/12/30/creating-an-interstitial-login-page-with-jquerymobile/</link>
      <pubDate>Fri, 30 Dec 2011 06:52:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/12/30/creating-an-interstitial-login-page-with-jquerymobile/</guid>
      <description>So, at work, we&amp;#8217;re building a mobile website using JqueryMobile. The app has a bunch of publicly visible pages however, other pages require the user to be authenticated. We didn&amp;#8217;t want the user to be forced to login on the first page. Instead, whenever a protected page is accessed, and if the user insn&amp;#8217;t logged into the app, we&amp;#8217;d like to take him to the login page. Once he&amp;#8217;s successfully authenticated, then take him to the page he was navigating to.</description>
    </item>
    
    <item>
      <title>Learning Vim</title>
      <link>https://blog.rraghur.in/2011/12/29/learning-vim/</link>
      <pubDate>Thu, 29 Dec 2011 03:38:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/12/29/learning-vim/</guid>
      <description>Is it worth it? Definitely seems to be. I&amp;#8217;ve looked at VIM in the past, tried it out too a couple of times or more, failed miserably(mostly within a day or two) and then wondered Why nutheads use VI. This would usually be followed with going back to the comfort of Emacs. I think over the years, I&amp;#8217;ve spent more time customizing Emacs than actually getting any work done with it.</description>
    </item>
    
    <item>
      <title>A new look</title>
      <link>https://blog.rraghur.in/2011/12/29/a-new-look/</link>
      <pubDate>Thu, 29 Dec 2011 01:41:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/12/29/a-new-look/</guid>
      <description>Changed the theme of this blog and moved around the widgets a bit. Finally, I can bear looking at this blog :) - hope that holds good for you too.
 </description>
    </item>
    
    <item>
      <title>Compiling VIM</title>
      <link>https://blog.rraghur.in/2011/12/28/compiling-vim/</link>
      <pubDate>Wed, 28 Dec 2011 15:06:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/12/28/compiling-vim/</guid>
      <description>Running ubuntu 10.10 here and ubuntu repos have only vim 7.2. I&amp;#8217;m sure there&amp;#8217;s a ppa out there that has 7.3, but thought that compiling vim from source would be a good exercise - plus I get to compile it with the options that I&amp;#8217;d like rather than relying on someone&amp;#8217;s build.
 Here&amp;#8217;s the options that I enabled:
 CONF_OPT_PERL = --enable-perlinterp=dynamic CONF_OPT_PYTHON = --enable-pythoninterp CONF_OPT_RUBY = --enable-rubyinterp CONF_OPT_GUI = --enable-gui=gtk2 CONF_OPT_FEAT = --with-features=huge BINDIR = /usr/bin DATADIR = /usr/share   Here&amp;#8217;s hte other dependencies I had to install</description>
    </item>
    
    <item>
      <title>Blogging with Vim</title>
      <link>https://blog.rraghur.in/2011/12/28/blogging-with-vim/</link>
      <pubDate>Wed, 28 Dec 2011 13:53:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/12/28/blogging-with-vim/</guid>
      <description>So now I&amp;#8217;m in Vim land and this is the first time I&amp;#8217;ve gotten far enough to feel a bit comfy. Decided to dust off my blog and start at it again - what better to do it in than in VIM.
 So - TA-DA - here&amp;#8217;s the first post - courtsey VIM on ubuntu. However, as usual, it was rougher than it&amp;#8217;s supposed to be. IN any case, I&amp;#8217;ll forget how I got this far the next time so the next few posts will be around recording how to get VIM to post to WP.</description>
    </item>
    
    <item>
      <title>Troubleshooting nandroid backup/restore</title>
      <link>https://blog.rraghur.in/2011/08/18/troubleshooting-nandroid-backup/restore/</link>
      <pubDate>Thu, 18 Aug 2011 15:41:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/08/18/troubleshooting-nandroid-backup/restore/</guid>
      <description>Have been having all sorts of weird problems with Nandroid backup/restores. Essentially, here&amp;#8217;s the symptoms of the problem - I&amp;#8217;d get a nandroid and restore it successfully (Amon RA/CWM would report success) - however either will get stuck at boot or if it boots successfully, will have tons of FCs and/or data loss. In most cases, I would dread seeing the green Android on boot up asking me to log in to my google account :(</description>
    </item>
    
    <item>
      <title>Note To Self: Fixing broken market links on Android after wipe/ROM
upgrade</title>
      <link>https://blog.rraghur.in/2011/08/02/note-to-self-fixing-broken-market-links-on-android-after-wipe/rom-upgrade/</link>
      <pubDate>Tue, 02 Aug 2011 01:31:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/08/02/note-to-self-fixing-broken-market-links-on-android-after-wipe/rom-upgrade/</guid>
      <description>Force stop market and clear data Launch market again - it will ask you to accept terms. Do so. Should force it to rebuild the database and you should see all your apps linked to market again.
 </description>
    </item>
    
    <item>
      <title>Note to self: ROM install/upgrade</title>
      <link>https://blog.rraghur.in/2011/07/28/note-to-self-rom-install/upgrade/</link>
      <pubDate>Thu, 28 Jul 2011 16:08:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2011/07/28/note-to-self-rom-install/upgrade/</guid>
      <description>nandroid backup - amon ra recovery
  Reboot recovery, install zip
  Install Link2SD-preinstall.zip (only on cyanogen based ROMs)
  Boot
  Play around&amp;#8230;&amp;#8203;make sure things work.
  Install other niceties/Troubleshoot
 Link2SD - database error.Just uninstall and reinstall.
  /etc/gps.conf - change to sg.pool.ntp.org
     Charge to 100%
  Reboot into recovery
  wipe battery stats</description>
    </item>
    
    <item>
      <title>A Python mystery</title>
      <link>https://blog.rraghur.in/2010/07/19/a-python-mystery/</link>
      <pubDate>Mon, 19 Jul 2010 00:13:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2010/07/19/a-python-mystery/</guid>
      <description>Back after a long time…saw something strange today and think it deserves a post. I was cranking through Problem 47 on Project Euler. As I was optimizing the solution, the optimization actually increased run time – and I’m at a loss to explain it. So here goes:
 def problem_47(maxlen = 4): found = False i = 2*3*5*7 + 1 while not found: # facs = [len([j for j in uniq(prime_fac(i+k))]) for k in xrange(0,maxlen)] d = 4 for t in range(i+3, i-1 , -1): k = len(list(uniq(prime_fac(t)))) if k &amp;lt; 4: i = t + 1 break else: d -= 1 if d ==0: found = True print list(xrange(i, i + maxlen)) # if i % 1000 == 0: # print i   The run time is about 1m2s.</description>
    </item>
    
    <item>
      <title>Fun with python’s decorators</title>
      <link>https://blog.rraghur.in/2010/05/28/fun-with-pythons-decorators/</link>
      <pubDate>Fri, 28 May 2010 02:42:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2010/05/28/fun-with-pythons-decorators/</guid>
      <description>Was in need of a utility function that can retry an arbitrary function a few times before giving up. Essentially something like Gmail or Google Readers behavior when there’s no network connection.
 Thought it would be a few minutes job to cook up a decorator utility in Python. Boy! was I wrong! I mean, the basic use case is definitely trivially easy with Python – however, once you want something that’s more useful than that and resembles something that you’d actually use in production, the complexity goes over the top!</description>
    </item>
    
    <item>
      <title>Back after a long time…</title>
      <link>https://blog.rraghur.in/2010/03/06/back-after-a-long-time/</link>
      <pubDate>Sat, 06 Mar 2010 02:56:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2010/03/06/back-after-a-long-time/</guid>
      <description>Obviously, I’m not writing enough out here… part of the reason being even though wordpress’s web editor is great, I really like not having to type gobs of text in a text area.
 So eventually, looked around and found Windows Live Writer. Its going out on its customary spin :).
 So what’s been cooking? Actually a bunch of things over the last several months:
 Stuff – on which I mean to put up individual posts</description>
    </item>
    
    <item>
      <title>A new tool for the toolbox!</title>
      <link>https://blog.rraghur.in/2010/01/30/a-new-tool-for-the-toolbox/</link>
      <pubDate>Sat, 30 Jan 2010 14:40:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2010/01/30/a-new-tool-for-the-toolbox/</guid>
      <description>Firstly - my VM setup:
 I&amp;#8217;m running Virtualbox with Xubuntu 9.10 on Win7 host - and its pretty. Its on a office standard issue Dell D531 - meaning they&amp;#8217;re AMD Turion X2 TL-60 and 2GB of RAM.
 Now the Turion&amp;#8217;s supposed to have hw virtualization (AMD-V) however, the moment hw virtualization was enabled in virtualbox and I tried starting the vm, the machine would hard reboot!!!
 After searching high and low, turns out that its an issue with Dell bioses and they dont have any updates.</description>
    </item>
    
    <item>
      <title>Hudson for CI - Tips, Tricks and insights</title>
      <link>https://blog.rraghur.in/2009/08/28/hudson-for-ci-tips-tricks-and-insights/</link>
      <pubDate>Fri, 28 Aug 2009 14:16:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2009/08/28/hudson-for-ci-tips-tricks-and-insights/</guid>
      <description>Just started using Hudson recently and I&amp;#8217;m wowed! It&amp;#8217;s head and shoulders above CruiseControl and things that I like a lot are
  Snappy web based config - felt great that I could set up a CI build with essentially the repo path alone
  Plugin system!
  Deep maven2 integration (though read on below that this isnt always what works)
  Trending data OOB - essentially giving you nice charts about how your build is doing over time</description>
    </item>
    
    <item>
      <title>Recipe: Unit testing Apache CXF RESTful services</title>
      <link>https://blog.rraghur.in/2009/08/26/recipe-unit-testing-apache-cxf-restful-services/</link>
      <pubDate>Wed, 26 Aug 2009 08:02:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2009/08/26/recipe-unit-testing-apache-cxf-restful-services/</guid>
      <description>Recently, decided to use Apache CXF to expose a service with a RESTful API. Part of the reason for choosing REST had more to do with the fact that the client is going to be a mobile client. These days, though mobile devices stacks have come a long way and provide SOAP clients, it still seems prudent to not depend on a whole slew of technologies where plain &#39;ole HTTP and JSON might do the trick.</description>
    </item>
    
    <item>
      <title>PIL vs Imagemagick</title>
      <link>https://blog.rraghur.in/2009/01/01/pil-vs-imagemagick/</link>
      <pubDate>Thu, 01 Jan 2009 13:46:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2009/01/01/pil-vs-imagemagick/</guid>
      <description>Decided that I want to timestamp my photo collection with the date from the exif data. Many digicams have an option to do this - unfortunately, my Panasonic DMC-LZ8 doesn&amp;#8217;t seem to do this. I knew imagemagick would do the trick, but thought it would be a good time to play around with PIL and python.
 Here&amp;#8217;s my PIL effort - functional, but one that came with quite some amount of googling and trying to make sense of the PIL documentation which is inadequate at best.</description>
    </item>
    
    <item>
      <title>andLinux with Hardy Heron</title>
      <link>https://blog.rraghur.in/2008/10/07/andlinux-with-hardy-heron/</link>
      <pubDate>Tue, 07 Oct 2008 22:24:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/10/07/andlinux-with-hardy-heron/</guid>
      <description>andLinux is built on top of co-linux (co operative linux) and basically runs side by side with Windows. andLinux packages the whole thing better (coLinux bundled with Xming and a nice systray app allowing you to launch Linux apps right in windows).
 Here&amp;#8217;s details on getting off the ground - and the reason that I have this post is that though andLinux comes with an installer application, it still needs some amount of fiddling under the hood to make it work.</description>
    </item>
    
    <item>
      <title>Compact Ubuntu</title>
      <link>https://blog.rraghur.in/2008/06/23/compact-ubuntu/</link>
      <pubDate>Mon, 23 Jun 2008 19:14:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/06/23/compact-ubuntu/</guid>
      <description>I&amp;#8217;ve always hated the fact that on Ubuntu with the default themes, there&amp;#8217;s far too much space wasted. The buttons are too tall, the treeview wastes too much space so that if you&amp;#8217;re on eclipse or some other ide, you see a precious few items on the screen.
 I&amp;#8217;ve been trying to tweak it to no end - even looking to see if there are any ~/.gtkrc-2.0 tweaks. Found a few links such as this Making Eclipse look good on Linux - Max&amp;#8217;s blog- however, didn&amp;#8217;t really satisfy my need.</description>
    </item>
    
    <item>
      <title>Enjoy symlinks and hardlinks on NTFS</title>
      <link>https://blog.rraghur.in/2008/06/18/enjoy-symlinks-and-hardlinks-on-ntfs/</link>
      <pubDate>Wed, 18 Jun 2008 21:44:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/06/18/enjoy-symlinks-and-hardlinks-on-ntfs/</guid>
      <description>Can&amp;#8217;t believe I didnt come across this before - if you&amp;#8217;ve gotten used taming your hdd by creating links to folders and have been annoyed with the lack of symlinks and hardlinks on NTFS, then despair no more. I&amp;#8217;ve been using Mark Russinovich&amp;#8217;s (of sysinternals fame) tool - junction.exe all this while and though it works great, have always wanted something that would integrate with Explorer too. For an in-depth discussion - read http://shell-shocked.</description>
    </item>
    
    <item>
      <title>Upgrade blues - upgrading to Firefox 3 final from Firefox RC 3</title>
      <link>https://blog.rraghur.in/2008/06/18/upgrade-blues-upgrading-to-firefox-3-final-from-firefox-rc-3/</link>
      <pubDate>Wed, 18 Jun 2008 01:53:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/06/18/upgrade-blues-upgrading-to-firefox-3-final-from-firefox-rc-3/</guid>
      <description>As evident from other posts here - have been keenly waiting for the FF 3 final. Imagine my surprise when the &#34;Check updates&#34; didnt find an upgrade! (I&amp;#8217;m on FF3 rc3).
 Anyway, so off I went to Mozilla.org and downloaded a copy of the final - and did my bit towards FF download day. Happily installed it - all defaults as usual. Install told me that it was installing into the same location as my current installation (c:\program files\mozilla firefox 3 beta 1 - that&amp;#8217;s where my FF3 install have been going - all the way from b1 to b5 and then from rc1 to rc3 - so no surprise).</description>
    </item>
    
    <item>
      <title>Desultory Monday...</title>
      <link>https://blog.rraghur.in/2008/06/16/desultory-monday.../</link>
      <pubDate>Mon, 16 Jun 2008 18:31:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/06/16/desultory-monday.../</guid>
      <description>This entry was posted using Its all text on Firefox 3.0 RC2 on Ubuntu Hardy heron, with emacs 23 snapshot as the editor. I love it :-)
 Well, Its all Text is great if you hate typing into webforms with textboxes that make editing such a big pain in the butt.
 Its great to see that Its All text has been updated to work with FF 3.0 now. The fun would be to see if this works on Windows with cygwin emacs as the editor.</description>
    </item>
    
    <item>
      <title>VPN into Windows VPN Server from Ubuntu *Hardy* Intrepid</title>
      <link>https://blog.rraghur.in/2008/06/12/vpn-into-windows-vpn-server-from-ubuntu-hardy-intrepid/</link>
      <pubDate>Thu, 12 Jun 2008 16:49:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/06/12/vpn-into-windows-vpn-server-from-ubuntu-hardy-intrepid/</guid>
      <description>Update 2008/11/17: Networkmanager is broken in intrepid. To get it working had to install network manager from ppa as given here - http://www.ubuntu-forums.com/showpost.php?s=e0d93c09b8c340976477456593ac4cf7&amp;amp;p=6094870&amp;amp;postcount=5
 Ok - this was easy - and while there&amp;#8217;s some resources on google, I had to figure out a few itty bitty things for my work VPN setup.
 install
   network-manager-pptp
  pptp-linux
   Restart network manager with
 killall nm-appletsudo /etc/init.</description>
    </item>
    
    <item>
      <title>Scalability principles: Lessons from eBay</title>
      <link>https://blog.rraghur.in/2008/06/05/scalability-principles-lessons-from-ebay/</link>
      <pubDate>Thu, 05 Jun 2008 19:46:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/06/05/scalability-principles-lessons-from-ebay/</guid>
      <description>InfoQ: Scalability Best Practices: Lessons from eBayGreat article on Ebay scalability principles.  </description>
    </item>
    
    <item>
      <title>Drip...</title>
      <link>https://blog.rraghur.in/2008/05/01/drip.../</link>
      <pubDate>Thu, 01 May 2008 04:47:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/05/01/drip.../</guid>
      <description>Drip..
 
 IMG_3370_crop, originally uploaded by Raghu Rajagopalan.
 *Drip&amp;#8230;&amp;#8203;. *
 
 </description>
    </item>
    
    <item>
      <title>Water droplets - dipping a toe in macro photography</title>
      <link>https://blog.rraghur.in/2008/05/01/water-droplets-dipping-a-toe-in-macro-photography/</link>
      <pubDate>Thu, 01 May 2008 04:38:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/05/01/water-droplets-dipping-a-toe-in-macro-photography/</guid>
      <description>he he - so I have a canon S3 IS - got it last year since it allows enough manual control while also having family friendly thingies like video :). Also, with the chdk hack, the S3 IS is good enough for me to experiment.
 So, one of these long time itches has been to take a water droplet splash - you know, the immensely close up snaps where you see a single drop splashing&amp;#8230;&amp;#8203;</description>
    </item>
    
    <item>
      <title>Free subversion hosting - What&amp;#39;s the best?</title>
      <link>https://blog.rraghur.in/2008/04/02/free-subversion-hosting-what#39s-the-best/</link>
      <pubDate>Wed, 02 Apr 2008 20:41:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/04/02/free-subversion-hosting-what#39s-the-best/</guid>
      <description>All - I&amp;#8217;ve just signed up for an Assembla account - these folks provide free subversion hosting with a 500 meg space and unlimited spaces.
 Will see how it goes.
 </description>
    </item>
    
    <item>
      <title>Firefox 3 beta 5 released. Yahoo Mail is still broken.</title>
      <link>https://blog.rraghur.in/2008/04/02/firefox-3-beta-5-released.-yahoo-mail-is-still-broken./</link>
      <pubDate>Wed, 02 Apr 2008 19:32:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/04/02/firefox-3-beta-5-released.-yahoo-mail-is-still-broken./</guid>
      <description>Firefox 3 Beta 5 release today. Release notes and downloads here.
 Installed it as soon as I got to know today morning and the first thing to check was whether Yahoo Mail still crashed. Initially, Yahoo Mail seemed to work alright for all of 50 seconds - quickly moving over items in inbox caused Firefox to crash :-(
 Guess will wait for some more time. I&amp;#8217;m sure there&amp;#8217;s a bug report somewhere on this - Yahoo mail was broken on Beta 2, got fixed in Beta 3, then was broken in Beta 4 and is still broken on Beta 5.</description>
    </item>
    
    <item>
      <title>Hardy heron - first impressions</title>
      <link>https://blog.rraghur.in/2008/03/31/hardy-heron-first-impressions/</link>
      <pubDate>Mon, 31 Mar 2008 17:18:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/03/31/hardy-heron-first-impressions/</guid>
      <description>He he :-) - finally got Ubuntu Hardy heron beta on my home and work laptop. first impressions below:
  Wubi install from within windows is easy and works great. If after setting up so many boxes, I can go on and on about it, I&amp;#8217;m sure that its great help for anyone who&amp;#8217;s on Windoze. I mean, the barrier to entry has never gone down so much.
  I guess once you&amp;#8217;ve installed via Wubi and configured your system to your liking, you can uninstall and take an image that you finall install to a dedicated partition - isn&amp;#8217;t that just awesome.</description>
    </item>
    
    <item>
      <title>Gnuplot, dstat - easy graphing on Linux</title>
      <link>https://blog.rraghur.in/2008/03/28/gnuplot-dstat-easy-graphing-on-linux/</link>
      <pubDate>Fri, 28 Mar 2008 20:19:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/03/28/gnuplot-dstat-easy-graphing-on-linux/</guid>
      <description>Recently, started fiddling around with how to monitor and graph performance data on linux boxes. Other than the usual tools like top and vmstat, which are either interactive (top) or too textual to do anything much.
 First off, vmstat, doesnt lend itself well to graphing without additional scripts to lay out the data so tools like gnuplot can be used. Secondly, and more seriously, it doesn&amp;#8217;t include a timestamp in the output.</description>
    </item>
    
    <item>
      <title>Working with huge XML files - tools of the trade.</title>
      <link>https://blog.rraghur.in/2008/03/27/working-with-huge-xml-files-tools-of-the-trade./</link>
      <pubDate>Thu, 27 Mar 2008 15:20:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/03/27/working-with-huge-xml-files-tools-of-the-trade./</guid>
      <description>XMLStarlet is great for slicing and dicing huge XML files. Had a run in recently - had a 80 Mb XML file in a single line :D. Guess what, most editors that I tried balked and fell over. This was on a 2Gig Core2 Duo machine.
 XMLSpy, vi, emacs, notepad++ all died - and trying to do something with a 80 Gig XML where the 80 gigs are on a single line isnt much fun.</description>
    </item>
    
    <item>
      <title>Yahoo! mail fixed for Firefox 3 beta 2</title>
      <link>https://blog.rraghur.in/2008/02/09/yahoo-mail-fixed-for-firefox-3-beta-2/</link>
      <pubDate>Sat, 09 Feb 2008 18:09:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/02/09/yahoo-mail-fixed-for-firefox-3-beta-2/</guid>
      <description>Used to get an error on opening Yahoo mail beta in Firefox 3 beta 2 - and had to switch to the plain &#39;ole yahoo mail. Here&amp;#8217;s the bug report
 Was pleasantly surprised today morning to see that Yahoo! mail beta now works properly in FF3b2. Thanks!
 </description>
    </item>
    
    <item>
      <title>Pesky little bash quoting problem</title>
      <link>https://blog.rraghur.in/2008/01/23/pesky-little-bash-quoting-problem/</link>
      <pubDate>Wed, 23 Jan 2008 02:52:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/01/23/pesky-little-bash-quoting-problem/</guid>
      <description>Have to admit it - this happens every time I sit down to write a some shell script that manipulates paths on windows (where path names often end up with spaces). Soon I find my nifty little script running into problems when it doesn&amp;#8217;t handle spaces properly and I find myself reading up on bash quoting rules once again&amp;#8230;&amp;#8203;
 Anyway, so this post is mostly for self reference :) and to put down some simple rules in the hope that writing it down will help committing it to memory.</description>
    </item>
    
    <item>
      <title>Firefox 3 Beta 2 on Ubuntu Gutsy</title>
      <link>https://blog.rraghur.in/2008/01/10/firefox-3-beta-2-on-ubuntu-gutsy/</link>
      <pubDate>Thu, 10 Jan 2008 13:51:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/01/10/firefox-3-beta-2-on-ubuntu-gutsy/</guid>
      <description>I&amp;#8217;m having weird problems with firefox 3b2 on ubuntu gutsy - and as far as I can tell, I seem to be the only one. Did not find anything similar on ubuntu forums too.
 Installed firefox 3 beta 2 from Mozilla to /usr/lib/firefox3b2 folder and created
 lrwxrwxrwx 1 root root 27 2007-12-30 23:44 /usr/bin/firefox-3b2 -&amp;gt; /usr/lib/firefox3b2/firefox   When I launch firefox3b2, I get firefox alright, however, in the location bar if I type in a url and press Enter, nothing happens - absolutely nothing at all.</description>
    </item>
    
    <item>
      <title>HOWTO: Access your machine from the internet without a static IP</title>
      <link>https://blog.rraghur.in/2008/01/10/howto-access-your-machine-from-the-internet-without-a-static-ip/</link>
      <pubDate>Thu, 10 Jan 2008 13:42:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/01/10/howto-access-your-machine-from-the-internet-without-a-static-ip/</guid>
      <description>For machines to be accessible on the internet, usually you need a static IP that&amp;#8217;s leased from your ISP so that when someone types in your IP address, so that packets can be routed over to your machine. However, getting a static ip is costly and for the most part, internet users have dynamic IP address that the ISP allocates each time an end user connects to the internet. Since the ip address keeps changing on each connection, there&amp;#8217;s no straightforward way to connect to the machine without knowing the IP address that&amp;#8217;s been allocated - or so it was at least till Dynamic DNS came along (it isnt new - has been around for ages, but for some reason isn&amp;#8217;t that well known)</description>
    </item>
    
    <item>
      <title>Back in circulation</title>
      <link>https://blog.rraghur.in/2008/01/03/back-in-circulation/</link>
      <pubDate>Thu, 03 Jan 2008 17:20:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2008/01/03/back-in-circulation/</guid>
      <description>I&amp;#8217;m on vacation in Bangalore, and guess what - fixing my home computer. Mostly things like lost drivers, screen resolution, cruft in the drives - its an old machine - a P4/512 Meg, but good enough for surfing the net.
 Did a few fun things in the midst, and its been ages since I&amp;#8217;ve added anything to this blog. Will summarize for now and put in longer posts with more details in cases someone&amp;#8217;s interested.</description>
    </item>
    
    <item>
      <title>Sluggish Firefox - and what a hog!</title>
      <link>https://blog.rraghur.in/2007/07/03/sluggish-firefox-and-what-a-hog/</link>
      <pubDate>Tue, 03 Jul 2007 03:13:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/07/03/sluggish-firefox-and-what-a-hog/</guid>
      <description>Okay - for the past few days I&amp;#8217;ve been irritated with the browsing experience at home. Pages (google reader, Yahoo mail etc seemed inexplicably slower than before - but they&amp;#8217;d load alright - just seemed that teeny weeny bit slower that&amp;#8217;s enough to leave you suspicious).
 I first suspected my ISP (verizon) for frequent dropped connections (saw the DSL modem lights reset a couple of times a day), then my wifi modem (not a high end one), then spyware/malware.</description>
    </item>
    
    <item>
      <title>Piclens - full screen slideshows with flickr (and others)</title>
      <link>https://blog.rraghur.in/2007/06/28/piclens-full-screen-slideshows-with-flickr-and-others/</link>
      <pubDate>Thu, 28 Jun 2007 18:36:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/06/28/piclens-full-screen-slideshows-with-flickr-and-others/</guid>
      <description>discovered Piclens
 Its a great addin for firefox - and integrates with Flickr to give you full screen slideshows a&amp;#8217;la Picasa slideshows on your machine!! Its a bit tricky to figure out how to get it to work - Just hover any picture on any page and click on the blue bubbly overlay button that appears
 </description>
    </item>
    
    <item>
      <title>Python, cygwin, TurboGears, mysql hell</title>
      <link>https://blog.rraghur.in/2007/06/28/python-cygwin-turbogears-mysql-hell/</link>
      <pubDate>Thu, 28 Jun 2007 18:23:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/06/28/python-cygwin-turbogears-mysql-hell/</guid>
      <description>Ok - here goes - I&amp;#8217;ve always liked python, though definitely a noob. I was interested in python on the web and after a bit of googling, seems like TurboGears is the way to go.
 First things first - decided to use mysql as the database (already have it on my machine and didn&amp;#8217;t want to install one more database (postgresql/sqlite). Now it turns out that MySQL doesnt have a cygwin package.</description>
    </item>
    
    <item>
      <title>Maven Emma plugin - filters dont work</title>
      <link>https://blog.rraghur.in/2007/05/24/maven-emma-plugin-filters-dont-work/</link>
      <pubDate>Thu, 24 May 2007 21:25:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/05/24/maven-emma-plugin-filters-dont-work/</guid>
      <description>Using v0.5 of the Maven emma plugin. Found that if you specify an include/exclude filter, no classes are instrumented&amp;#8230;&amp;#8203;.On digging a little deeper under the covers, it seems that there&amp;#8217;s a bug with the Maven emma plugin - I&amp;#8217;ve edited the plugin&amp;#8217;s jelly script and using it here.
 Posted the bug and the fix to Maven&amp;#8217;s sourceforge developer forum. You can find it here
 The fixed plugin.jelly&amp;#8217;s here - Maven emma plugin 0.</description>
    </item>
    
    <item>
      <title>Building a FC6 server for Java development</title>
      <link>https://blog.rraghur.in/2007/05/04/building-a-fc6-server-for-java-development/</link>
      <pubDate>Fri, 04 May 2007 00:10:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/05/04/building-a-fc6-server-for-java-development/</guid>
      <description>It has come upon me to build a FC6 server with a Java build environment that is going to serve as the build machine. This is the first time I&amp;#8217;m coming to Fedora - always having used Debian in the past.
  OS installation was smooth. I installed with KDE since some folks prefer the GUI.
  During the installation, I chose Java Development - and all the gcj components got installed.</description>
    </item>
    
    <item>
      <title>Ant - Debugging classpath</title>
      <link>https://blog.rraghur.in/2007/05/01/ant-debugging-classpath/</link>
      <pubDate>Tue, 01 May 2007 02:16:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/05/01/ant-debugging-classpath/</guid>
      <description>Here&amp;#8217;s a nice tip on debugging classpaths in Ant: http://www.javalobby.org/java/forums/t71033.html
 Essentially,
 &amp;lt;?xml version=&#34;1.0&#34;?&amp;gt; &amp;lt;project name=&#34;project&#34; default=&#34;default&#34;&amp;gt; &amp;lt;property name=&#34;lib&#34; value=&#34;web/WEB-INF/lib&#34;/&amp;gt; &amp;lt;property name=&#34;src&#34; value=&#34;src&#34;/&amp;gt; &amp;lt;property name=&#34;dist&#34; value=&#34;dist&#34;/&amp;gt; &amp;lt;path id=&#34;classpath&#34;&amp;gt; &amp;lt;fileset dir=&#34;${lib}&#34;&amp;gt; &amp;lt;include name=&#34;**/*.jar&#34;/&amp;gt; &amp;lt;/fileset&amp;gt; &amp;lt;/path&amp;gt; &amp;lt;target name=&#34;default&#34; description=&#34;--&amp;gt; description&#34;&amp;gt; &amp;lt;javac srcdir=&#34;${src}&#34; destdir=&#34;${dist}&#34;&amp;gt; &amp;lt;classpath refid=&#34;classpath&#34;/&amp;gt; &amp;lt;/javac&amp;gt; &amp;lt;/target&amp;gt; &amp;lt;/project&amp;gt;   </description>
    </item>
    
    <item>
      <title>Cobertura vs EMMA</title>
      <link>https://blog.rraghur.in/2007/04/22/cobertura-vs-emma/</link>
      <pubDate>Sun, 22 Apr 2007 03:50:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/04/22/cobertura-vs-emma/</guid>
      <description>This is a rant against the Cobertura maven integration - and to a certain extent on Cobertura also - and hopefully an objective one ;). Hopefully this&amp;#8217;ll help someone select between the two big (open source) coverage tools out there.
 We&amp;#8217;ve been using Cobertura at work till now and its done its job nicely - the reports look great and the maven 1.x integration, while not neat, is functional. While we knew that someday we were going to have to merge coverage data and have a single report across multiple test methods (junit, selenium tests and manual), cobertura documentation stated that this was possible and so we weren&amp;#8217;t really bothered.</description>
    </item>
    
    <item>
      <title>Tulip festival at Skagit county</title>
      <link>https://blog.rraghur.in/2007/04/17/tulip-festival-at-skagit-county/</link>
      <pubDate>Tue, 17 Apr 2007 23:50:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/04/17/tulip-festival-at-skagit-county/</guid>
      <description>We visited the Tulip festival at Skagit valley. Its hard to describe in words - and a picture&amp;#8217;s worth a thousand words - so here&amp;#8217;s a bunch of pics - let them do the talking :).
 Anyway, had a lovely weekend driving up to Mount Vernon with friends and had a memorable weekend.
  </description>
    </item>
    
    <item>
      <title>Ninotech Path Copy 4</title>
      <link>https://blog.rraghur.in/2007/03/17/ninotech-path-copy-4/</link>
      <pubDate>Sat, 17 Mar 2007 01:52:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/03/17/ninotech-path-copy-4/</guid>
      <description>Ninotech Path Copy 4 Novell Cool Solutions: Cool Tool
 Was looking for a shell extension to copy filenames from explorer. Thought there&amp;#8217;d be a dime a dozen - and it turns out that a) they have 20 other things that I dont want. b) Its trial ware.
 Finally after searching high and low, came across this and it&amp;#8217;s GREAT!
 powered by performancing firefox
 </description>
    </item>
    
    <item>
      <title>Production Eclipse Configuration</title>
      <link>https://blog.rraghur.in/2007/03/15/production-eclipse-configuration/</link>
      <pubDate>Thu, 15 Mar 2007 03:45:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/03/15/production-eclipse-configuration/</guid>
      <description>Part of the game of getting code out that conforms to coding standards without having to go through the &#34;One Big spring cleaning&#34; exercise is configuring and centralizing the tools.
 At a minimum, it helps to have a central Eclipse installation that has all the tools configured and setup - so each person doesn&amp;#8217;t have to do it. Alternatively, there should be a reference set of plugins and their configuration files available in the source control repository.</description>
    </item>
    
    <item>
      <title>Tips for using Eclipse</title>
      <link>https://blog.rraghur.in/2007/03/14/tips-for-using-eclipse/</link>
      <pubDate>Wed, 14 Mar 2007 02:24:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/03/14/tips-for-using-eclipse/</guid>
      <description>http://www.aspectprogrammer.org/blogs/adrian/2006/02/tips_for_using.html
 Great Article - full of very very useful tips!
 </description>
    </item>
    
    <item>
      <title>Firefox - not so obvious search</title>
      <link>https://blog.rraghur.in/2007/03/14/firefox-not-so-obvious-search/</link>
      <pubDate>Wed, 14 Mar 2007 02:07:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/03/14/firefox-not-so-obvious-search/</guid>
      <description>I discovered this - totally by accident.
 In Firefox, you can use / (forward slash) to search for text OR links - and if its a link, then you can follow the link just by clicking Enter! That is way cool - especially when you&amp;#8217;re on a laptop and cant/dont have your mouse around. I&amp;#8217;ve always find it a pain to do a &#34;link find&#34; - &#39; (single quote) and a text find - ctrl-f separately&amp;#8230;&amp;#8203;Never knew that there was a shortcut that did both and what more - its way natural if you&amp;#8217;re used to &#39;less&#39;!</description>
    </item>
    
    <item>
      <title>Performancing and Wordpress - initial imression - very nice!</title>
      <link>https://blog.rraghur.in/2007/02/25/performancing-and-wordpress-initial-imression-very-nice/</link>
      <pubDate>Sun, 25 Feb 2007 02:34:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/02/25/performancing-and-wordpress-initial-imression-very-nice/</guid>
      <description>Performancing | Firefox Add-ons | Mozilla Corporation
  Performancing for Firefox is a full featured blog editor that sits right in your Firefox browser and lets you post to your blog easily. You can drag and drop formatted text from the page you happen to be browsing, and take notes as well as post to your blog.
   powered by performancing firefox
 </description>
    </item>
    
    <item>
      <title>Diigo - a hidden gem</title>
      <link>https://blog.rraghur.in/2007/02/24/diigo-a-hidden-gem/</link>
      <pubDate>Sat, 24 Feb 2007 22:49:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/02/24/diigo-a-hidden-gem/</guid>
      <description>If you use del.icio.us for online bookmarking and like google&amp;#8217;s notepad for online research, then suggest that you take a look at Diigo&amp;#8217;s offering. It&amp;#8217;s all those rolled in one and then some.
 I&amp;#8217;ve been using it for quite some time now (after trying out del.icio.us and google notepad) and I&amp;#8217;m not budging! Recently I was doing a bunch of research online and diigo excelled!
  Online bookmarking - will also simultaneously post to your del.</description>
    </item>
    
    <item>
      <title>Imaging the tenth dimension</title>
      <link>https://blog.rraghur.in/2007/02/24/imaging-the-tenth-dimension/</link>
      <pubDate>Sat, 24 Feb 2007 22:11:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/02/24/imaging-the-tenth-dimension/</guid>
      <description>Amazing flash movie!
 Great flash movie explaining dimensions 4 (time), 5, 6 all the way uptil 10. And why they stop after 10!
 I&amp;#8217;ve never come across a clearer explanation ever and the great visualization does the trick.
 </description>
    </item>
    
    <item>
      <title>Instant messenger client utopia</title>
      <link>https://blog.rraghur.in/2007/02/24/instant-messenger-client-utopia/</link>
      <pubDate>Sat, 24 Feb 2007 21:15:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2007/02/24/instant-messenger-client-utopia/</guid>
      <description>http://[GAIM&amp;#8230;&amp;#8203;]
 I hate running 3 different chat clients (yahoo, msn, gtalk) on my machine - and that&amp;#8217;s just 3x memory, startup programs and useless adversting too many.
 And I hate msn and yahoo&amp;#8217;s advertising that&amp;#8217;s built into their clients&amp;#8230;&amp;#8203;esp on MSN which insists on opening a mini page on login&amp;#8230;&amp;#8203;
 Use GAIM - and do yourself a favour. Of course that&amp;#8217;s if you don&amp;#8217;t need the very specialized features :)).</description>
    </item>
    
    <item>
      <title>XSLT Analog to sysouts </title>
      <link>https://blog.rraghur.in/2005/04/29/xslt-analog-to-sysouts/</link>
      <pubDate>Fri, 29 Apr 2005 11:53:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/04/29/xslt-analog-to-sysouts/</guid>
      <description>I&amp;#8217;m on a high. I&amp;#8217;ve been stuck with this problem of trying to understand a HUGE xslt that operates on an even bigger XML. I sorely needed something that will let me trace through the xslt execution to understand the flow.
 Tried a couple of IDEs - Stylus Studio (free edition) and Marrowsoft XSelerator. Stylus studio did a graceful exit, Xselerator went purple in the face and died a gruesome death :-(</description>
    </item>
    
    <item>
      <title>I&amp;#39;m on a high. I&amp;#39;ve been stuck with this problem o...</title>
      <link>https://blog.rraghur.in/2005/04/29/i#39m-on-a-high.-i%2339ve-been-stuck-with-this-problem-o.../</link>
      <pubDate>Fri, 29 Apr 2005 03:53:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/04/29/i#39m-on-a-high.-i%2339ve-been-stuck-with-this-problem-o.../</guid>
      <description>I&amp;#8217;m on a high. I&amp;#8217;ve been stuck with this problem of trying to understand a HUGE xslt that operates on an even bigger XML. I sorely needed something that will let me trace through the xslt execution to understand the flow.
 Tried a couple of IDEs - Stylus Studio (free edition) and Marrowsoft XSelerator. Stylus studio did a graceful exit, Xselerator went purple in the face and died a gruesome death :-(</description>
    </item>
    
    <item>
      <title>Unit testing asp.net apps - NunitAsp</title>
      <link>https://blog.rraghur.in/2005/04/14/unit-testing-asp.net-apps-nunitasp/</link>
      <pubDate>Thu, 14 Apr 2005 13:04:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/04/14/unit-testing-asp.net-apps-nunitasp/</guid>
      <description>I love the premise of Test Driven Development - I&amp;#8217;ve even used it a few times in the line of duty ;-) (I do have to admit, I&amp;#8217;ve been naughty and left out the step of Â seeing the test case fail a few times )&amp;#8230;&amp;#8203;Anyway, I end up working on web applications more often than not and while you can use TDD for your class libraries, a web app is a totally different animal.</description>
    </item>
    
    <item>
      <title>ASP.NET compared to Java web apps</title>
      <link>https://blog.rraghur.in/2005/04/11/asp.net-compared-to-java-web-apps/</link>
      <pubDate>Mon, 11 Apr 2005 15:42:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/04/11/asp.net-compared-to-java-web-apps/</guid>
      <description>For the most part, I find ASP.NET far more easier to use than Java. But the ONE BIG THING where I&amp;#8217;ve found ASP.NET sorely lacking is in the support for page templates.
 Page templates, if you need to brush up, allow you to define common layout and contents for a web site. Furthermore, once defined, its easy to change the layout and or move your default items around the place.</description>
    </item>
    
    <item>
      <title>ASP.NET validation summary</title>
      <link>https://blog.rraghur.in/2005/04/08/asp.net-validation-summary/</link>
      <pubDate>Fri, 08 Apr 2005 14:59:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/04/08/asp.net-validation-summary/</guid>
      <description>The ASP.NET validation summary is great for displaying all the errors in the page. It would be nice though to be able to use a validation summary to display errors that occur on the server side.
 A typical scenario is when you have a page that does a search and then displays the results of the search. For the case where no results are found, it would be nice to be able to display the results in our custom validation summary control.</description>
    </item>
    
    <item>
      <title>Paging algorithm for ASP</title>
      <link>https://blog.rraghur.in/2005/04/08/paging-algorithm-for-asp/</link>
      <pubDate>Fri, 08 Apr 2005 10:58:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/04/08/paging-algorithm-for-asp/</guid>
      <description>Been tinkering with getting a nice paging algorithm out. To get a basic hang of the problem, do take a look at
 * Many ASP developers create their own search engines that return back the results to the web browser one page at a time  *
 Do take a look at the second query given. I&amp;#8217;ve modified it a little bit so that you can sort by a given field and removed a bit of the cruft (the au_lname like &#39;%A%&#39; bit).</description>
    </item>
    
    <item>
      <title>Hiding commandbar buttons in office addins</title>
      <link>https://blog.rraghur.in/2005/03/28/hiding-commandbar-buttons-in-office-addins/</link>
      <pubDate>Mon, 28 Mar 2005 18:09:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/28/hiding-commandbar-buttons-in-office-addins/</guid>
      <description>Have been pulling my hair out trying to make commandbar buttons go in VB Addins for Office 2000. There are a couple of gotchas here
  Any references to buttons that you&amp;#8217;ve added are not valid by the time you get to the disconnection method. There&amp;#8217;s a MSDN KB article on this and the workaround is to use FindControl to get a new reference to the button.
  The above technique works for Powerpoint and Excel.</description>
    </item>
    
    <item>
      <title>BSNL Broadband..</title>
      <link>https://blog.rraghur.in/2005/03/24/bsnl-broadband../</link>
      <pubDate>Thu, 24 Mar 2005 16:14:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/24/bsnl-broadband../</guid>
      <description>I finally got a broadband connection from BSNL last week. T&amp;#8217;was heady stuff for the first few days - was getting 40 Kbytes/sec downloads - which translates to around 320 Kbps - more than the advertised 256Kbps.
 And then it all had to come down eventually!!! For the past two days, the downloads are going at 3 Kbytes/sec&amp;#8230;&amp;#8203; So today I called their help desk and as expected, got no real help other than getting a complaint registered.</description>
    </item>
    
    <item>
      <title>Calling web services asynchronously</title>
      <link>https://blog.rraghur.in/2005/03/10/calling-web-services-asynchronously/</link>
      <pubDate>Thu, 10 Mar 2005 18:23:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/10/calling-web-services-asynchronously/</guid>
      <description>Am learning how to call web services asynchronously&amp;#8230;&amp;#8203;.here are some good resources to start off with. Accessing an XML Web Service Asynchronously in Managed Code
 Communicating with XML Web Services Asynchronously
 I would actually like to make asynch calls from vb (sic!)&amp;#8230;&amp;#8203;well that&amp;#8217;s quite some way off..
 </description>
    </item>
    
    <item>
      <title>Migrating from SOAP toolkit to .NET framework</title>
      <link>https://blog.rraghur.in/2005/03/10/migrating-from-soap-toolkit-to-.net-framework/</link>
      <pubDate>Thu, 10 Mar 2005 15:55:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/10/migrating-from-soap-toolkit-to-.net-framework/</guid>
      <description>These should help
 1.Integrating Web Services and COM Components using the SOAP Toolkit Article
  Migrating from the Microsoft SOAP Toolkit to the .NET FrameworkÂ - Article
  Calling .NET Assemblies and Web Services from VB6Â - Article
   From: Thanks, Simon
 </description>
    </item>
    
    <item>
      <title>Coaxing IE to open office documents in Application windows</title>
      <link>https://blog.rraghur.in/2005/03/09/coaxing-ie-to-open-office-documents-in-application-windows/</link>
      <pubDate>Wed, 09 Mar 2005 17:52:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/09/coaxing-ie-to-open-office-documents-in-application-windows/</guid>
      <description>Found this great tip on preventing IE from opening office documents.
  Launch Windows Explorer.
  Select â€œFolder Options&amp;#8230;&amp;#8203;â€œ from the Tools menu.
  Select the â€œFile Typesâ€œ tab.
  Scroll down the list of â€œRegistered file typesâ€œ until you find â€œDOC - Microsoft Word Documentâ€œ and select it.
  Click on the â€œAdvanced&amp;#8230;&amp;#8203;â€œ button at the bottom of the dialog.
  Uncheck the â€œBrowse in same windowâ€œ checkbox.</description>
    </item>
    
    <item>
      <title>Editing documents in sharepoint library in Office 2000</title>
      <link>https://blog.rraghur.in/2005/03/09/editing-documents-in-sharepoint-library-in-office-2000/</link>
      <pubDate>Wed, 09 Mar 2005 10:47:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/09/editing-documents-in-sharepoint-library-in-office-2000/</guid>
      <description>&#34;Edit In&#34; functionality is only available for Office XP and Office 2003 on the client, however I saw this workaround from a now unknown poster and was kind enough to confirm that it works.
 &#34;Office 2000 is not supported to edit documents within the Document Library under the &#34;All Documents&#34; view. But here is a work around to get the same exact function from Office 2000 as you do in Office 2003.</description>
    </item>
    
    <item>
      <title>Obituary - My VS.NET 2003 debugger</title>
      <link>https://blog.rraghur.in/2005/03/09/obituary-my-vs.net-2003-debugger/</link>
      <pubDate>Wed, 09 Mar 2005 10:18:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/09/obituary-my-vs.net-2003-debugger/</guid>
      <description>VS.NET 2003 debugger died unexpectedly today. I get an access denied error with a suggestion to add myself to Debugger Users group or be an Administrator.
 I&amp;#8217;m already the administrator and also part of Debugger users group.
 Googling a bit, found a collection of entries on M K Park&amp;#8217;s blog
 </description>
    </item>
    
    <item>
      <title>Feature Request: Environment variable expansion in CMAB</title>
      <link>https://blog.rraghur.in/2005/03/09/feature-request-environment-variable-expansion-in-cmab/</link>
      <pubDate>Wed, 09 Mar 2005 10:12:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/09/feature-request-environment-variable-expansion-in-cmab/</guid>
      <description>I&amp;#8217;ve been using CMAB for sometime now and the only big crib that I have against it is that it doesnt support environment variables for specifying things like the path of the actual configuration file [One of the projects that does is Log4Net]
 I&amp;#8217;ve looked at the code and supporting environment variable expansion shoudlnt be too difficult to do.
 I&amp;#8217;ll post a suggestion in and see what happens.</description>
    </item>
    
    <item>
      <title>Enterprise Library</title>
      <link>https://blog.rraghur.in/2005/03/09/enterprise-library/</link>
      <pubDate>Wed, 09 Mar 2005 09:55:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/09/enterprise-library/</guid>
      <description>Probably I&amp;#8217;ve been living in a cave&amp;#8230;&amp;#8203;but looks like we&amp;#8217;ve got a release of the enterprise library.
 &#34;Summary
 The patterns &amp;amp; practices Enterprise Library is a library of application blocks designed to assist developers with common enterprise development challenges. Application blocks are a type of guidance, provided as source code that can be used &#34;as is,&#34; extended, or modified by developers to use on enterprise development projects. Enterprise Library features new and updated versions of application blocks that were previously available as stand-alone application blocks.</description>
    </item>
    
    <item>
      <title>Sharepoint Web Services and NTLM Authentication</title>
      <link>https://blog.rraghur.in/2005/03/07/sharepoint-web-services-and-ntlm-authentication/</link>
      <pubDate>Mon, 07 Mar 2005 10:18:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/07/sharepoint-web-services-and-ntlm-authentication/</guid>
      <description>I noticed this strange behaviour and thought its worth a post - till I find a solution/explanation.
 Scenario: I have a custom web service running under sharepoint. This means that theÂ .asmx is in &#34;c:\Program Files\Common Files\Microsoft Shared\web server extensions\60\ISAPI&#34; and the binaries in the bin folder under it. The url of the web service is
 http://aditi277/XTeam/spaces/outlooksynch/_vti_bin/OfflineServices.asmx
 The _vti_bin has NTLM authentication enabled.
 When I paste the url in a browser, I go straight through to the page without any authentication!</description>
    </item>
    
    <item>
      <title>I N K S C A P E</title>
      <link>https://blog.rraghur.in/2005/03/04/i-n-k-s-c-a-p-e/</link>
      <pubDate>Fri, 04 Mar 2005 18:35:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/04/i-n-k-s-c-a-p-e/</guid>
      <description>Just discovered something great - InkscapeÂ - go grab a copy and enjoy&amp;#8230;&amp;#8203;
 </description>
    </item>
    
    <item>
      <title>Logging in ASP.NET - Web Services (contd.)</title>
      <link>https://blog.rraghur.in/2005/03/04/logging-in-asp.net-web-services-contd./</link>
      <pubDate>Fri, 04 Mar 2005 17:44:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/04/logging-in-asp.net-web-services-contd./</guid>
      <description>I&amp;#8217;m almost through with a decent logging implementation for a Web service running under Windows Sharepoint services. Here are some hard earned lessons:
  I could not use Global.asax for a sharepoint hosted web service. The Sharepoint web services Global.asax derives from stssoap and when I included the code in aÂ C# script block, the code never got invoked.
  Also, the concept of an application is not useful in the case of web service - since a single web might be used to host multiple services.</description>
    </item>
    
    <item>
      <title>Logging in ASP.NET</title>
      <link>https://blog.rraghur.in/2005/03/03/logging-in-asp.net/</link>
      <pubDate>Thu, 03 Mar 2005 19:50:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/03/03/logging-in-asp.net/</guid>
      <description>I&amp;#8217;ve been trying to get decent logs on web application/web service. Its critical in cases where you dont have remote debugging access on the server.
 I&amp;#8217;ve been using Log4NetÂ for over an year now and it&amp;#8217;s saved me more than once. It&amp;#8217;s the first time that I&amp;#8217;ve tried to use it in a web scenario. There&amp;#8217;s just a couple of things to keep in mind:
 Usually the worker process runs under the ASPNET account - this doesnt have rights to logon and doesnt have an associated console.</description>
    </item>
    
    <item>
      <title>Part 6: Efficiently Representing Sets - Continued...</title>
      <link>https://blog.rraghur.in/2005/02/25/part-6-efficiently-representing-sets-continued.../</link>
      <pubDate>Fri, 25 Feb 2005 12:56:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/02/25/part-6-efficiently-representing-sets-continued.../</guid>
      <description>Great article. Gives some very valuable information on implementing sets with a finite universe.
 It doesn&amp;#8217;t suit my requirements - I need to represent sets where the universal set might be infinite - like, say the set of strings.
 The trouble starts with trying to implement the set complement operation - you can&amp;#8217;t obviously list an infinite set, so the trick is to represent it as a cofinite set.</description>
    </item>
    
    <item>
      <title>Visual C# Developer Center: Part 6: Efficiently Representing Sets</title>
      <link>https://blog.rraghur.in/2005/02/24/visual-c#-developer-center-part-6-efficiently-representing-sets/</link>
      <pubDate>Thu, 24 Feb 2005 11:26:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/02/24/visual-c#-developer-center-part-6-efficiently-representing-sets/</guid>
      <description>And now I need to roll out my own version of a set datastructure library. C# has hashmaps - they come close but aren&amp;#8217;t really sets. You can use them to implement sets, but that&amp;#8217;s about it. Also, I want my sets to conform to one of the standard collection interfaces so that they can interoperate with code. And I REALLY REALLY need set intersection, set union and set difference!</description>
    </item>
    
    <item>
      <title>CAPICOM - Accessing CryptoAPI from VB6</title>
      <link>https://blog.rraghur.in/2005/02/24/capicom-accessing-cryptoapi-from-vb6/</link>
      <pubDate>Thu, 24 Feb 2005 11:14:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/02/24/capicom-accessing-cryptoapi-from-vb6/</guid>
      <description>I&amp;#8217;ve this need to calculate a file fingerprint in VB6. So the need to access CrptoAPI in vb6. Didnt want to do win32 calls from VB and thankfully MS has a COM layer over cryptoAPI called CAPICOM. Useful stuff&amp;#8230;&amp;#8203;as the MSDN site says
 &#34;Summary: CAPICOM is a new security technology from Microsoft that allows Microsoft Visual Basic, Visual Basic Script, ASP, and C++ programmers to easily incorporate digital signing and encryption into their application.</description>
    </item>
    
    <item>
      <title>ASPAlliance.com : ASP and ASP.NET Tutorials : The LogonUser API</title>
      <link>https://blog.rraghur.in/2005/02/24/aspalliance.com-asp-and-asp.net-tutorials-the-logonuser-api/</link>
      <pubDate>Thu, 24 Feb 2005 03:04:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/02/24/aspalliance.com-asp-and-asp.net-tutorials-the-logonuser-api/</guid>
      <description>ASPAlliance.com : ASP and ASP.NET Tutorials : The LogonUser API
 Finally found a way to allow ASPNET user access to the LogonUser api. Guess what, WinXP and above, no specific permissions are required! Cool.
 </description>
    </item>
    
    <item>
      <title>WSE2SP2 - Installing test certificates and the Mystery of Missing &#39;Other People&#39; Tab</title>
      <link>https://blog.rraghur.in/2005/02/23/wse2sp2-installing-test-certificates-and-the-mystery-of-missing-other-people-tab/</link>
      <pubDate>Wed, 23 Feb 2005 13:57:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/02/23/wse2sp2-installing-test-certificates-and-the-mystery-of-missing-other-people-tab/</guid>
      <description>I was trying out WSE2.0 SP2 Hands on lab on security and hit this really strange problem.
 I needed to install the sample certificates supplied with WSE, typically located in C:\Program Files\Microsoft WSE\v2.0\Samples\Sample Test Certificates.
 As given in the Hands on lab manual, I installed the Server Certificate.pfx (server&amp;#8217;s private key) to the LocalMachine\Personal store and the Client Certificate.pfx (client&amp;#8217;s private key) to the CurrentUser\Personal store. The trouble started when I wanted to install the Server&amp;#8217;s public key to the Current User&amp;#8217;s\Other People store as directed.</description>
    </item>
    
    <item>
      <title>Back to work....</title>
      <link>https://blog.rraghur.in/2005/02/17/back-to-work..../</link>
      <pubDate>Thu, 17 Feb 2005 10:43:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/02/17/back-to-work..../</guid>
      <description>Am back today after a long time. Been down with viral fever and doing nothing more than warming the bed with my backside :(.Â Really depressing!
 Anyway am back today - but feeling quite tired.
 This thing&amp;#8217;s thrown a spanner in the works in more than one thing - was supposed to go to the finale of the Aero India show here and couldn&amp;#8217;t make it - thanks to the viral!</description>
    </item>
    
    <item>
      <title>&amp;amp;nbsp; in XSLT - MSXML3, MSXML4</title>
      <link>https://blog.rraghur.in/2005/01/29/ampnbsp-in-xslt-msxml3-msxml4/</link>
      <pubDate>Sat, 29 Jan 2005 09:13:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/01/29/ampnbsp-in-xslt-msxml3-msxml4/</guid>
      <description>I had this problem last week - needed to generate . My method was to use an entity declaration
 &amp;lt;?xml version=&#34;1.0&#34;?&amp;gt; &amp;lt;!DOCTYPE xsl:stylesheet [ &amp;lt;!ENTITY nbsp &#34;&amp;amp;#160;&#34;&amp;gt; &amp;lt;!-- white space in XSL --&amp;gt; ]&amp;gt;   Sadly, this doesn&amp;#8217;t work with MSXML3 or MSXML4. The generated HTML has a space &#39; &#39; character rather than
 After some googling, found the answer and a workaround on the xsl list</description>
    </item>
    
    <item>
      <title>Editing XSLT</title>
      <link>https://blog.rraghur.in/2005/01/29/editing-xslt/</link>
      <pubDate>Sat, 29 Jan 2005 08:45:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2005/01/29/editing-xslt/</guid>
      <description>Am back on XML/XSL now. I&amp;#8217;m in need of a good XSL editor - good being defined as
  Support intellisense
  Have a decent XPATH visualizer
  Debugging (optional)
  FREE :))
  Editor with regexp support for search/replace (We all write XHTML. But if you need to start of with an existing HTML page, 99 times out of hundered, its not going to be XHTML)</description>
    </item>
    
    <item>
      <title>The Code Project - Advanced Unit Testing, Part I - Overview - C#
Programming</title>
      <link>https://blog.rraghur.in/2004/10/28/the-code-project-advanced-unit-testing-part-i-overview-c#-programming/</link>
      <pubDate>Thu, 28 Oct 2004 10:15:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/10/28/the-code-project-advanced-unit-testing-part-i-overview-c#-programming/</guid>
      <description>Came across this article on some advances to NUnit that I found missing! Great stuff, but I guess I&amp;#8217;ll have to wait until this gets into NUnit.
 Very useful article - explores points where unit testing doesn&amp;#8217;t work well enough (atleast the normal set of tools available).
 The Code Project - Advanced Unit Testing, Part I - Overview - C# Programming
 </description>
    </item>
    
    <item>
      <title>Email message attachments in Perl</title>
      <link>https://blog.rraghur.in/2004/10/27/email-message-attachments-in-perl/</link>
      <pubDate>Wed, 27 Oct 2004 18:20:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/10/27/email-message-attachments-in-perl/</guid>
      <description>Pretty useful stuff. Just used this to send out personalized invitation emails to all my friends. Email message attachments in Perl
 Additional note: If you&amp;#8217;re using a MS Exchange server like me, most likely, you will not be able to send out email outside your organization. To work around this, you need to use the sign in to your SMTP server using the auth method in Net::SMTP. Give your domain username (just the username) and the password in the call to auth.</description>
    </item>
    
    <item>
      <title>Nice logs in .NET</title>
      <link>https://blog.rraghur.in/2004/10/27/nice-logs-in-.net/</link>
      <pubDate>Wed, 27 Oct 2004 16:31:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/10/27/nice-logs-in-.net/</guid>
      <description>Been off the blog for sometime now. Been a bit busy with work and also with preparations for marriage (on Nov 7th) so haven&amp;#8217;t got much time in between to post.
 Here&amp;#8217;s something interesting (and hopefully useful).
 I&amp;#8217;ve always been a fan of Log4Net (http://logging.apache.org/log4net). However, on this occasion, I had to use something that was custom built (using open source doesn&amp;#8217;t go well with certain customers). So decided to look into System.</description>
    </item>
    
    <item>
      <title>An OO Text filter library in Perl</title>
      <link>https://blog.rraghur.in/2004/09/01/an-oo-text-filter-library-in-perl/</link>
      <pubDate>Wed, 01 Sep 2004 08:21:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/09/01/an-oo-text-filter-library-in-perl/</guid>
      <description>Have put together a skeleton of a Region matching library in Perl. Idea was triggered from the log analysis script that I was writing last week. That worked pretty well, except for the fact that my fiance wanted to do other little bits with some other regions of the same file.
 And then I got thinking and realized that 90% of the time I am trying to match text delimited by some patterns and trying to do something with the text in between - for instance, add log statements at start and end of function calls in a VB.</description>
    </item>
    
    <item>
      <title>Perl - you&#39;ll either love it or you&#39;ll hate it, but you won&#39;t ignore it if you want to get things done!</title>
      <link>https://blog.rraghur.in/2004/08/28/perl-youll-either-love-it-or-youll-hate-it-but-you-wont-ignore-it/</link>
      <pubDate>Sat, 28 Aug 2004 05:52:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/08/28/perl-youll-either-love-it-or-youll-hate-it-but-you-wont-ignore-it/</guid>
      <description>Have spent the better part of yesterday night writing a Perl script to aid my fiance&#39; in doing some log analysis. And I&amp;#8217;m no Perl guru - my biggest Perl program till date wouldn&amp;#8217;t have been more than a 100 lines. Here&amp;#8217;s my raves and rants on it Raves
  Most powerful reg ex capabilities with a full programming language to back it up!
  Large and powerful standard library.</description>
    </item>
    
    <item>
      <title>A new day, some tweaks and a little bit of *nix</title>
      <link>https://blog.rraghur.in/2004/08/27/a-new-day-some-tweaks-and-a-little-bit-of-nix/</link>
      <pubDate>Fri, 27 Aug 2004 02:44:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/08/27/a-new-day-some-tweaks-and-a-little-bit-of-nix/</guid>
      <description>So I managed to get myself a gmail account - raghu dot rajagopalan at gmail dot com :). And I love google groups access. However, wanted to know if there is some way where my posts don&amp;#8217;t show my email address.
 Have posted a query to google feedback - will let you know if something comes of it.
 Meanwhile have started looking at NUnitForms - have to try out some code to see if it&amp;#8217;s as nice as nunit.</description>
    </item>
    
    <item>
      <title>I&#39;m back...</title>
      <link>https://blog.rraghur.in/2004/08/26/im-back.../</link>
      <pubDate>Thu, 26 Aug 2004 14:12:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/08/26/im-back.../</guid>
      <description>Havent really been active on the blog - kind of ignored it till now. Anyway, I&amp;#8217;m back, fwiw. There&amp;#8217;s been quite a lot of changes here and I guess that&amp;#8217;s the thing that&amp;#8217;s kept me from blogging - add to it the fact that I&amp;#8217;m new to maintaining a journal on the web.
 These days am looking for some generous person to invite me to Gmail.
 Haven&amp;#8217;t really done much on the programming front - other than digging around to find out if I can launch an executable on the client from a web page without the warning pop ups.</description>
    </item>
    
    <item>
      <title>Set up my blog</title>
      <link>https://blog.rraghur.in/2004/07/15/set-up-my-blog/</link>
      <pubDate>Thu, 15 Jul 2004 21:42:00 +0530</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/2004/07/15/set-up-my-blog/</guid>
      <description>Just finished setting my place for raves and rants on the net. More to see what a blog provides and out of curiosity rather than anything else.
 </description>
    </item>
    
    <item>
      <title></title>
      <link>https://blog.rraghur.in/1/01/01/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <author>raghu.nospam@gmail.com (Raghu)</author>
      <guid>https://blog.rraghur.in/1/01/01/</guid>
      <description>Anti patterns - What not to do   Pitfalls to avoid However, an equal number of implementations that run into rough weather are also because they lack strong engineering leadership. Especially in a corporate/enterprise environment, you need strong engineering leadership who can push for good engineering hygiene. Now, none of these are very special to microservices so it&amp;#8217;s
   Lack focus on the domain - The easiest way to mess up a microservices implementation is to not structure your domain well.</description>
    </item>
    
  </channel>
</rss>