Emacs and The Second Coming of TextMate

A text editor is one of the most important tools of a sysadmin, software developer, documentation and blog writer. So, after switching from Linux to Mac a few years ago, I immediately starting looking for a good editor software. On Linux, I had been using Emacs for many years, but its Mac versions available at that time didn’t convince me. They rather reminded me of the reasons for which I replaced my desktop OS after all. It didn’t take me long to find TextMate and it became one of the first in the long line of applications I purchased in my Mac life. And I’ve been using it daily ever since.

TextMate is a very capable editor and its add-on “bundle” concept makes it easily extendable. There are bundles for every common programming language, for using version control systems and even a bundle for blogging that lets you not only write and preview your writing but also publish your finished post.

But there is also one concern that’s been bugging TextMate users for a long time now: the author is working on version 2 of the software. At least that’s what he uses to claim on his blog every few months. Recently, Watts Martin must have lost his patience and in “Text Editor Intervention“, he makes a compelling case that there are proven alternatives to eternally waiting for the Second Coming of TextMate:

But in the meantime, you gotta get work done. Either pony up money for BBEdit, pony up time for MacVim (or Emacs), or stick with TextMate.

Shorty after reading his thought-provoking post, I came upon Joshua Timberman’s blog post “Switching to GNU Emacs“. I did a short search and it almost looks like there is an Emacs renaissance going on.

As you may already have guessed, I decided to give it a try and join the movement. Why?

  1. Back in the days, I’ve been using Emacs for almost everything that had to do with plain text. I know I’ll be able to accomplish all the tasks for which I’ve been using TextMate.
  2. GNU Emacs has been ported to Cocoa in the meantime, so its UI runs natively on Mac OS X.
  3. After installing Emacs, I realized that all of the important Emacs keyboard shortcuts are still stored in my muscle memory.
  4. Getting Emacs fit for a variety of tasks is easy with pre-configured packages like the Emacs Starter Kit.
  5. The effort of customizing and extending probably is more effective if put into Emacs. As Watts puts it:

Why do I recommend three stodgy old warhorses? Well, any editor that has a still-growing community after two decades is probably doing something right.

And finally, as GNU Emacs is the embodiment of Free Software, I certainly won’t have to pay another license fee for the next major version.

Repentantly, I return into the arms of the Church of Emacs.

The Barking Seal: Fun with date

Over at The Barking Seal, I found a nice demonstration what’s possible with the date command: Fun with Date.

Especially, the handling of Epoch timestamps and relative dates is very useful.

Weeknote #49

Over the seas in all degrees

Markus left yesterday in direction of the Pacific south east. He’ll take a few days off. Until July, actually. Taking the opportunity to get away from the usual life is a great idea in my eyes and I wish him all the relaxation and inspiration he’s hoping for. I wonder, though, how long it will take until the urge to code on some ideas kicks in. I guess I’ll find out on Twitter or his vacation blog.

Private yes, but professional?

We’re a distributed company and not all of our work is done by the owners or employees. We also hire freelancers and last week, I gave delegating some work to a VPA a try. I contacted Strandschicht and they assigned me an assistant from Romania. He speaks good German, as Strandschicht requires for all their VPAs. I have to concede, though, that his first job left me only 80% satisfied. First, he promised to do the work on Friday but when I contacted him on Saturday, he apologized that he had to do another client’s job first. He then actually got to work on my assignment on Monday. Overall, he did well. Where he left a bit to desire was where he came back to me with questions that were already answered in my instruction email. And, most annoyingly, in three of the emails I had him write to our clients, he forgot to change the salutation. Big doo-doo. I consider people’s names very important and just can’t accept that three clients got greeted with “Dear Mr./Mrs. -“. I’ll still have to decide how to proceed from here. (Please, tell me in the comments how you would!)

Office space

I’m writing this weeknote in the “S-Office”, as I lovingly call the Starbucks in the Freiburg city centre where I spend a lot of time working (Mayor, of course!). Although I have a great workplace at home, I need a bit of variety from time to time. And when Amalias’s home all day (like yesterday, to recover from a cold), there’s not much working without disturbance any more. Unfortunately, Starbucks isn’t that quiet a place sometimes, either. Every now and then, there are days when all tables are taken and patrons are bustling in and out. Even my trusty Etymotics earphones can’t provide a complete shield against the flurry then. That’s why last week, I signed a contract with a company that rents office space on an hourly basis. All I have to do is to reserve a room in advance on the online calendar. Yesterday, I used the office for the first time and really, it’s great to have a quiet space to retreat to while at home, three kids are trashing the place while their mothers are having tea.

