Mastery vs. Education

The society which scorns excellence in plumbing because plumbing is a humble activity, and tolerates shoddiness in philosophy because philosophy is an exalted activity, will have neither good plumbing nor good philosophy. Neither its pipes nor its theories will hold water. — John W. Gardner

 My friend Mike is making his own bows. From scratch. From rawhide and sinew and wood. He’s also doing his own bone inlay work, and while he could use a dremel or similar power tool to polish, cut, and fit the bone, he doesn’t.

He’s not doing this to merely do it as skillfully as possible to as high a degree of craftsmanship as possible, while doing it efficiently right now. He’s trying to make it to as high a degree of craftsmanship as he can, while learning and improving his knowledge of the art of making a bow from scratch.

He is forgoing the convenience of power tools to learn the craft better through patience and repetition.

He is actively seeking mastery.

It is humble work, but he revels in it, takes pride in it.

I bring this up because we, as a society, seem to think that just because a person talks like they’re educated and can drop references to various philosophers or operas, that the person in question is somehow better, more ‘educated.’

I grew up with this attitude, but one thing twelve years in the Navy taught me, among a bunch of motivated Navy nukes from all over the country just as smart as me, is that talk doesn’t matter when it is time to do, and that while smart people may talk educated, a lot of ridiculously smart, scarily competent people don’t bother to talk educated unless that’s the subject matter of the moment.

Some of them still sound like good ole boys from the sticks.

And some of the most book smart, “educated”-sounding people I’ve met have been completely worthless.

Mastery is independent of subject matter. It could be achieved in philosophy or history through extensive reading, in bowmaking, in plumbing, or in simply chopping firewood.

Achieving mastery, striving for excellence, is the education. Not the nature of the subject studied. It is an attitude, and one that must be lived. It must be humble, for one is not a master of all things.

This is doubly important to anyone in a service capacity – which ultimately, in any business you are. Yes, you will run into stupid people sometimes, but I always hesitate to refer to someone as stupid. Why? Because I’ve seen some ridiculously smart and competent people who were completely oblivious about my field – computers – and yet I could not find the time in my life to achieve the level of skill and proficiency they have at their profession.

Focus and Getting Things Done

Recently, talking with a friend of mine, he told me of a question he posed to many people. What is your philosophy in life? His was straightforward, but another one he relayed from a friend was “what’s important right now?”

This brought up the related thought that to do anything well, to master it, you have to truly focus on it. What you are doing is what’s important right now, until it’s time to do something else, and you should pour yourself into it 100%.

Then it hit me that one side-effect of time-management and task-management systems like the Franklin Covey planners, “Getting Things Done“, and “Autofocus,” wasn’t just to manage your time, but to allow you to focus on the priorities at hand. Writing down what needs to be done and filing it in a way that the tasks will pop up when it’s the time or place to do them allows you to stop worrying or thinking about what you need to remember or may be forgetting, and makes it easier to focus on the job at hand.

I had never considered it from the standpoint of applying focus to achieve mastery of a process or skill. Not only do they let you know what commitments you can make, and what needs to be done, but you can leverage the time spent in organizing your life to get what you’re doing done even quicker by taking advantage of the opportunity to focus on “what’s important right now.”

Just a thought.

Industry Trends and In-House Servers

Looking back over the last several years, several things have changed. One definite trend that has shown up over the last couple years has been that of smaller offices and businesses getting away from in-house servers.

I guess you can blame it on the “cloud.” Or at the very least, the fact that for many of the reasons people felt they needed a server, they are still better served by a “cloud” based service, or leasing one offsite.

What are the use cases? What are the pros and cons?

Most of my clients use servers for the following reasons:

  • Email (often exchange)
  • File sharing
  • Shared printers.
  • Custom, served applications (remote desktop or server-client programs like accounting or CRM applications)
  • User and security management

Now, to be utterly honest, when you look at the cost differential over the years, even factoring in typically higher oversight and support costs for in-house servers, you will probably spend more for hosted or cloud based services after three years than you will on an in-house box, but that doesn’t mean it’s a bad value. For one, many of the cloud-based services use standard formats that make it easy to get your data back out and migrate it elsewhere if needed, so lock-in is minimal. For two, though you may pay a few percent more, you usually have the option to quit at any time if flexibility is paramount. Last, unlike a typical small office somewhere relying on their DSL or cable provider, you can often get far more responsive and reliable connectivity to your services while out of the office than you do with an in-house server, without the added headaches of configuring firewalls or VPN’s.

