<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:wfw="http://wellformedweb.org/CommentAPI/"
     xmlns:dc="http://purl.org/dc/elements/1.1/"
     xmlns:atom="http://www.w3.org/2005/Atom"
     xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
     xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
     xmlns:georss="http://www.georss.org/georss"
     xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
     xmlns:media="http://search.yahoo.com/mrss/"><channel>
  <title>Blog - Dennis Ogbe's Personal Website</title>
  <atom:link href="https://ogbe.net/blog.xml" rel="self" type="application/rss+xml" />
  <link>https://ogbe.net/</link>
  <description><![CDATA[]]></description>
  <language>en</language>
  <pubDate>Wed, 17 May 2023 01:06:02 -0700</pubDate>
  <lastBuildDate>Wed, 17 May 2023 01:06:02 -0700</lastBuildDate>
  <generator>Emacs 28.1 Org-mode 9.5.2</generator>
  <webMaster>do@ogbe.net (Dennis Ogbe)</webMaster>
  <image>
    <url>https://ogbe.net/img/feed-icon-28x28.png</url>
    <title>Blog - Dennis Ogbe's Personal Website</title>
    <link>https://ogbe.net/</link>
  </image>

  <p>
    <h1>Blog</h1>
  </p>

  <item>
    <title>file:blog/org_custom_sitemap.org</title>
    <link>https://ogbe.net/blog/org_custom_sitemap.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/org_custom_sitemap.html</guid>
    <pubDate>Tue, 27 Dec 2022 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I have been lugging around an old version of org-mode (9.0 to be specific) in the git repo which builds this website for a number of years now. I decided to do this because I had a custom <code>org-sitemap-function</code> to generate the landing page for my blog, but org 9.1 introduced <a href="https://orgmode.org/Changes_old.html#:~:text=Change%20signature%20for%20%3Asitemap%2Dfunction">a breaking change</a> to the org-publish API.
    </p>

    <p>
    I have now finally come around to fixing this issue and making my website compatible with modern emacs and org-mode versions higher than 9.1. However, porting my old sitemap function was... surprisingly difficult? So just in case someone is looking up my <a href="../blog/blogging_with_org.html">original post</a> these days, this post contains a <code>sitemap-function</code> which will work in 2022.
    </p>

    <p>
    <a href="blog/org_custom_sitemap.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/emacs_redux.org</title>
    <link>https://ogbe.net/blog/emacs_redux.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/emacs_redux.html</guid>
    <pubDate>Fri, 24 Apr 2020 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I <a href="../blog/emacs_config.html">used to</a> keep a HTMLized version of my Emacs config on this website for folks to browse. However, during my last larger config overhaul, I changed things up so much that simply exporting one file and putting it on the website was not possible anymore and the link to my config silently 404'ed.
    </p>

    <p>
    Since then, I have received multiple requests to re-upload the config file. I kept promising folks that I would one day get to doing that. That day has now finally come.
    </p>

    <p>
    Took a few hours of cleanup and writing, but <a href="../emacs/emacs.html">the config is now back online in all its glory</a>. There is also extensive commentary, in case you are interested.
    </p>

    <p>
    <a href="blog/emacs_redux.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/beamerposter-purdue.org</title>
    <link>https://ogbe.net/blog/beamerposter-purdue.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/beamerposter-purdue.html</guid>
    <pubDate>Tue, 02 Oct 2018 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    During the <a href="https://bit.ly/2OQKRPH">Advanced LaTeX workshop</a> we taught at Purdue last week, I announced
    that I would share my poster design using the <a href="https://ctan.org/pkg/beamerposter?lang=en">beamerposter</a> package and a
    similar design as the <a href="beamer-purdue.html">slides.</a> I finally came around to uploading a few examples
    to my <a href="https://github.com/dennisog/beamer-purdue">GitHub</a> account (thanks for being patient, everyone)---you can find them
    <a href="https://github.com/dennisog/beamer-purdue/tree/master/poster">here</a>.
    </p>

    <p>
    <a href="blog/beamerposter-purdue.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/towards_jupyter_emacs.org</title>
    <link>https://ogbe.net/blog/towards_jupyter_emacs.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/towards_jupyter_emacs.html</guid>
    <pubDate>Tue, 18 Jul 2017 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    It is not a secret that I am a fan of both <a href="https://www.gnu.org/software/emacs/">Emacs</a> and the <a href="https://julialang.org/">Julia</a> language. Even
    though I have not been working with Julia a lot recently, I still try to keep
    up to date with the language and use it in my research and other projects
    whenever it fits. It should also not be a secret that I am a big fan of the
    Emacs Way™ of working with interpreted languages, which involves the idea of
    controlling a REPL without leaving the editor. It was for those and other
    reasons that I initially hacked together <a href="https://github.com/dennisog/julia-shell-mode">julia-shell-mode</a> (See my blog post
    about it <a href="https://ogbe.net/blog/julia-shell.html">here</a>), but if you take a closer look at the open isses in GitHub and
    the overall lack of commits, you might sense that I have lost interest in this
    package. Of course, the reality behind my lack of enthusiasm for
    <code>julia-shell-mode</code> is a little more complicated.
    </p>

    <p>
    <a href="blog/towards_jupyter_emacs.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/zmq_helloworld.org</title>
    <link>https://ogbe.net/blog/zmq_helloworld.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/zmq_helloworld.html</guid>
    <pubDate>Wed, 28 Jun 2017 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    It's been a while since I posted some new content on here. This is mostly
    because I've been quite busy trying to be an academic at Purdue. This blog will
    get an update soon with a few publications!
    </p>

    <p>
    Anyways, I've been working a LOT with C++ recently, side-by-side with (and
    guided by) my labmates <a href="https://www.tarakawa.net/">Tomo</a> and <a href="https://www.slarew.net/">Stephen</a>. (Expect a post about the perfect emacs
    setup for C++ development soon, but here's a hint: it involves the usual
    suspects <a href="https://github.com/Andersbakken/rtags">rtags</a> and <a href="https://github.com/Valloric/ycmd">ycmd</a>) As part of our project, I am currently surveying a few
    methods for inter-thread and inter-process communication, which seems to be
    what <a href="http://zeromq.org/">ZeroMQ</a> was created for.
    </p>

    <p>
    <a href="blog/zmq_helloworld.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/beamer-purdue.org</title>
    <link>https://ogbe.net/blog/beamer-purdue.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/beamer-purdue.html</guid>
    <pubDate>Thu, 19 May 2016 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I've gotten a few requests to share my custom Purdue-themed <a href="https://www.ctan.org/pkg/beamer?lang=en">beamer</a> templates
    recently and I finally came around to clean them up, put them in individual
    <code>.sty</code>-files, and upload them to <a href="https://github.com/dennisog/beamer-purdue">GitHub</a>.
    </p>

    <p>
    The GitHub repository contains some examples to use the two templates I have
    been using for talks and presentations over the last few semesters. The first
    (and IMHO better) template is <code>beamer-purdue-gold</code> and the title page looks
    like this:
    </p>


    <figure id="org156fd44">
    <img src="https://raw.githubusercontent.com/dennisog/beamer-purdue/master/gold/preview/beamer-purdue-gold-0.png" alt="beamer-purdue-gold-0.png" />

    </figure>


    <p>
    <a href="blog/beamer-purdue.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/gnome_titles.org</title>
    <link>https://ogbe.net/blog/gnome_titles.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/gnome_titles.html</guid>
    <pubDate>Mon, 11 Apr 2016 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    <a href="https://www.youtube.com/watch?v=JU2f_jkPRq4">GNOME 3.20</a> has made it into the official Arch Linux repositories and with it
    came---as usual---some sort of breakage. I personally find the default width of
    the titlebars repulsive, and I used a small CSS hack to fix them. This broke,
    but thanks to <a href="https://www.reddit.com/r/gnome/comments/46gplm/does_anyone_know_how_to_decrease_titlebar_height/">reddit</a>, I managed to fix it. Put the following in
    <code>~/.config/gtk-3.0/gtk.css</code> (create the file if it does not exist):
    </p>

    <p>
    <a href="blog/gnome_titles.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/moar_monitors.org</title>
    <link>https://ogbe.net/blog/moar_monitors.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/moar_monitors.html</guid>
    <pubDate>Sat, 12 Mar 2016 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I love multihead setups and I am a thrifty grad student. Today, this
    combination lead to an interesting and fun Saturday morning project. I figured
    out how to add an additional monitor to my dual-monitor set-up, which is already
    a little convoluted.
    </p>

    <p>
    Let me clear things up: My main setup currently consists of a Thinkpad with its
    lid closed connected to two monitors (one over VGA, one over
    DisplayPort). Since my laptop has no third physical display connector, I had to
    get creative in order to add a third physical monitor to my set-up.
    </p>

    <p>
    I use a <a href="http://www.amazon.com/Plugable-Graphics-Multiple-Displays-1920x1080/dp/B004D0QC0A">cheap DisplayLink adapter</a> at home for exactly this reason, but
    unfortunately the official dirvers are buggy and the whole set-up is generally
    very unreliable. So, with me being the thrifty grad student that I am, I did
    not want to shell out another $30 for a piece of hardware that doesn't even
    really work.
    </p>

    <p>
    What I ended up doing is pretty neat.
    </p>

    <p>
    <a href="blog/moar_monitors.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/matmul_tricks.org</title>
    <link>https://ogbe.net/blog/matmul_tricks.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/matmul_tricks.html</guid>
    <pubDate>Fri, 04 Mar 2016 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    The first two are sort of obvious:
    </p>

    <p>
    We want to multiply some matrix \(\mathbf{A}\) with some <span class="underline">diagonal</span> matrix
    \(\mathbf{D}\). Instead of carrying out a bunch of multiplications by zero, we
    replace the matrix multiplications by a <code>for</code> loop and elementwise
    multiplication. In other words,
    </p>

    <p>
    <a href="blog/matmul_tricks.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/blogging_with_org.org</title>
    <link>https://ogbe.net/blog/blogging_with_org.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/blogging_with_org.html</guid>
    <pubDate>Mon, 01 Feb 2016 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    <b>Update :</b> I finally (after 4 years!) fixed a
    compatibility issue with org-mode &gt; 9.1. See <a href="../blog/org_custom_sitemap.html">this blog post</a> for an
    updated <code>org-sitemap-function</code> and an updated project definition. I'm
    leaving this post up to preserve history.
    </p>

    <p>
    As you can tell, the look of this website has changed significantly---and it
    was about time for that. In case you didn't know, this site used to be hosted
    on <a href="http://web.ics.purdue.edu/">http://web.ics.purdue.edu/</a>, which provides <a href="https://www.itap.purdue.edu/learning/careeraccount/webpage.html">free webspace for Purdue
    students</a>. I used to generate the static HTML pages from plaintext markdown
    files using the Python-based static site generator <a href="http://blog.getpelican.com/">Pelican</a>. It worked well for
    a while, but I ended up having a few issues with that setup:
    </p>

    <ul class="org-ul">
    <li><p>The <a href="https://web.ics.purdue.edu/">host</a> was painstakingly slow to reach from anywhere but the Purdue
    networks</p></li>
    <li><p>Pelican would just break sometimes, providing me with nothing but some
    cryptic Python exception messages</p></li>
    <li><p>The website did not use TLS and loaded a lot of external content over an
    unencrypted HTTP connection, causing it to render incompletely when using
    <a href="https://www.eff.org/HTTPS-everywhere">HTTPS Everywhere</a></p></li>
    <li><p>I prefer <a href="http://orgmode.org/">Org-mode</a> over the <a href="http://www.wilfred.me.uk/blog/2012/07/30/why-markdown-is-not-my-favourite-language/">fragmented Markdown</a> syntax for writing plaintext
    documents</p></li>
    <li><p><a href="http://orgmode.org/worg/org-contrib/babel/examples/fontify-src-code-blocks.html">Source code blocks are prettier in Org-mode</a></p></li>
    </ul>

    <p>
    So, of course, I looked for an alternative.
    </p>

    <p>
    <a href="blog/blogging_with_org.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/julia-shell.org</title>
    <link>https://ogbe.net/blog/julia-shell.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/julia-shell.html</guid>
    <pubDate>Sun, 27 Sep 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    <a href="http://julialang.org/">Julia</a> is an interesting new scientific programming language. I haven't used it
    much in the past, but I believe that it has the potential to be a very fierce
    FOSS competitor to MATLAB.  When I tell friends and colleagues about Julia, my
    punchline is usually: "It looks and feels like MATLAB, but it's as fast as C."
    </p>

    <p>
    I'd like to start using Julia more for things like Monte-Carlo simulations and
    other technical programming tasks, but I am spoiled rotten by the comfort of
    <a href="http://matlab-emacs.sourceforge.net/">MATLAB-emacs</a>. I have gotten so used to interacting with a live REPL from my
    text editing buffer that I do not want to miss it with any other language.
    <a href="https://github.com/JuliaLang/julia/blob/master/contrib/julia-mode.el">Julia ships with an official Emacs mode</a>, but the support for an interactive
    Shell within an Emacs buffer is almost non-existent. So I sat down for a few
    hours this weekend and built the Julia-shell mode that I would want to use.
    </p>

    <p>
    Cue <a href="https://github.com/dennisog/julia-shell-mode"><code>julia-shell-mode</code></a>.
    </p>


    <figure id="org8f0288e">
    <img src="https://raw.githubusercontent.com/dennisog/julia-shell-mode/master/img/screenshot.png" alt="screenshot.png" />

    </figure>


    <p>
    <a href="blog/julia-shell.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/ssh_names.org</title>
    <link>https://ogbe.net/blog/ssh_names.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/ssh_names.html</guid>
    <pubDate>Wed, 22 Jul 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I love <a href="https://en.wikipedia.org/wiki/Secure_Shell">SSH</a>. It's the most convenient and secure way to manage multiple machines
    over the internet. It allows me to access my desk machine or my home server
    from anywhere in the world. It calms my paranoid side with features like <a href="http://www.systutorials.com/944/proxy-using-ssh-tunnel/">SSH
    Tunneling</a>. In short, SSH is one of my favorite tools.
    </p>

    <p>
    But the Internet is an interesting place.
    </p>

    <p>
    <a href="blog/ssh_names.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/toggle-serif.org</title>
    <link>https://ogbe.net/blog/toggle-serif.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/toggle-serif.html</guid>
    <pubDate>Mon, 06 Jul 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I edit a lot of \(\LaTeX\) documents using <a href="https://www.gnu.org/software/auctex/">AUCTeX</a> in Emacs. Since I believe that
    serif fonts like Times New Roman are a lot easier to read than monospaced
    fonts, I wanted to be able to view and edit text in an emacs buffer using a
    variable-width, serif font. After 20 minutes of elisp hacking during lunch, I
    came up with <code>toggle-serif</code>, a small elisp function that does exactly what I
    want.
    </p>

    <p>
    When invoked, <code>toggle-serif</code> changes the default font family of the buffer to
    <a href="http://www.dafont.com/liberation-serif.font">Liberation Serif</a>. The only problem I had was that I wanted to preserve the
    default monospace fonts for some faces, for example verbatim code snippets or
    markup commands.
    </p>

    <p>
    <a href="blog/toggle-serif.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/ctmpmon.org</title>
    <link>https://ogbe.net/blog/ctmpmon.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/ctmpmon.html</guid>
    <pubDate>Wed, 01 Jul 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    Sometimes, especially when I run intensive simulations on one of my machines, I
    want to be able to keep an eye on the temperatures of my CPU. <a href="http://www.lm-sensors.org/"><code>lm_sensors</code></a>
    gives me this functionality on my arch linux systems, and the <a href="https://wiki.archlinux.org/index.php/Lm-sensors">ArchWiki</a> has a
    great intro page on it.
    </p>

    <p>
    <a href="blog/ctmpmon.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/emacs_config.org</title>
    <link>https://ogbe.net/blog/emacs_config.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/emacs_config.html</guid>
    <pubDate>Wed, 10 Jun 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I finally created some acceptable CSS to publish good-looking HTML files using
    <a href="http://orgmode.org/"><code>org-mode</code></a>. Since my emacs configuration file is a <a href="http://en.wikipedia.org/wiki/Literate_programming">literate program</a> contained
    in an <code>org-mode</code> file, I can now put it on the web for the world to see. <a href="../emacsconfig.html">This
    is it.</a>
    </p>

    <p>
    Best, Dennis
    </p>

    <p>
    <b>Update </b>: The link above hasn't worked for years. I finally got back to uploading the config again. <a href="../emacs/emacs.html">See here.</a>
    </p>

    <p>
    <a href="blog/emacs_config.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/mpd_fish.org</title>
    <link>https://ogbe.net/blog/mpd_fish.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/mpd_fish.html</guid>
    <pubDate>Fri, 05 Jun 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    Like many other people, I enjoy listening to music. I have aggregated a
    reasonably large (~90 GB) library of digital music over the years, and, of
    course, my favorite way to listen to it is <a href="http://www.musicpd.org/">MPD</a>.
    </p>

    <p>
    Right now, I'm running MPD on my "media center" computer <code>hellboy2</code>, which
    (surprisingly?) is a MacBook running OSX Yosemite connected to an HDTV. Before
    I switched to MPD again (this is actually my second switch to MPD; I used it
    around 8 years ago on my first Linux systems), I used iTunes to manage my music
    library. One advantage of iTunes (and the main reason why I cannot stop using
    it) is that iTunes on a Mac is probably the most dependable way of syncing
    music to an iPod. This is the sole reason why I still want all of my music to
    be indexed by iTunes.
    </p>

    <p>
    <a href="blog/mpd_fish.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/matlab_polar.org</title>
    <link>https://ogbe.net/blog/matlab_polar.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/matlab_polar.html</guid>
    <pubDate>Mon, 01 Jun 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    For a problem that I'm currently working on, I found myself having to visualize
    some <a href="http://www.cisco.com/c/en/us/products/collateral/wireless/aironet-antennas-accessories/prod_white_paper0900aecd806a1a3e.html">antenna patterns</a> using MATLAB. To create polar coordinate plots, MATLAB
    offers the <a href="http://www.mathworks.com/help/matlab/ref/polar.html"><code>polar</code></a> method, which is unfortunately quite limited in
    functionality. For this reason, Duane Hanselman created <a href="http://www.mathworks.com/matlabcentral/fileexchange/38855-comprehensive-polar-plots/"><code>mmpolar</code></a>, which brings
    MATLAB's extensive handle graphics capabilities to polar plots.
    </p>

    <p>
    I wanted to create some antenna pattern plots with a light grey background and
    white grid lines, a color theme which is heavily inspired by Stanford's <a href="http://stanford.edu/~mwaskom/software/seaborn/">seaborn</a>
    library for python/matplotlib. One problem that I faced was that <code>mmpolar</code> by
    default sets the color of the axis tick labels to the color of the axis grid
    lines. This meant that whenever I set the grid lines to be white, my tick
    labels would disappear in the white figure background, which was obviously
    quite undesirable.
    </p>

    <p>
    I wrote a small <a href="../dl/mmpolar_color_labels.patch">patch</a> to fix this problem: It adds a <code>TickLabelColor</code> property
    to each axis, which can be different from the <code>GridColor</code> property, which
    controls the grid line color. Specifically, to set the color of the angle axis,
    I can now set the <code>TTickLabelColor</code> property and to set the color of the
    amplitude axis, I can set the <code>RTickLabelColor</code> property. Much better.
    </p>

    <p>
    The results look like this:
    </p>


    <figure id="org1dfae1b">
    <img src="../img/pattern_plot.png" alt="pattern_plot.png" />

    </figure>


    <p>
    <a href="blog/matlab_polar.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/emacs.org</title>
    <link>https://ogbe.net/blog/emacs.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/emacs.html</guid>
    <pubDate>Mon, 16 Mar 2015 00:00:00 -0700</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    Something really interesting happened to me over the course of the last few
    weeks: I switched from using a combination of <a href="http://tmux.sourceforge.net/">tmux</a>, <a href="http://www.vim.org/">vim</a>, and the <a href="http://fishshell.com/">fish shell</a> for
    my daily computing needs to doing everything and more in <a href="http://www.gnu.org/software/emacs/">emacs</a>!
    </p>

    <p>
    I can already see some readers of this make faces and scream out profanities
    and other nice things in disgust: "You are such a heretic!", "How could you
    become one of them?", "You officially joined the dark side", "We have to stop
    being friends now."
    </p>

    <p>
    But wait... Let me explain myself. Emacs is actually quite a pleasure to use.
    </p>

    <p>
    <a href="blog/emacs.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/fish.org</title>
    <link>https://ogbe.net/blog/fish.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/fish.html</guid>
    <pubDate>Sat, 31 Jan 2015 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I've been using <a href="http://zsh.sourceforge.net/"><code>zsh</code></a> with a few customizations for quite a while now and I can
    honestly say that I would never go back to just using plain bash (although that
    is not entirely true: I do my scripting in bash, since bash is the common
    denominator amongst many *nix systems).
    </p>

    <p>
    Some of the things that I liked about <code>zsh</code> include better tab completion and
    interactive syntax highlighting. I also configured my prompt to show the
    current status of a git repository, if the current directory contains one. Some
    of these customizations felt like a bunch of hacks, but they worked just fine.
    </p>

    <p>
    Today I stumbled across <a href="http://fishshell.com/">the <code>fish</code> shell</a>, which, unlike <code>zsh</code>, breaks backward
    compatibility to bash, but advertises itself as a "smart and user-friendly
    command line shell for OS X, Linux, and the rest of the family."
    </p>

    <p>
    <a href="blog/fish.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/multiple_dd.org</title>
    <link>https://ogbe.net/blog/multiple_dd.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/multiple_dd.html</guid>
    <pubDate>Tue, 27 Jan 2015 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    In the advanced C programming class that I assist in teaching, we are holding
    interactive programming exams. That means that every student is tasked with
    constructing a C program in a time frame of a about 2 hours.  Students have
    access to <a href="https://gcc.gnu.org/">GCC</a>, <a href="http://valgrind.org/">Valgrind</a>, as well as the Emacs and Vim text editors (we are
    staunch proponents of religious freedom).
    </p>

    <p>
    One hurdle in holding programming exams is the problem of cheating: Nowadays,
    every computer at any computer lab is connected to some kind of network, which
    would make it easy for students to share files or look up hints and answers to
    problems on the internet. Our solution to this problem involves booting the lab
    computers from a USB drive which contains a customized, lock-down version of
    Linux, combined with the aforementioned tools and assignment files.
    </p>

    <p>
    <a href="blog/multiple_dd.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/powermethod.org</title>
    <link>https://ogbe.net/blog/powermethod.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/powermethod.html</guid>
    <pubDate>Thu, 22 Jan 2015 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    I apologize. The title is pure clickbait. This post is not about Kanye West (or
    Malcolm X). But I promise, it will be interesting! (And it will have something
    to do with the word 'power')
    </p>

    <p>
    One reason I started this website for is to explain things to myself in a
    somewhat coherent form. My reasoning is that if I can take a concept and write
    it up in publishable form, I will have truly understood and digested it. So
    today's topic is the <b>power method for approximating the dominant eigenvector</b>.
    </p>

    <p>
    "But why?" is the question that everyone should be asking by now and I wouldn't
    blame you. One of the answers is that it's cool, it's interesting, I want to
    understand it, and <a href="http://en.wikipedia.org/wiki/PageRank">Google</a> and <a href="http://en.wikipedia.org/wiki/Power_iteration#Applications">Twitter</a> use it every day for multiple
    things. It's always cool to learn things about the internals of Google and
    Twitter, right?
    </p>

    <p>
    <a href="blog/powermethod.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/all_roads_lead_to_rome.org</title>
    <link>https://ogbe.net/blog/all_roads_lead_to_rome.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/all_roads_lead_to_rome.html</guid>
    <pubDate>Tue, 20 Jan 2015 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    Is there such a thing as <i>ideomatic C?</i> I'm not sure: I hear Python people talk
    about ideomatic Python a lot (although I'm probably still very unpythonic most
    of the time), and I'm convinced that functional programming in languages like
    Haskell and Lisp approaches the task of programming with fundamentally
    different ideoms than an imperative language like C. But I haven't really
    witnessed many conversations about the concept of ideomatic <i>C</i>.
    </p>

    <p>
    Why am I asking this? This semester of EE264, the advanced C programming course
    for undergraduate electrical engineers at Purdue (where I am the <a href="../pages/teaching.html">TA</a>), is being
    taught by a <a href="http://en.wikipedia.org/wiki/Lisp_%28programming_language%29">Lisp hacker</a>. Which is awesome, because the Lisp-y way of problem
    solving is sometimes quite different from the way I would approach a simple
    problem.
    </p>

    <p>
    <a href="blog/all_roads_lead_to_rome.html"><i>Read More...</i></a>
    </p>
    <hr />
    ]]></description>
  </item>
  <item>
    <title>file:blog/helloworld.org</title>
    <link>https://ogbe.net/blog/helloworld.html</link>
    <author>do@ogbe.net (Dennis Ogbe)</author>
    <guid isPermaLink="false">https://ogbe.net/blog/helloworld.html</guid>
    <pubDate>Mon, 19 Jan 2015 00:00:00 -0800</pubDate>

    <description><![CDATA[<p>
    <i>Published: </i>
    </p>

    <p>
    Hello World! This is my first blog post! I can use this as a test on how to use
    the math and the code view feature. The math environment takes the \(\LaTeX{}\)
    syntax, which always makes me happy. This is inline math: \(2x + 15 = 9\).
    </p>

    <p>
    This is the equation environment:
    </p>
    \begin{equation}
    \label{eq:test_eq}
    X(\omega) = \int_{-\infty}^{+\infty} x(t) e^{-j\omega t}\ \mathrm{dt}
    \end{equation}
    <p>
    Seems to be working!
    </p>

    <p>
    <a href="blog/helloworld.html"><i>Read More...</i></a>
    </p>
    ]]></description>
  </item>
</channel>
</rss>