International business

When we started DrupalCONCEPT last year, we targeted our domestic market first. Now, business gets more and more international. And it’s not only our Drupal hosting clients that are distributed over the world, our IT infrastructure is increasingly, too. A growing number of clients demands minimal website response time regardless where in the world their visitors are coming from. The standard solution for this is a Content Delivery Network (CDN), a network of globally distributed servers that deliver content to the website visitors most nearby. Most CDNs work on static content only, but we need to deliver page content locally, too. That’s why we decided to build our own infrastructure: a network of caching servers all over the world. This week, for example, we’ll deploy a caching satellite in Brazil. It’s a great example for our main business objective: Delivering top-of-the-line IT solutions.

Weeknote #46

Beaurocrat week

This week, I spent most of my time doing taxes and other paper work
like applying for the extension of my founding subsidies. I hate to do
that kind of stuff and because in those cases I tend to procrastinate,
I’m running late once again.

Solar motivation

On a positive note, the weather seems to get better. On wednesday, the
warm sun certainly lifted my mood. I’m not very much influenced by the
weather, but this glorious sunshine makes even me move my lazy behind
outside.

Checking out the neighbors

At Drupal Developer Days in Brussels, I met two other guys working at
hosting businesses; one from Belgium, one from the Netherlands.
Following my talk about “Developer-friendly Drupal Hosting”, we picked
our brains over some coffee how we could do business together. This
tuesday, we followed that up with a Skype chat where we worked out the
first baby steps of our “coopetition strategy”. More Skype chats/calls
are coming. It’s a new experience for me to do business with
competitors and I find it interesting and thrilling.

Also on tuesday, we got our first order from Italy. Man, it feels so
great that our plan to expand into Europe this year already becomes
reality, even without us doing marketing beyond an English-language
website.

This also means we now have to add international payment options. And
judging from my initial web searches, it will consume a lot of time
and effort to find the right Payment Service Provider.

Local exile

I found a place in the city that rents office space on an hourly
basis. This could be a nice alternative when I’d like to get out of my
homeoffice but spend my worktime in a more quiet place than a crowded
coffee shop. (And the hourly rate is cheaper than a Venti Chai Tea
Latte…)

On thursday, Amalia got sick and had to be picked up from childcare at
11:30. Even when her mother’s around, it’s hard to share the place
with a child that’s too small to understand the differentiation of
work time and play time. In those cases, a few external office hours
can come in handy.

Packing light

Just before the Drupal Developer Days in Brussels, I had finally
exchanged my 2007 Macbook Pro 15″ with a 11″ Macbook Air. Working with
it really is fun, you can read about that in many blog posts all over
the web. As a bonus, I got my Aunts & Uncles leather bag out of the
closet again. For carrying the weight of the Macbook Pro with all the
auxiliary gear, I always preferred a laptop backpack. Now, with the
leather bag, I sometimes wonder if I perhaps forgot the Macbook Air at
home…

Weeknote #44

You’re feeling as if time crawls like syrup? Get sick while having a heap of work and watch time fly by! That what I did over Christmas. I got a head cold and couldn’t get any of the tasks done that I had planned to work on during the quieter days. It was really hard for me to accept that I would have to tell clients that we still weren’t ready for their projects after two weeks of downtime. But I also knew that forcing it would result in mediocre work and maybe me getting more seriously ill, so I kept my feet still and tried to recover as fast as possible. Of course, when I finally got back in business, many tasks had transitioned from “important” to “important and urgent”. That’s why January became a month of hustling. With the most pressing projects done now, we got back in control of our workload, so I’ve got time to write another weeknote.

Action days

An article on GigaOm describing the concept of an “action day” caught my immediate interest in December. Actions days foster results-oriented working, engagement and motivation in teams by an hourly exchange about achieved results and the next tasks about to get done. Our first try at an action day went so well that Markus stated “It almost feels like we sit in an office together”. So we decided to have an action day every Wednesday.