Additionally, with in house servers, your data is absolutely yours, and always (unless stolen, you do keep a copy offsite somewhere, right?) available to you.

So let’s look at some substitutes for in-house servers.


If people are storing email in house, it’s almost certainly on an Exchange server. There’s a lot of good things I can say about the capabilities of Exchange, but given that 80% of what smaller companies use exchange for (email, shared calendars, delegation of email roles) can be handled by the free version of Google Apps, there’s not much reason to stick with Exchange just to have in your email.

If you really, really need exchange, there are also hosted exchange providers like Intermedia who, among other things, provide full Blackberry integration and wireless sync.

All of these are free, or at a reasonable cost compared to licensing and maintaining an exchange store, and they’re accessible from anywhere, on any device.

File Sharing

If you don’t have absolutely huge amounts of data, It’s possible to lease some space online using shared Dropbox or Jungledisk “workgroup” accounts, and then share your files with your office no matter where you are. Both allow you to access your files from the web in an emergency, and Dropbox even has mobile apps for the Android and iPhone. 

When it comes to backing up your data, Dropbox stores the last 30 days of changes to your files, while Jungledisk allows you to not only back up your shared files, but as many computers as you’re willing to cover by simply setting aside the space needed to cover your backup needs.

Speaking of backups, you also have Mozy, which allows you to create both local and remote backups of any computer or even server in your office, thus reducing the need for a server just for backups.

Shared Printers

Networkable printers are relatively cheap, and most network capable printers can easily be detected and setup using some variant of zeroconfig (Bonjour for macs, and downloadable for Windows). Most smaller offices don’t change printer setups that often, don’t need to manage user access or permissions for said printers, and don’t change the network often enough to justify buying a server to set up printer sharing. They also don’t have enough of them to need a central directory to find them all.

Custom Applications

In a lot of cases, server-client configurations are so network intensive that putting them on their own server is often a necessity anyway, and with VPN performance being totally unworkable, the best solution is often to bite the bullet and just run the program under terminal services for everyone. Again, this almost always requires a separate machine. 

At that point, checking out a hosted application provider like Trapp Online for a small handful of users suddenly gets much more attractive. Where reliability and availability are absolutely paramount (accountants across a number of states, etc., and needing to maintain operations even with local disasters and hurricanes), the availability and high grade internet connections of the better hosted providers justifies the higher long-term price tag for even larger numbers of users.

User Management

This is where hosted service still fail. While most of them are very good about letting you control security and user access, spreading out your services across a number of providers complicates administration, application, and tracking of passwords.

But then, if you’ve got 50 or more users, you probably still have very good reasons to need your own in-house server, including the employee base to justify it and a better ability to handle the IT overhead. You also will likely need the fine-grained control that buying your own servers gives you – even if only making it far, far easier to maintain security and antivirus software.

 Summing it All Up

For many smaller businesses, the advances of modern internet-based services, and the need for mobility and access to information even when not at the office make hosted or cloud solutions a great value when you consider the lower startup costs, and the gains in flexibility and power. It’s far from a universal fit, but keep it in mind.

My Experiment with Chrome

Chrome, is the rather nifty browser from Google that is also being used as the foundation of the “ChromeOS” based netbooks that will be coming out. 

In the past, I had used Chrome as an alternative to Safari when I needed to cross-check web rendering for building web sites, and more frequently, when logging into google-based accounts other than my main one, since Chrome does a better job of handling multiple windows for multiple google-based accounts. Otherwise, it was all safari, all the time.

Because of this behavior, and it’s faster rendering, I decided to give Chrome a shot as my primary browser. A serious shot.

So I moved all of my bookmarks over, and had at it. At first, all was well. In addition to the above mentioned advantages, I really liked how Command-clicking on nested links in my toolbar didn’t replace my window instead of adding new tabs. I also really liked not having to tab over to a separate search bar. 

I was enjoying it so much that I even went to the trouble of rearranging and slimming down my bookmarks.

You can almost hear the “but” coming.

First of all, there’s no way I can find or figure out to manually add a link to the default new-page “tab” view. It’s clumsy enough in Safari, requiring two windows, but it’s doable.

Secondly, the bookmark manager, while nice enough, just isn’t up to par with that in Safari, especially when you keep a running folder of “to look at” links that you regularly flush out. This is a matter of personal taste.

Thirdly – using Logmein (for several clients) effectively requires me to open up Firefox or Safari anyway.

Fourth – some pages like the app store management pages simply didn’t load quite right in Chrome.

