Blind Not Dumb (Posts about blogging)https://www.feoh.org/categories/blogging.atom2024-01-21T01:02:42ZChris PattiNikolaI Pushed the "Easy" Button :)https://www.feoh.org/posts/i-pushed-the-easy-button.html2017-02-19T02:38:00-05:002017-02-19T02:38:00-05:00cpatti<p>A couple of years back, frustrated by the challenges of running my own <a class="reference external" href="https://wordpress.org/">Wordpress</a> site, I decided to give <a class="reference external" href="https://blog.getpelican.com/">Pelican</a> a try.</p>
<p>It's what is know as a "static blogging" tool. This means that you treat your blog just like any other code - you write your articles using a text editor, run a command and the article is produced in its final form ready for consumption by web browsers. Maybe run another command, and your article gets uploaded to wherever your blog is actually served.</p>
<p>There are <strong>lots</strong> of advantages to this model. For one thing, it's simple "static" HTML. That means that the only thing your site has to do is server that content. Unlike tools like Wordpress, which require a fair bit of supporting infrastructure like a database.</p>
<p>Another huge benefit is that you have the ultimate in control. You can modify the results to your heart's content, unconstrained by anyone else's idea of how it should look or work.</p>
<p>However, I'm not a web developer. I can create web pages, but they're <strong>ugly</strong>, and while I possess more than enough know how to run all of the needed infrastructure and keep it safely locked down, that's not how I choose to spend my very limited free time.</p>
<p>So, I've switched my blog back to Wordpress, but this time I'm letting someone else do the hard work of keeping my site happy and secure. There is this tendency in my industry to build everything we use just because we <strong>can</strong>. There was a time I felt the same way, but not any more.</p>
<p>These days I'm married and have a social life. My burning enthusiasm for technology hasn't waned a single iota, but now I realize that there's more to living than technology.</p>
<p>Balance is a good thing, as is knowing what's actually important and where to spend your time and energy in the service of adding the most value.</p>
<p>Avdi Grimm, a technologist whose work I admire, wrote a great <a class="reference external" href="https://www.rubytapas.com/2017/01/18/five-reasons-refuse-write-software-deliver-screencasts/">piece</a> about the buy versus build dilemma recently. After substantial time and effort, he ended up using the same package I'm using to host this blog.</p>
<p>There are other aspects to my choice that feed into my personal situation. I don't have a lot of time to blog these days. I'm not complaining, I have a job I love, a <a class="reference external" href="https://www.amicablelodge.com/">Masonic lodge</a> I'm proud to be a member of, and a marriage that leaves me happier and more fulfilled than I have been my entire life.</p>
<p>So when I post, it's in the "in between" times. I started this post on the subway on my phone, picked it up later on my iPad, and am now finishing it relaxing in our living room with my lovely wife on our Macbook Pro while she reads. Wordpress makes this a breeze. It has a super slick authoring interface that lets me compose right in the browser. It does grammar and spell checking by default, and automatically saves drafts so I don't have to worry about losing my work if my laptop dies or I have to stop for a real life intrusion.</p>
<p>This is not in any way an indictment of <a class="reference external" href="https://blog.getpelican.com/">Pelican</a>. As a matter of fact, Pelican was a real delight. From a software perspective, its code is clean, readable, and incredibly easy to bend to my own nefarious purposes. When I'd decided it was time to admit that it wasn't working for me, I decided I wanted to build a <a class="reference external" href="https://github.com/feoh/peliword">converter</a> to mirror the posts from my old blog over here on wordpress.com. It was a great side project and I enjoyed building it quite a bit. In addition to the stellar code base, the <a class="reference external" href="https://blog.getpelican.com/">Pelican</a> community was incredibly helpful, answering all my questions and taking an interest in why their tool wasn't working for me.</p>
<p>Ultimately, my decision came down to recognizing the way I like to work, and where I wanted to put my effort. It's not about <a class="reference external" href="https://blog.getpelican.com/">Pelican</a>, it's about me.</p>I love you Pelican, but I'm struggling.https://www.feoh.org/posts/i-love-you-pelican-but-im-struggling.html2017-01-23T00:00:00-05:002017-01-23T00:00:00-05:00cpatti<p>Happy 2017 all!</p>
<div class="line-block">
<div class="line">A little over two years ago, the Wordpress instance I had been "maintaining" to run my blog was hacked by a bunch</div>
<div class="line">of script kiddies.</div>
</div>
<div class="line-block">
<div class="line">Not like I'm excusing them or anything, hacking someone's hobby domain feels rather like walking into someone's</div>
<div class="line">yard and, if you'll forgive me for being crass for a moment, smashing the garden statues and relieving yourself</div>
<div class="line">in the pool, just because you can. However, I was doing a really crappy job of securing my site.</div>
</div>
<div class="line-block">
<div class="line">I had set it up several years before on a Linode. I wasn't a "Devops" professional at that point, so I really</div>
<div class="line">had no idea what I was doing, and I made every mistake in the book.2017</div>
</div>
<div class="line-block">
<div class="line">Static blogging was becoming all the rage, and my Podcast.<strong>init</strong> co-host was using</div>
<div class="line"><a class="reference external" href="https://blog.getpelican.com/">Pelican</a> so that seemed like a good choice. It was very straight forward to set</div>
<div class="line">up, and I could run it on a much simpler set of infrastructure. No database, no complex interactions between</div>
<div class="line">web server and interpreter, just a simple instance running a webserver. That's all. Super easy to lock down.</div>
</div>
<div class="line-block">
<div class="line">Being the major nerd that I am, I did automate the whole thing using Chef. You can find the recipes</div>
<div class="line"><a class="reference external" href="https://github.com/feoh/pelican_blog">on my github</a>. I even had it set up so that chef would handle updating</div>
<div class="line">the site when I checked a new post into git.</div>
</div>
<p>And, from an infrastructure perspective, it runs like clockwork.</p>
<div class="line-block">
<div class="line">More recently, i was able to even eliminate the instance and just serve my blog from</div>
<div class="line"><a class="reference external" href="https://aws.amazon.com/s3/">Amazon S3</a>.</div>
</div>
<div class="line-block">
<div class="line">But there's more to any system than the infrastructure that runs it. It has to be usable in a way that fits the</div>
<div class="line">needs and workflow of its users.</div>
</div>
<p>Through no fault of its own, I am beginning to wonder if Pelican doesn't fit my needs.</p>
<p>It's a fantastic package for all the reasons I outlined above, but I'm just not posting like I used to. Why?</p>
<div class="line-block">
<div class="line">When I thought about it, I realized that I used to do a ton of blogging in the "in between times". On the go, on</div>
<div class="line">vacation, or in bed at night while my wife read. Wordpress has some superlative tools for this. It has a really</div>
<div class="line">nice web based authoring interface, complete with draft capabilities, rich markup, and the ability to effortlessly</div>
<div class="line">integrate images and other media into my posts.</div>
</div>
<div class="line-block">
<div class="line">I've tried doing this with Pelican. either using <a class="reference external" href="https://omz-software.com/editorial/">Editorial</a> - the incredie</div>
<div class="line">programmable editor for IOS (You can write Python scripts to do text processing in IOS from your editor, how</div>
<div class="line">cool is that? :) or using Panic's outstanding <a class="reference external" href="https://www.panic.com/prompt/">Prompt</a> SSH client to connect to my</div>
<div class="line">cloud based development box and do the editing and publishing from there.</div>
</div>
<p>And, it works. I have successfully done it. But I certainly wouldn't call it convenient.</p>
<div class="line-block">
<div class="line">So, I'm looking into other options. At this point, I'm wondering if I've learned all I can from running my own</div>
<div class="line">blog, and if maybe I mightn't be better served moving to one of the hosted services like</div>
<div class="line"><a class="reference external" href="https://wordpress.com/">Wordpress.com</a>.</div>
</div>
<div class="line-block">
<div class="line">I'm certainly open to other ideas though, I do enjoy the simplicity of static blogging, but making it harder than</div>
<div class="line">it needs to be feels like shooting myself in the foot.</div>
</div>
<p>Does anyone have any thoughts or ideas? I'd love to hear from you if you do.</p>Oh Wordpress, I love you but you make it so hard...https://www.feoh.org/posts/oh-wordpress-i-love-you-but-you-make-it-so-hard.html2015-05-21T11:16:00-04:002015-05-21T11:16:00-04:00cpatti<p>It feels like there are new security issues around WordPress every week.</p>
<p>Admittedly, the fact that WordPress automatically updates itself helps <strong>a lot</strong>, but it does lead one to wonder if a simpler solution might make more sense.</p>
<p>I really like the idea of a static generator tool like <a class="reference external" href="https://blog.getpelican.com/">Pelican</a>, but also really enjoy blogging from my mobile devices with tools like <a class="reference external" href="https://blogsyapp.com/">Blogsy</a>.</p>
<p>One friend suggested using Pelican, and using Github's built-in editor to create the Markdown, so I suppose I should explore that.</p>
<p>What I would <strong>really</strong> love to see is a solution where I could compose on my mobile devices in Markdown, then somehow get those changes checked into Github so I could statically generate my blog later from a computer.</p>
<p>Apparently, I want everything :)</p>
<p>A middle of the road solution might be to simply give up and let <a class="reference external" href="https://wordpress.com">Wordpress.com</a> manage my blog, but I think it's helpful to keep some skin in the game and run my own site given that I build infrastructure for a living.</p>
<p>If anyone reading this has any amazing solutions to the problems I pose here I'd love to hear about it!</p>Oh Swype, Where Have You Been All My Life?https://www.feoh.org/posts/oh-swype-where-have-you-been-all-my-life.html2015-03-21T10:40:00-04:002015-03-21T10:40:00-04:00cpatti<p>For years my Android using friends have been revving about <a class="reference external" href="https://www.swype.com">Swype</a>.</p>
<p>When tablets and smartphones first appeared on the scene, many of us were so awash in the glow of our shiny new toys that we overlooked a glaring weak point - text input.</p>
<p>In a stunning display of uncreative design, the keyboards for these devices were simply 'virtualized' versions of their mechanical counterparts.</p>
<p>The result seems like a regular keyboard, but bereft of the comparative elegance and efficiency of touch typing we are left in an incredibly unsatisfying state of perpetual hunt and peck. To add insult to injury, this ethereal target we're eternally stabbing at changes underneath us to suit the whim of the author of whichever app we're using.</p>
<p>With Swype, one simply glides one's finger from letter to letter spelling our words. Swype handles tedious details like putting spaces between words or after periods.</p>
<p>I could keep babbling, but suffice it to say it has been a life changer for me. Paired with <a class="reference external" href="https://blogsyapp.com">Blogsy</a>, my iPad blogging ttyl of choice, you may be hearing from me more often!</p>Trying out VimRepresshttps://www.feoh.org/posts/trying-out-vimrepress.html2012-02-09T16:48:00-05:002012-02-09T16:48:00-05:00cpatti<section id="vimrepress">
<h2>VimRePress</h2>
<div class="line-block">
<div class="line">In an ongoing effort to immerse myself in Vim as much as possible, I'm trying out a plugin called <a class="reference external" href="https://github.com/vim-scripts/VimRepress">VimRepress</a> - a fork of the popular Vimpress plugin.</div>
<div class="line"><br></div>
</div>
<section id="installing">
<h3>Installing</h3>
<p>Unfortunately, getting it running with MacVim on MacOS X Lion is a bit of a bear, but thankfully Paulo Poiati wrote an excellent <a class="reference external" href="https://blog.paulopoiati.com/2012/02/07/installing-vimrepress-in-macvim-osx-lion/">article</a> on getting the job done.</p>
<p>Basically, if you're using Homebrew, you have to rebuild your MacVim to use the i386 architecture, otherwise you wind up with a Python interpreter that doesn't match the bitness of your editor, and when MacVim goes to invoke Python to run the blogging bits in the plugin, MacVim explodes.</p>
<p>Also unfortunately, you can't use the Homebrew built Python or Ruby interpreters when building MacVim either, and have to instead use the bundled ones from MacOS (both sorely out of date. Who uses Ruby 1.8 anymore? :).</p>
<p>So I had to uninstall my Homebrew based Python and Ruby, install python-markdown2 into the OSX default Python instance, and now everything seems to be working just fine.</p>
</section>
</section>
<section id="living-the-vim-life">
<h2>Living the Vim Life</h2>
<section id="vimrepress-and-blogging">
<h3>VimRepress and Blogging</h3>
<p>That said, there are still some creature comforts that I miss from the awesome Blogging bundle in TextMate - silly things like giving me a drop down list with the possible Categories for my post and the like. Hopefully over time we can get those implemented in Vim land :)</p>
<p>On the upside, and this counts for a lot, is that I can now write in <a class="reference external" href="https://daringfireball.net/projects/markdown/">Markdown</a> again <<em>contented sigh</em>> I've missed Markdown terribly ever since I transitioned the blog from Typo to Wordpress many moons ago. It's a joy to write in, and really lets me think about the writing, not about a properly formed HTML element, which is priceless.</p>
</section>
<section id="vim-and-me-in-the-large">
<h3>Vim and Me In the Large</h3>
<p>For what it's worth, thus far the minor pain of transitioning to Vim has been entirely worth it, I've definitely seen a noticeable productivity boost, and for work-a-day code and configuration editing, I'm actually finding Vim to be vastly more powerful than TextMate simply because my environment is everywhere I want to be rather than being chained to using my Mac desktop for editing and resorting to chicanery like remote mounted filesystems via sshfs.</p>
<p>For years I'd read <a class="reference external" href="https://pragprog.com/the-pragmatic-programmer">The Pragmatic Programmer</a> with its mantra of "Learn <strong>one</strong> editor, and learn it *<em>well</em>" (paraphrase).</p>
<p>I always had mixed feelings about that. I'd taken pride through most of my career in being able to learn a multitude of different tools and adapt to whatever worked best in the local environment. That is in fact a really great skill to have, but there is definitely wisdom where editors are concerned to pick one and <em>live</em> in it 24/7.</p>
<p><a class="reference external" href="https://code.google.com/p/macvim/">MacVim</a> has helped tremendously with that. With it you can have your cake and eat it to. You can use the very same config files and plugins you use on your UNIX servers on your desktop, only wrapped in a superbly crafted Aqua GUI.</p>
<p>It's a continuing process, but thus far the work I've put in has been totally worth it. I would encourage anyone who's on the fence to give it a try and be strict with yourself about it. Pick a time when you can afford to take the hit and spend the time to get facile enough that you won't miss your old environment. You won't regret it.</p>
</section>
</section>