By the way, we didn’t use a teleconferencing solution to report our results, but instead a feed created especially for this on our company site on Yammer.

Social days

Like last year, visiting conferences and, ideally, giving talks there will be one of our most important marketing efforts this year, too. In Open Source services, nothing beats personal contact and the opportunity to prove one’s competence and answer important client questions at the same time.

Friday, Markus and I will be on trains to Brussels for the Drupal Developer Days where I will give a talk about “Developer-friendly Drupal hosting”. In this talk, I’ll try to explain how DrupalCONCEPT differentiates itself from the many hosting services on the market. We’re also a Silver sponsor of the weekend. (Probably the only one not appearing on the print materials because we couldn’t procure a vector version of our logo…)

I also happily accepted the invitation to give a talk about systems automation with Chef at the Open Source Datacenter Conference in April. All of our servers (of which we got more than 40 already) are maintained from a central Chef instance which lets us reduce the time spent for repeating system administration tasks to a minimum. Without such a system, I would do system administration all day and wouldn’t have time for any of my business tasks.

Since I’m going to do some traveling this year, I really appreciate how TripIt makes it easy for me to put together a travel itinerary. I just forward my DB Online Ticket to them and they create a nice overview with all train connections and reservation information. Then I add my hotel reservation and find everything I need in one place, which is the TripIt app on my iPhone. Very handy!

Vacation days

Markus is going to go on a big trip from March to July. In February, he’ll finish his running projects so there should be no loose ends when he’s off. While he’s hopping from beach to beach, I’ll keep the stations manned, dreaming about where I’ll disappear to after he comes back.

Two very different acquisition notices I received today

Dimdim:

Dimdim has been acquired by salesforce.com. Your free Dimdim account will remain active until March 15, 2011. After that date, you will no longer be able to access your free Dimdim account.

Please see the Frequently Asked Questions (FAQ) for additional information.

We appreciate your understanding, and we thank you!

Pursuant to the Dimdim Terms of Use (the “Agreement”) governing the use of Dimdim Inc.’s (“Dimdim”) Site and Services (as defined under the Agreement) by you (“You”), Dimdim is hereby exercising its right to terminate Your Dimdim Account and the Agreement in its entirety. Dimdim will continue to provide Services to you until March 15, 2011. Following March 15, 2011, neither You nor Dimdim shall have any further rights or obligations of any kind under the Agreement, including the right to access the Site, or receive or use any Services. Dimdim thanks you for your business, and wishes you success in the future.

Socialite:

Socialite

That notice above makes me glad I never used Dimdim for serious work. The other one makes me reconsider giving Socialite another try.

Themed Christmas Presents

This year, my family chose theme packages as my Christmas presents:

My father invests into my startup business by feeding my thoughts.

And my brother seems to have noticed a certain trait of my personality…

I love my family. Thanks, Dad! Thanks, Tom!

Google Chrome Notebook. Made for stoics.

The Google ad for their new Chrome Notebook inspired me to keep using cloud-based services.

But I’m not going buy the device because even I would find those people coming by to destroy it all the time annoying.

Why is everyone talking about chocolate?

Img_0028

Weeknote 35

Wow, it’s already been 35 weeks ago that I officially started my full-time business, Freistil-Consulting. Most of those weeks were so busy that I didn’t bother to write my weeknote. Let’s give it a fresh start!

DrupalCONCEPT is running smoothly, more and more clients trust us to host their Drupal websites and we’re doing our best to give them a heck of a hosting experience.

We launched Apache Solr as a search engine extension to our server clusters this week, and it was an important milestone. With its high performance and high availability features, now including search, DrupalCONCEPT really became serious competition to Drupal hosting companies worldwide. I’m so very happy about the success of this venture! And I’m also happy that I found a business partner to share that success with — as well as the work, of course. ;-) Markus Heurung joined Freistil-Consulting in November and will be in charge of Drupal Projects and IT Training.

Since the year’s almost over, the next big news will come in 2011. We’ll spend the days up to the holidays working behind the scenes, improving, tweaking and getting more clients aboard.

And of course, there’s got to be the big strategy meeting where we’ll decide on the directions Freistil-Consulting will take next year. A day I’m very much looking forward to.