Fifth – printouts did not get the web address posted into the header or the footer of the page like they do with Safari.

Sixth, while the plugin for 1Password generally worked flawlessly in Chrome, there were several sites that worked without hiccups in Safari that required me to disable features like auto-logon.

I could live without these features, but it was already a near-run thing, as the downsides began really encroaching on the reasons I really, really wanted to switch over in the first place.

So of course, Google decides that in the near future, for reasons of “openness”, Chrome will no longer support the video codec named H.264. They’re keeping Flash.

Yes, many in the geek crowd are aware that H.264, since it is not open-source, is subject to licensing terms and eventually, a possible royalty. But, as a result of the popularity of the iPhone and the iPad, almost anyone on the web serving video streams has their video encoded for H.264, while also wrapping it up in a flash player for computers with Flash installed.

Almost nobody, especially mobile devices like Android and the iPhone, support WebM or Ogg  that Google claims it wants to use (yet other video codecs that are theoreticallymore “open”).

So, in favor of “open-ness”, Google’s scrapping support for a video format that may have some encumbrances in favor of one who’s legal liability – while reasonably clean – is utterly unknown, and keeping support for a video and interactive programming system (Flash) that is utterly, totally proprietary and closed. This aside from how much of a utter resource hog Flash has historically been (in all fairness, it is getting better).

The practical upshot is, everyone hosting video likely will not be doubling their storage space just to support two video codecs when they can just keep their single codec and use flash for browsers like Chrome that do not support H.264.

And in the meantime, the very “open” standards that Chrome strove so hard to support (along with Safari and Firefox) will be undermined.

All by itself, despite how much of a bully Adobe has been with it’s single-handed control of the Flash format, I would not have cared enough to change. I don’t care about the politics of the company, I care about the best tool for the job, and in the computer biz, that changes monthly. Chrome is a great browser. There are plenty of people without my use case for whom it will continue to be a great, and preferred browser.

But as for me, I’m writing this out of Safari.

Tragedy, and Reason

A few days ago, on the 8th of January of this new year, we saw a tragedy that blew through the national news. The basic story: A madman of no discernible politics shot up a crowd, aiming first for a congresswoman who was out in public, meeting her constituents and shooting her in the head, and then gunning down a number of others. Among the dead was a 9-year-old girl, Christina, who was, ironically, born on 9/11/01 but seems to have packed quite a wonderful life into the intervening years. The congresswoman, Giffords, is currently recovering, though how far she recovers is still a great unknown.

Sadly, instead of honoring and reflecting upon our dead, the recriminations began flying, with many of the accusations pointing at the “angry tone” of “right-wing” rhetoric, and some idiots on the right pointing back at the left to lay blame above and beyond saying “it isn’t so.” Other’s have been inspired by the high level of emotion to propose legislation banning mere things that in and of themselves cannot act, while others have proposed to ban “violent” talk about politicians as if free speech itself were to blame.

Everybody needs to get a grip. At times blame needs to be assigned, but this wild fury of blame-throwing (and even some of the justified defensiveness) is specious and dishonors the lives and memories of the dead.

First of all, the ultimate blame lies with the person who made the decision to act, to not only carry a weapon, but to use it as an instrument of murder vice defense. With the man who decided to pull the trigger and unleash his anger with deadly force. As John Stewart pointed out, no matter how toxic you believe the political discourse is, blaming the actions of an arguable lunatic on said political discourse is simply irresponsible, and painting your political opponents as murderers secretly reveling and wishing for the death of their opponents hardly raises the level of discourse, no?

Many people my age may remember the old, cheesy “Chick” comic tracts – extremely fundamentalist comic strips that talked about how rock and roll was evil, etc. This was also the time period where the Dungeons & Dragons role-playing game was controversial in christian circles because, supposedly, it lead to satanism and insanity. And yes, Chick argued just that. Many of us argued then that nutballs were simply nutballs, and if they didn’t latch onto D&D they’d find something else. Jodie Foster, or the Beatles perhaps. That is a fundmental human truth that has not changed.

It almost makes my posting from the 1st seem prophetic. You can tell some things about a person by who claims to be a friend or admirer, but only so much, as no-one can control who admires them, or why. We sure as heck don’t blame the Beatles for Charles Manson. 

The real measure of a person is who positions themselves as an enemy (and why), and who a person mutually treats as a friend – in other words, the company a person chooses to keep.

