Archive for the ‘computers’ Category

.emacs in the Cloud   Leave a comment

As I mentioned, my preferred text entry tool is a fountain pen. That doesn’t work on a computer. While I use a variety of email clients, Microsoft Word, and browser-based tools, my text editor of choice is GNU EMACS. Part of it is an appreciation of its heritage–this software dates back to the Seventies. It’s my choice in the long-running editor war with (the far inferior) vi. It’s multi-platform: I can use essentially the same tool in OS X, Windows, LINUX, and other operating systems. Designed in the days of VT100 terminals, it is as happy at the command prompt as it is in a GUI.

I appreciate the power. It can be configured to support different programming languages, or automate some processes. Hypothetically, I could use it as my email client (though I haven’t quite mastered getting it right), or act as a web browser. Some have compared it to an operating system.

The key configuration file is called .emacs (“dot emacs”). People spend years tuning and adjusting their .emacs file. I recently realized I was pasting in chunks from the various files on various systems. I wondered: in this era of cloud storage, could I have one .emacs to manage all my systems? For that matter, could I also use cloud storage to be the location for my extension modules. The advantage of this approach is I can ensure the settings are the same on each machine. Ideally, this also means that any modules I install will be present as well. There may be some tuning per machine, but, for the most part, it will be in common.

I decided my approach would be to host my core .emacs and modules on Copy.com as my cloud provider, though I think it could be used with OneDrive, Google Drive, or a similar product. Each machine would have a local .emacs that would point to the shared one, which I’m calling dot.emacs, though it could readily be called shared.emacs or common.emacs. dot.emacs would set some common settings, as well as machine-specific ones based on the hostname (the name assigned to a given computer).

Most cloud storage services create a spot on the local hard drive to point the cloud files to. On my MacBook, it’s /users/mrguilt/copy; on the WorkTop, it’s c:\users\my.real.name\copy. On the cloud, I created a directory called elisp for all the EMACS files, including dot.emacs. A variable, cloud-dir, is set th point to the cloud elisp directory, so all the modules I use can exist there. The local .emacs looks like this:



;;;Creates a variable pointing to where the cloud directory appears on 
;;;this machine.
(setq cloud-dir "~/Copy/elisp") ;;;showswhere the cloud elisp directory is. 