Ditto our shooter this last Saturday. An incoherent loner, a ranting person who described himself as wanting a gold standard, hated government, burned the american flag, liked Mein Kampf and the Communist Manifesto, and was waging a war on grammar. His fellow students and teachers were terrified of him and thought him dangerously unstable. If he had politics, it was somewhere beyond anarchist into chaotic.

Blaming people of a political party or faction because a lunatic chose to like some aspects of their political philosophy, especially when he believes many things entirely antithetical to that philosophy, and was not an accepted member of that group, is intellectual dishonesty of the first order. Does anyone seriously believe that a flag-burning lover of the Communist Manifesto who rants on grammar is a right winger? Painting people who as a matter of moral persuasion strongly believe in protecting innocents like Christina Green as encouraging this kind of behavior is a similar level of dishonesty. 

Given his favorite reading material, some have pointed blame at the left. Does anyone seriously believe this nut job was legitimately a member of any grouping on the left? Even the extremely radical terrorists of the last century like the Weather Underground and the Red Brigades needed their members to be reasonably sane.

Again, assuming you care about the civility of political discourse, this blame-throwing does nothing but poison said discourse unless the actual facts support it, and they don’t.

And while we’re at it, let’s be honest with ourselves about the discourse. Historically, the recent discourse is fairly tame, and sets no real high-water marks. Look at some of the political cartoons from the last couple centuries. Some may also remember  “Hey, hey, LBJ, how many kids have you killed today.”

And if you do think that using “sights” is unacceptably martial for political maps, then targets, the things you’re shooting at, are as well. This refers not only to Palin’s map, but to DNC maps re: republicans,  as well as democratic maps “targeting” Giffords in the 2010 primaries. If your standard is that shooting metaphors are wrong, you can’t pick and choose who you enforce the standard with without being at best partisan. Don’t argue that “targets” are better than “sights,” and don’t argue that crosshairs are actually “registration marks.”

Ditto with signs over the last decade at rallies. If a sign saying a president is socialist or fascist is unacceptable to you, then it’s not an “interesting metaphor’ when applied to a president you hate. Ditto with hanging in effigy. Movies about the assassination of the president are right out.

If you have a standard for what constitutes acceptable discourse, please apply it evenly. Address the idea and the policies, but not the person. Don’t hold people at fault simply because you hate them or what you believe they stand for.

Today is not the day to go into depth about politics being a “war” of sorts, complete with “campaigns”, where people decide who gets to write the laws that ultimately get enforced at the point of a gun. But one point must be made: the beauty of our system is at the end of the day, no matter what the results are, everyone feels like their point was heard, and goes home to try again the next round.

For that matter, today shouldn’t be the day we sit and argue about who is to blame, and I shouldn’t have to give a lesson on logic, civility, reason and the pointlessness or worse of painting those you disagree with as gleeful psychotics and idiots. It’s a tragedy, and these things, sadly, happen. As far as I can tell, the congresswoman, and many who were shot were good people who deserve our respect. As John Green, father of Christina said in this heart-breaking interview, this is the price we pay for living in a free society, and it beats the alternatives.

Let’s honor that, and deal with the lunatic as the time comes. As for everything else, well, standards are not something you exempt your friends from any more than you do your opponents. Let’s have some decency.


Worked up a multi-level core data schema last night for storing and handling data, and wrote a loader to allow importing files into the data store, allowing me to provide default data without hard-coding it into the app itself.

Core Data is an interesting technology. It has some weaknesses compared to SQL databases – there are no “uniqueness” tests built in, and everything is in memory for large data sets which is a bigger issue on memory-limited devices like the iPhone – but it also provides an excellent wrapper for managing data without having to write a lot of code yourself.

There are actually a number of decent tutorials, including Apple’s own documentation, but it’s not a “beginner” topic, and I’ve found that the only way I could get my own head wrapped around it was to actually work with it, so there won’t be tutorials coming soon.


Transmit from Panic Software is my overall favorite FTP program, used to upload web pages to websites and do large file transfers across the internet. Cyberduck is also worth a look (and free), and Interarchy is also really a good program – though I was forced to stop using it due to unresolved issues (at the time) when accessing windows-based WebDAV servers. They’ve fixed those problems since. Since I’d already happily used Transmit for many years before that, and it currently fit my needs, I haven’t looked back.


Stellarium is a free “planetarium” program for your computer that allows you to look at the night sky at any given hour, at any given place in the world, at any given time rate, and point out the moon, constellations, planets, and major objects visible to the naked eye and binoculars. Slick, simple, and plain pretty to look at.