;;;Hand-off to shared "dot-emacs" file (dot.emacs.el)
(add-to-list 'load-path cloud-dir)
(load-library "dot.emacs")

dot.emacs does the heavy lifting of settings. Notionally, I divided it into four sections or subsections:

  1. First, I wanted to test if the GUI version of EMACS was being used, or a terminal version, and make settings based on that.
  2. Within the GUI vs. terminal sections, I wanted to make some per-machine settings. Primarily, this is about fonts and colors, though other local settings may go into that section.
  3. Set some basic parameters, like what mode to activate for certain file types, whether or not I want backup files, etc.
  4. Set up and load any extensions, such as a twitter client.

The dot.emacs, which needs to be named dot.emacs.el, looks a bit like this:



;;;GUI vs. terminal, and per-machin settings
(if (display-graphic-p)
    (progn
      (print "It's a GUI!") ;;; I like to have some feedback, for testing among other things
      ;;;General GUI Stuff
      (tool-bar-mode -1) ;Turn Off Toolbar
      (set-fringe-mode '(0 . 0)) ;;;Turn off fringe mode

      ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
      ;;; Checking what machine I'm using, and setting fonts and other local settings
      (if (string= system-name "WorkTop")
	  (progn
	    (print "It's the WorkTop!")
	    (set-face-attribute 'default nil :font "Consolas")
	    (set-face-attribute 'default (selected-frame) :height 120) ;;;Make the typeface a bit bigger (120%). 
	    (set-background-color "#FFFFCC")
      (if (string-match "MacBook.*" system-name) ;;;Work-Around for 10.10's hostname bug
	  (progn
	    (print "It's the MacBook!")
	    (set-face-attribute 'default nil :font "Anonymous Pro")
	    (set-face-attribute 'default (selected-frame) :height 165) ;;;Make the typeface a bit bigger (125%). 
	    (set-background-color "#8a9ff2") ;;;Set colors

	    ))
      (if (string= system-name "WinVM")
	  (progn
	    (print "It's the Windows VM!")
	    (set-face-attribute 'default nil :font "Consolas")
	    (set-background-color "#A9F5A9")
	    ))
     )
;;; else 
;;; Things for terminal mode
	(progn 
	  (print "It's a Terminal"))
)

;;;Common settings--these are mine; you may have something different
(setq make-backup-files nil) ;;; I don't want backup files.

;;; Auto Longline Mode for .txt and .html (blogstuff)
(setq auto-mode-alist (cons '("\.txt" . longlines-mode) auto-mode-alist))
(setq auto-mode-alist (cons '("\.html" . longlines-mode) auto-mode-alist))

;;;Here is where loading extensions and settings go. 
;;;Twittering Mode
(add-to-list 'load-path (concat cloud-dir "/twittering-mode-3.0.0"))
(require 'twittering-mode)


Adding machines is as simple as adding another if-then block.

One question might be, why not put local settings, like colors and fonts, into the local .emacs file. In fact, I had a note in the comments of my dot.emacs file asking that very question–my initial implementation became as much a game of “can I do this” as a practical event. Recently, the wisdom of putting local settings in the common file made sense: my WorkTop hard drive needed to be reimaged. I was able to sett this back up by simply copying the .emacs, as written above, into the proper place. In effect, all my systems also have the same local .emacs file.

I’m not sure if everyone has a need for such a crazy configuration, or uses as many different systems as I do. However, I think it speaks to the power of the EMACS that it can accommodate a shared configuration file.

Posted 2015-03-13 by Mr. Guilt in computers, Geeky

Connecting Digital Items to Analog Notes   Leave a comment

There is a growing community of folks who prefer, to varying degrees, analog tools, such as pens, paper, and pencils. Lots of people are sharing ideas, be it Sketchnoting, Bullet Journals, and blogs such as The Cramped or, appropriately enough Write Analog. I have several hypothesis as to why. It may legitimately be a way some folks can think and focus. I know I have those tendencies. As with distraction free text editors, for some people, obsessing over tools is a good way to feel like you are getting something done while avoiding the task at hand. Finally, some folks simply enjoy old-school office supplies, and, in a world which is increasingly paperless, want to find a way to use these tools in their day-to-day work, rather than simply admire them.

However, much of my life these days tends to exist in the digital realm. I know my Outlook inbox has a lot of mail in it, in part because it has an attachment or link to a SharePoint that I need to access. I keep both my professional and personal calendar online, and occasionally make a pass at getting the whole household on one system. Much of the information I generate tends to wind up stored as ones and zeros.

This spills over into my journals and notepads. My handwritten activities often bounce between things that come from my head (which is put on paper) and things online that relate to it. For instance, something I read in a blog post will spawn an entry in a journal. Or, I might take a digital photo of a whiteboard that I want to associate with the notes (but, at the same time, share with my team). Creating these connections is the challenge of analog tools in a world that want to be paperless.

Most of these sorts of things are either conventional web posts, or stored “in the Cloud,” using SharePoint, Evernote, or other cloud storage options such as Copy or OneDrive. What all these things have in common is the ability to point to something with a uniform resource locator, or URL. You may know this as a “web address.” This blog, for instance, is https://mrguilt.wordpress.com. That one is fairly simple, and could be written down in a notebook fairly easily. But, when you start to get to specific items, it gets long. The URL for my post about the Riverbanks Zoo is https://mrguilt.wordpress.com/2015/01/21/riverbanks-zoo-and-garden-in-columbia-south-carolina/. While relatively long, it is clear what it points to.

However, you have to write down the URL exactly for it to work, and then type it into the address bar of your browser exactly for it to work. URLs can be tricky this way. Evernote is a good place to stash a picture of a whiteboard. However, a share URL from there is quite cryptic: http://www.evernote.com/l/AAFdTwhp225H97wlIADxiTP3CJWPZiBVCfY/–and one wrong character (even the wrong case) can throw it off. Microsoft SharePoint is commonly used to store and share files in the corporate world. However, its URLs are even longer and more challenging: https://services.bigcorp.com/sites/Portal/Office/Division/Shared%20Documents/Data%20Center%20Space%20--%20Cincinnati,%20Ohio/A%20Subdirectory%20Power/Really%20Important%20Spreadsheet%202015.xls. There is no way this can make its way reliably into the analog word, much less the return trip.

ME Journal PageThere are a few products out there that try to bridge this gap. One example is the Quo Vadis Multimedia Enhanced journal. I won one over the summer, and played with the system a bit. The basic journal is nice. Mine is just shy of US letter size, and filled with Clairefontaine paper–the same used in my beloved Rhodia pads. This means it is great paper, and the very definition of “fountain pen friendly.” As a notebook, there is nothing to complain about.

What makes it unique is that, on each page, a QR code is printed. With a SmartPhone app, you can scan the code, and attach and view digital objects to the page. The objects can include video, audio, pictures, files, or links. The app is a bit quirky, with an awkward interface, and periods where I have to reset my password. It does an OK job capturing and storing items. Unfortunately, a code I scanned a few months ago doesn’t show up in my “library” (though scanning the code gets me to to item–strange). Also, it is somewhat of a dead end. I can’t share things out of it, and it doesn’t link to more common tools. I could muddle through with it, if the overall system held value.

There are other flaws as well. There is only one QR Code per page. On some pages, there may not be anything to link to, which, at worst, makes the QR Code meaningless. On other pages, I might want to make multiple links. Further, I’m tied into using that notebook, or ones like it. I couldn’t use other notebooks, nor can I tie it to other documents, such as a map or brochure. The pre-printed code doesn’t offer the flexibility you might need or desire for an analog/digital system.

StickyBitsThere was a service called StickyBits that was a similar implementation of this idea, but enhanced the flexibility of the system. Rather than having the QR Codes pre-printed into a journal, you could either print or purchase stickers with the QR Code on them. When you needed to make a connection, you could put the sticker in your notebook, scan it with their app, and then create what you needed. At the time it was released, I didn’t really think through the utility: I played with it for a day or two, then let it fade. Unfortunately, it has since joined other Web 2.0 start-ups in, well, closing shop.

I actually started to consider building StickyBits on my own, doing some coding in Perl and HTML. It seemed like a major undertaking, and it’d be something just for myself–after all, one start-up already failed with this concept. It is a bit of a niche intersection of folks who use analog tools and digital tools and want to somehow create interoperability. Simply put, I had better things to do with my time.


Short URL Mark-UpThen, I read an article, “Connecting Your Paper Notebooks to the Digital Age,” which made me realize that I was out-thinking this. Rather than being dependent on the QR Code, it leverages a URL shortener, such as Bitly. By assuming that there is the same domain and server name (the http://bit.ly part), the shortened URL is written down with some demarcation (he uses greater than/less than symbols). The article suggests also underlining upper case letters for clarity.

Using this scheme, I would write “<1HGmax9>” in my notebook, and it would point me to the article that inspired this. The author suggests Bitly, as you can forward your own domain to it, but it doesn’t sound like a hard requirement, so long as you can use the same URL shortener. Multiple URL shorteners could be used with a different demarcation symbol–brackets could be used, for instance, for my company’s in-house shortener.

This scheme has several advantages. First, there is no need for a sticker or something printed on the page. You simply write it on the fly wherever it is relevant. This also means you are not tied to a specific notebook-or even a notebook. A Post-It, margin of a magazine, or any other relevant place can be used. The short URL frees you from having to use a specific application or a device with a camera. This is quite a flexible solution.

One other advantage is from other features of the URL shortener. Most URL shorteners can allow customization of the short URL. A meaningful title, such as “DataCenterMap” could be used. In addition to making it easier to write down, it makes it easier in other contexts. I have even been taking greater advantage of this in my emails that I don’t expect to wind up on paper, as I think it makes it more obvious what a given URL is for.

My quest to link my beloved pen and paper to the omnipresence of digital media has taken me from specialized tools to a very simply DIY approach. In doing so, I’ve come to the conclusion that this will be a niche interest, and each individual will probably find an approach that best suits them. I am doubtful that specialized products, such as the ME Journal, will find much success. But I have found that there are ways to achieve the end which offer the flexibility I desire in the analog world, and can extend their utility in the digital one as well.

ISP Down Two   Leave a comment

About fourteen months ago, my Internet Service Provider (ISP) had a multi-day outage. Caused by a break in their fibre and no redundancy, my ISP was down for about three days. While they have had a few smaller outages, it started to stabilize. Their customer service ran from apathetic, to hostile (once, I got yelled at because of how I tried to explain how my name is spelled).


It is the twenty-first century, not 1996. Internet access is no longer the domain of a few quirky geeky, but has become woven into much of our daily lives. In my opinion, ISPs should not be having multi-day outages in 2014.

My ISP had their second outage this week. It started, for us, last Wednesday (April 24). A call to tech support–just under the wire of their closing time (7 PM)–told us it would be Friday or Saturday. Friday morning, they were saying Saturday morning. They were not explaining what was going on beyond describing it as a “fibre outage.” I tried again on my way home from work: the new estimated time to restore service was Monday.

I walked in the door, and told my wife we needed to change ISPs. By 10 PM, after some family time and supper, I was on the new ISP. It took longer to get my wireless access point talking to the new modem than anything else. Fourfold faster speed for roughly the same money, and better support hours.

Out of curiosity, I tracked the outage. On Monday, during the few times I could get through, I was told they were no longer quoting an estimated time to be back up. A reporter reached out to me for details for a “consumer alert” story. I canceled earlier today, and have heard that they are back up as of this writing (9:10 PM).

We’ve made a few decisions over the years to make switching easier. Our personal email is no longer tied to our ISP but online services like GMail. Our household network is set up in such a fashion that the modem can be swapped out at will (give or take a compatibility glitch). Planning not to be tied to a single provider was a wise decision.

As for our old ISP, I’m not sure what to think. Are they making the investments in their infrastructure to be a viable Twenty-First century ISP, or are they risking a long decline?

Old Betsy and Dot-Matrix Printers   4 comments

Old BetseyMy first job supporting computers was at the library at Miami University. I was responsible for a number of computer-based indexes to periodicals and journals. During my time, a computer-based card catalog–an innovation at the time–was rolled out, and expanded my scope. My job was to make sure all the terminals were functioning, as well as provide instruction to the users as to how to use the systems. At this point, in the early Nineties, computers were no where near as ubiquitous, and the technology was still relatively basic. All of the systems were dumb terminals, hooked to a central server.

Among my duties was the care and feeding of the printers. In those days, inkjets weren’t common, and laser printers were quite expensive. To print the references you needed, the cheap solution was a dot matrix printer. In the case of the library, it was scores of Okidata 390s–you can still buy them today.

These really were reliable printers. Where my inkjet seems to take several moments of priming and humming before printing the first line, the Okis just went. When I consider the environment they operated in–a lot of start-and-stop print jobs in a publicly assessable area–the tractor-fed paper rarely jammed. Even then, it was usually due to a fellow student attempting to “fix” something. I’d have to lug a new box out to the card catalog every once in a while, but, for the application, the continuous feed paper was a perk. The ink lasted forever, and when I did need to replace it, a new cartridge just snapped in. There was no “aligning printhead” or other action on the printer. One person in my role could typically take care of the estate with a five minute pass every hour. Everything was just simple.

Granted, you couldn’t print graphics on it, and, if you wanted any speed at all, you were limited to the 3-6 typefaces built in. But, for just printing data, they got the job done reliably. Sometimes, when I have to pace back and forth between my desk and the office LaserJet, I wonder if it’s really worth what was given up.

I seem to not be the only one who feels this way. Over the weekend, I saw an Oki at a bookstore, lovingly tagged Old Betsy. The plastic clearly yellowing with age–it wouldn’t surprise me if it had been there nearly all of the store’s twenty-eight years. I pointed it out to my wife, and the clerk said that she was the most reliable printer in the shop. I absolutely believed her, and, for a moment, wondered if we had one kicking around our closet.

Customer Service Through Social Media   Leave a comment

I’m impressed by companies that give good customer service. There doesn’t seem to be a rhyme or reason to it: you see chains that have a reputation for superior customer service, and mom and pops that act as though they are doing a favor by being open. At the end of the day, it comes down to the culture of the organization, rather than size.

Social media has helped a lot more companies respond to their customers a lot more quickly. The other advantage, I think, is that the companies are getting better insight not just to large complaints that can make or break a company, but little annoyances that probably wouldn’t change the relationship negatively. Social media allows companies to interact with individual customers, and on issues that they may not feel the need to escalate to them. I’ve experienced it many times myself.

The first time was a few years ago, when I was having trouble with my Kitchen-Aid stand mixer. I made some grumbling on twitter–not that I saw it as Kitchen-Aid’s fault, but just an issue had to deal with. Within half an hour, I got a message from their twitter account asking for details. This lead to a phone conversation, which helped pin down what I was doing wrong. I don’t think I would have bothered to call on my own, and they wouldn’t have known there was an issue. But the fact that they could say “how can we help” definitely raised their esteem in my eyes.


A @Levenger Circa disk broke. #officesuppliesThis week, I had another incident. My disc-bound notebook is a blend of many companies’ products, thought the core is the Levenger Circa system. One Wednesday morning, I discovered the bottom-most disc had cracked in half. I have no clue how that happened, though I suspect it was somehow my fault. I noted that I’d need to go get a replacement, but, as is my way, griped about it on twitter.

Levenger noticed this, and inquired about it. I got the sense that it was a fairly uncommon occurrence. We exchanged a few messages, over the course of which they offered to replace the disc. By Friday afternoon, I had the replacement back in my notebook.

They certainly didn’t have to do that. They didn’t have to monitor twitter and respond to me. Any reasonable person could look at my broken disc and say that it was an accident that had nothing to do with Levenger. But the fact that they both monitor twitter, and were willing to replace my disc was definitely above and beyond the call, and makes me much more likely to do business with them in the future. I truly don’t think this would have come about in the absence of social media, and companies that know how to take advantage with it to interact with their customers on a one-on-one basis.

Think Before Clicking Send   1 comment

Our business runs on email. The problem is that it is very easy to say something in email that you might not say to someone’s face, especially if it is heated. Click send, and your angry rant appears instantly in front of them (and anyone else on the distribution). Worse: it can be forwarded globally.

There is one simple rule I have for email, that I share with everyone on my team: if upset, write the email, but don’t click send. “Save as Draft,” then take a walk. Work on something else. Ten minutes, an hour, a day later, come back to it and reread it. Odds are, you’ll re-compose it to be more civil.

And you may just get to keep your job.

Advice: Back Up Your Web Recipes   1 comment

Three years ago this month, there was a major outage at work. We had teams working more or less around the clock trying to first catch the issue as it was happening, then resolving it. It was not something in my area of responsibility, but my boss at the time wanted a member of his executive team on the call overnight. I drew two back-to-back near-overnight shifts.

The morning after the second shift, my last day before taking some PTO, I checked in with my boss as soon as I got into the office. He was British, and just returned from a trip to the UK. He offered me a piece of shortbread he brought back, which I gladly accepted–I was starving! I gave him my briefing, as well as some transition items for my PTO. He offered me another piece. “I was planning on it,” I said, as I took the cookie.

For that odd reason, I always tie the winter holidays to shortbread. The next year, a food blog I follow followed, “I Really Like Food,” published a recipe for chocolate chip shortbread. It entered the Christmas goody rotation, along with pralines and other goodies. We’ve started to make a variety of treats to give to teachers, our offices, and family. I started that process this weekend. since they don’t have nuts, I wanted to make sure to make the shortbread.

I had forgotten that “I Really Like Food” is no more.

New Shortbread CookiesThis happened with the peppered queen, but, between having it in my head and Google cache, I could recreate my version of it. All I had was blog post where I listed the ingredients. Google cache was no help, and it wasn’t in the Wayback Machine. I looked at recipes for shortbread until I found one that had the same list of ingredients. they seem to be as good, though there may be too many chocolate chips in them. Yes, there is such a thing.

I texted my wife about the situation. She texted back to make sure I had captured the Word War Two Oatmeal Molasses Cookies, which are our new favorite. I had just finished typing it in the format I like.

“Print it out & put it in your

binder, just in case your hard drive dies.” She takes cookies very seriously.

That’s the key lesson. The internet is a great source of all sorts of information, and it’s a great place to store you material. On two occassions, I’ve blogged about the risks of storing things in the cloud. I suppose a related risk and lesson, is to assume may be true of any information in the cloud. If it’s something that’s important to you–be it a recipe, a manual to a device, or something else, grabbing a local copy is wise. You may not be able to get it back.

Posted 2013-12-16 by Mr. Guilt in computers, food, Internet, IT Opinion, rant

FlickrExporter PEBKAC   Leave a comment

PEBKAC on FlickrExporterAlmost all of the photos on this blog are hosted on Flickr. You can click on them, and get taken to the photo page there. A couple more clicks, and you can find the original size of the image, as opposed to whatever it happens to be scaled to here. As noted, I use Aperture for post-processing of my images, and a tool called FlickrExport to upload them to Flickr. This allows me to upload them directly from Aperture, get them into sets and groups, etc.

Today, I wanted to put a photo of Nubo as my wallpaper on my work laptop (“WorkTop,” as it is pseudo-affectionately called). I went to the page in Flickr, then to show all sizes, so I could get one that would most likely fill the screen. The biggest one was 640×480–way smaller than I expected from a 16 megapixel DSLR. I poked around a bit, and all the last several rounds of photos were like that.

It dawned on my what happened. Sometime between World Rhino Day and our trip to Rowe Woods, I think I was troubleshooting something. I set the upload size on FlickrExport to 640×480, and never set it back. In other words, I had a PEBKACK issue–Problem Exists Between Keyboard and Chair.

I reset the setting, and did a test upload–that was it. It is going to be too much work to re-upload correct sizes to Flickr, then update the blog, so it will stay this way. If there any photos you want better than 640×480 resolution, let me know. I still may go back and upload full-size versions, as I just like having the right one up there.

One thing is for certain: I will double check that from now on!
Nubo, and his Tail (16:9)

Posted 2013-11-18 by Mr. Guilt in computers, Geeky, Photography, Random Tale

Red Squiggle Dependency   Leave a comment

Red Squiggle Dependency
Don’t want to read my handwriting? See the Microsoft Word version.

Virtual Cat Name for Mac OS X 10.9   Leave a comment

As I previously mentioned, Apple decided to change their standard, and not use a cat name for the latest version of their desktop operating system, OS X.

In my opinion, OS X is the best desktop version of UNIX. It can use standard tools at a prompt when you want to geek out, but has good tools, such as a native version of Microsoft Office. Using cat names for this was a great way to show the power of the OS, while also creating awareness around our endangered felines.

10.9 was released yesterday (October 22), and I think we can do something about this. I’m calling for OS X using cat fans to help select the “Virtual Cat Name.” I’ll leave voting open until Wednesday, October 30. On November 4, I’ll reveal the winner, and, we’ll all start referring to “10.9 felid” as opposed to…whatever that place in California is. I’ll even make a wallpaper.

Please vote below, and tell your friends!