Tuesday, March 13, 2012

Join us on April 15

Back in December, our church, the Kingston Unitarian Fellowship, moved to a new building. And next month, on April 15, we will celebrate the official opening of the building and welcome visitors to an open house. Since the new building can accommodate more people at our Sunday service, some of us feel we should let more people know about our church and our religion. (To be clear, I'm writing now on behalf of myself, not KUF.)

One problem is that Unitarians don't proselytize. Although many of us are quite opinionated on a variety of topics, when it comes to our church, most of us keep a low profile. As our minister, Kathy Sage, pointed out in a recent sermon, Unitarianism was actually outlawed in England for a while. It wasn't legal in England until 1813. Before then, keeping a low profile was essential.

Dissenters have always had a hard time. For example, back when the King James Bible was being written, the authors knew that 1 John 5:7 was a gloss and considered omitting it. But, in spite of the scholarship, they kept the verse in since they didn't want to be seen as pandering to the Unitarians.

Another problem is describing our religion. If you talk to a number of Christians, for example, you'd quickly see what that religion is all about. But if you talk to a number of Unitarians, you might get different answers from each. Unitarianism doesn't preach a specific creed. Strictly speaking, it has no creed. We all recognize that many of us are on a spiritual journey, and that we all have different spiritual needs. We all have different approaches to understanding the world around us, and we all can share and learn from each other.

That said, we generally follow a set of seven principles. The first principle is to affirm and promote the inherent worth and dignity of every person. You can read the rest at our web site: About Us. Looking at these principles, to me they seem self-evident. How can anyone argue with these principles? In fact, these principles look very much like the eight points of Progressive Christianity.

If you look to church or religion for definite answers to the great questions of life, universe, and everything, you probably won't find them at a Unitarian church. Or maybe you will. Either way, you will be welcomed at a Unitarian congregation, just as you are, no matter who you are. We won't tell you what to believe, or how to live your life. But we'll support you in your own search for spiritual meaning.

Again, the open house is on April 15. I hope to see you there!

Cheers! Hans

Saturday, March 10, 2012

Where are we headed?

I've been using Facebook for about two and a half years. I resisted joining for a while, but relented when I realized that there were a lot of other ukulele players on Facebook. Now, I find it invaluable in knowing what's happening.

Upon joining Facebook, I was impressed with the friend recommendations. They were all spot on! Later, I realized that Facebook must have already been building up a profile of my public activities on the internet prior to my joining.

Facebook became so popular since we could connect so easily with people. For example, I found 18 of my 28 first cousins. But now that we've all been using this on-line social networking thing for years, where are we now?

Over the past half year, I've reduced my Facebook activities. I had concerns over Facebook's ability to respect our privacy settings. Also, back in the Fall, Facebook made some drastic changes to the look and feel of the web site. And changes are still happening. In some cases, it took me hours to reconfigure my settings. And weeks for Facebook to fix the bugs preventing those settings from working properly.

But now, where are we headed with on-line social media? First, I think the novelty of Facebook has worn off for many of us. We just don't have to look at all the pictures of our friends grand-kids. And as we increase our lists of "friends", wading through the volume of postings becomes more and more of an effort.

Second, Facebook has given us the option to view "Top Stories". But how do they decide what's important to us? Perhaps they have some secret algorithm that helps them decide. But the top stories they give me are not the things I consider most important. The thing about Facebook is that, for the most part, the stories posted on my news feed are not important. Few are truly "Top" stories. The vast majority are all pretty much equally unimportant. And yet, in spite of complaints about the futility of "Top Stories", Facebook still sees value in the whole concept. It seems like they really want to keep the ability to decide what we should see. As Facebook moves towards its expected IPO, it seems pretty clear that Facebook will decide that we should see the messages of its paying advertisers.

What about Google Plus? Well, it's a different sort of on-line social networking experience. I think it's a good start at implementing on-line networking. Although they could have capitalized on Facebook's recent missteps, I've been disappointed with the pace of Google Plus development. Google's strength is in all their different components, such as Gmail, Youtube, and Calendar. By integrating them all together in effective ways, they could have a real powerhouse on-line networking platform. But where are all the good interconnections?

We're clearly in the middle of a shift. Perhaps Google is trying to figure out where we're going? Or perhaps Google is busy implementing that shift? Many have argued that 2012 will be the year of the tablet computer. While many of us still use desktop machines, portable devices are clearly becoming more important. As tablets drop in price over 2012, more and more of us will be using them. I confess, I don't have one now. But I do expect to buy one during the coming year. They're just too useful to ignore. And a lot of fun too.

And so, while Facebook may have won the current war over on-line social networking, smart companies will do what they can to change the battleground. With big earnings expected, Facebook can be expected to play it safe, doing what they can do satisfy their investors and advertisers. Which means we'll have to look elsewhere to find real innovation.

Cheers! Hans

Thursday, March 1, 2012

Ukelele-Banjo: First Impressions

About two weeks ago, I added to my modest collection of musical instruments. I must confess that I've always wanted a banjo. And admit it: You want one too!


This instrument is a banjo-ukulele. But in my opinion, that name is a misnomer. It is a banjo, not a ukulele. So a more appropriate name would be "ukulele-banjo". The instrument I bought has almost all the characteristics of a banjo. The only differences are the nylon strings, a neck the same length as a concert ukulele, and tuned the same as ukulele.

You can play the uke-banjo more or less like a ukulele. However, while the ukulele is a very forgiving instrument, which make it so easy to play for beginners, the uke-banjo is much less so. It seems like any touch to the instrument can make a sound. So although it's a sturdy instrument, it's best to handle it with care.

Unlike the ukulele, strumming the uke-banjo really needs a more nuanced approach. Of course, you can get a really loud sound out of the instrument. And while that's appropriate in some cases, often you have to apply a lighter touch to your strumming. But you can play with rhythms by varying the strength of strum. For example, on some songs you can do a light strum, but emphasize every other beat by doing a harder strum.

Regarding repertoire, I've had to go through all of my song books to see what songs work. Probably not surprisingly, not all songs work well on the uke-banjo. Or perhaps I just haven't figured out how to make them work. On my regular ukulele, I've been leaning towards a more bluesy feel to my songs. But that doesn't work on a banjo. So far, I've been looking for songs I can play fast. Songs that work well include "Farewell to Nova Scotia" and "I'm Henery the Eighth, I Am". In general, a lot of old classic folk songs seem well suited to uke-banjo. Recent pop songs don't work nearly as well.

Finally, since this instrument is much louder than a conventional ukulele, you have to be more considerate of those you live with. Finding an appropriate time and place to practice may be more of a challenge. And while a new instrument may be a novelty in the home, that novelty can wear off fast. Unfortunately, not everyone appreciates the charm of this type of instrument.

In conclusion, this instrument is a lot of fun. It is well suited to up-beat music, and has a wonderful sound. In a Peanuts cartoon, Charles Schulz offered the opinion: "As soon as a child is born, he should be issued a banjo". Make that a uke-banjo, and I agree whole-heartedly!

Cheers! Hans

Tuesday, February 14, 2012

Ukulele Strumming for the Beginner

I'm not sure if I feel comfortable giving advice on learning to play the ukulele. After all, there are lots of other people much more qualified to teach ukulele. However, I can pass along some of the things I've learned from the masters, such as James Hill and Hal Brolund. The latter rolls through southern Ontario a couple of times a year offering workshops. If you have the chance to attend a workshop run by either of these two, do it!

If you're picking up a ukulele for the first time, read on. Many beginners seem to worry most about learning the chords. And sure, that's important. But that will happen over time. The first priority when learning ukulele is rhythm. That is, keeping a steady beat while strumming. I've seen beginners play like this: They strum four beats, then pause while they change the chord, and then strum another four beats. When playing together with others, even if that pause is very short, it can still be disruptive for the group.

The point is this: When strumming on a ukulele, maintain the beat. Even if it takes a beat to fully establish your left hand fingers in their proper chord position, don't let up on that beat.

Now let's get down to a lesson. To start with, count out a simple 4/4 rhythm: One, two, three, four, one two, three, four, and so on. On each count, strum the fingernail of your index finger down across the strings, roughly at the point where the neck of the ukulele meets the body. Don't worry about the chord. An open C will do nicely. Practice that for a few minutes. Tapping your foot as you strum might help you maintain the rhythm.

Next, count out: One and two and three and four and one and two and three and four, and so on. Strum as before, but on the "and", strum your finger up across the strings. You're now doing both down-strokes and up-strokes. Again, practice this for a while to develop a smooth rhythm.

Next, you can try some more complicated rhythms. While strumming your hand down on the count and up on the "and", try omitting a strum. That is, keep your hand moving down and up in rhythm, but at certain points in the strumming pattern, your finger misses the strings. Here are some possible strumming patterns to practice. Skip the strums marked by parentheses.
  • down (up) down up (down) up down up repeat.
  • down up (down) up down up down up repeat.
  • down (up) (down) up (down) up down up repeat.
Yeah, I know you're itching to practice those chord changes. The point of practicing your strumming is to make it second nature. Playing ukulele involves coordination between one hand strumming and the other making chord changes. The more you practice your strumming, the more natural the movement becomes. Once that becomes second nature, you can then better concentrate on the chords. Heck, even Manitoba Hal's recommended practice regimen for beginners includes five minutes of just this kind of strumming!


Friday, January 27, 2012

I'm Shopping For A New Ukulele!

A while ago, we decided to move from Toronto to Kingston. We sold our house in Toronto, bought a house in Kingston, and planned and implemented the move. The last step in the process was for me to find a job in Kingston. We knew that wasn't going to be easy. Kingston is a much smaller place, with less demand for programmers. As motivation, I decided that one of the things I would buy with my first paycheck would be a new ukulele. Well, I can now shop for that ukulele! I start my new job on Monday!

How did I get to this point? My "sabbatical" started getting a bit too long. So back in the Fall, I went to the KEYS Job Centre for advice. To start with, my councilor gave me some great advice on resume writing. She also recommended the MCF Kingston Practice Firm. What's a practice firm? It operates very much like a real company, allowing participants to gain real work experience, albeit without a salary. But in addition, participants are expected to spend time searching for jobs and learning the skills needed to look for work. I decided to give it a try.

I decided to concentrate on developing skills in PHP, since that's used by some local firms. I was assigned the task of developing a new software system for the local Operation Red-Nose organization to replace an old DOS-based application. I visited their operation on New Years Eve, and for what they were doing with that ancient program, they could just as easily be doing everything on paper.

To cut a longish story short, what I had implemented in five weeks using PHP and CakePHP, I had originally expected to spend most of my 12 week stint at MCF working on. Within weeks, I was able to confidently add PHP to my resume. I had expected to be at MCF longer. But an opportunity arose, I sent off my resume and cover letter, and I went for an interview and testing. I accepted an offer, and finished my stay at MCF after just those five weeks. Granted, there's still more work left to do on the ORN project. But I expect to finish that in my spare time.

What have I learned from this? First, that CakePHP is a great way to implement a web-based application. Some point out that it has a harder learning curve than other PHP frameworks. And sure, you need to understand why the framework insists on doing things a certain way. But having strong conventions is not a bad thing. In all, I think CakePHP was a good choice for that project.

Second, it helped me convince myself that the things I wrote in my resume were true. I can learn new skills. I got the skills. I know what I'm doing. I demonstrated that nicely with the ORN project. Sometimes it seems we can forget what we're capable of, and lose confidence in ourselves. Especially when between jobs.

In my previous job, I used Zope and Plone, but without ever really reaching the point of fully mastering those frameworks. I took that job because it offered me the chance to use my favorite programming language, Python. But while I still love that language, I would never recommend using Zope. We just could never get the Zope-based project to where we needed to be, partly due to the complexity of the framework, and also due to some nasty intermittent bugs. These were the kinds of bugs that you could never really be sure you fixed. And no one should have to depend on that kind of system.

(Fortunately, the Zope-based project was shelved. Unfortunately, development moved on to an ambitious .net based system, which is not really a good place to be for a Linux/Unix geek. Frankly, I was glad that moving to another city offered me a good excuse to quit that job.)

But now my new job beckons, and I'm really looking forward to it. From what I've seen so far, it seems like a really great place to work, and I know I can make a difference there. And soon, I expect to add a new ukulele to my modest collection. A banjo-ukulele perhaps?

Later, dudes!

Monday, January 23, 2012

On Facebook, We Are The Commodity

Last September, Facebook foisted one of its biggest changes on its users. Like many others, I found myself faced with an almost unmanageable volume of postings on my newsfeed. The change was already bad enough to deal with, but Facebook made it clear that it was to decide what was important to me, and what could be ignored from my feed. It took me hours to configure my feed the way I wanted. And it took weeks before Facebook decided to honor my settings. But eventually the postings settled down to a more or less acceptable volume. And I discovered the trick of bookmarking https://www.facebook.com/?sk=h_chr which always brings me to a "recent stories first" view.

To make things easier to handle, I also went through my Facebook friends, and unfriended about a third of them. Sometimes it seems like people treat Facebook as a game where the one with the most friends wins. But I didn't see much point in having such a large list of Facebook friends.

And I'm sure I'm not the only one who got the impression that Facebook didn't really care about the privacy of user information. They haven't always made it clear or easy to configure the privacy settings. Even after a flood of news articles about the importance of using the proper privacy settings, I still see many of my friends post personal family details to the whole world. I cringe whenever I see photos of children shared with the public, or when I see a persons location posted to the public. And not everyone is aware that that's happening. As a result of my own privacy concerns, I deleted almost all of my own photo albums off of Facebook, even the albums that were visible only to specific groups of people.

And then there's Facebook's new Timeline feature. Mind you, I have nothing to hide about my past postings. However, I just didn't see any point in making my past so accessible to my friends. And so I spent about four hours deleting and hiding past postings. Going forward, I plan on pruning my Timeline on a regular basis and keep just about a months worth of postings. That is, if I post at all.

With all that preamble in mind, I finally get the point of this blog posting: A couple of days ago, I mentioned to someone on Facebook that on Google+, I feel a lot less like a commodity than I do on Facebook.

Lets look at the business of Facebook. It's expected that within a couple of months, Facebook will go public with an IPO. Some people predict that Facebook will be worth $100 billion. What does Facebook own that's worth $100B? The only tangible asset they have is their user database. With about 800 million users, each user is worth about $125 to Facebook. People have gladly provided detailed personal information about themselves, where they live, what they like, and who their friends are, which Facebook can use in their own marketing endeavors. And every time you give applications access to your personal profile, you are allowing them to better target their campaigns.

So, with that in mind, whenever I go on to Facebook, I don't feel like a person. I feel like a commodity. Frankly, I count on Facebook too much to leave it completely. However, I just don't bother posting as much as I used to.

Lately, I've been encouraging my friends and acquaintances to check out Google+. Sure, they're a business too. But Google seems to be much more concerned about user privacy. And although Google+ doesn't have as many users, the quality of the postings seems much higher there. I just find it a much more comfortable place to do on-line social networking. Facebook isn't going to disappear any time soon. However, I think Google+ will, over time, attract a much more discerning audience.

Thursday, January 12, 2012

Should Everything Run on IBM i?

re Shouldn’t Everything Run on IBM i?

To start with, I'm reminded of a couple of things told to me when I was job-hunting four years ago. First, a head-hunter told me that, at the time, the bottom had fallen out of the iSeries job market. Second, at a job interview, I was asked: "What's an iSeries?"

In the referenced blog, Aaron mentions that the IBM i has just seen 4 quarters of growth. That's good to see. I worked for 22 years on the iSeries and its predecessors, AS/400 and S/38. And I really don't want to see my good work go to waste.

But in his blog, Aaron suggests that everything should run on IBM i. The i is indeed a fine machine to store your mission critical data. You really can't go wrong choosing IBM i for your database. But I disagree that it should be used to run everything. (Those who like the i, tend to like it a lot, which says a lot about the system. The only people more devoted to their computers seem to be Apple fans.)

First, Aaron brings up the common strawman argument that the choice is between IBM i and Windows. Clearly, there are more choices out there, especially in the Linux, Unix, and BSD realms. For example, for the top tier in a web site, you can't go wrong with OpenBSD running on a couple of inexpensive Intel servers. You can easily configure OpenBSD to offer 100% availability, for at least your static pages, with rock-solid security.

But let's look at the application tier. Many shops choose an IBM i solution for one simple reason: The application they need only runs on i. If the application is implemented in RPG, then it's basically limited to the i. What if you need to develop your own custom application? Is RPG the best choice? Frankly, no. Thirty years ago, when I started working on the RPG III compiler, it was already an oddity among programming languages. It has advanced quite a bit since then, and I'm proud of my own contributions to its evolution. But it has not kept pace.

Is there an ideal choice of programming language? Again, no. Actually, I think that's the wrong question to ask. Today, when choosing a programming language for a particular project, you don't look at the characteristics of the programming language. If the attributes of the language were a primary consideration, Python should be the most popular programming language on the planet (in my opinion). Today, one does not program using just a programming language. Today, you use a programming language and a framework.

Consider PHP. By itself, it's a rather ugly programming language. But it's popular because of the rich frameworks implemented using PHP. In the i community, Zend is commonly used. Elsewhere, frameworks like CakePHP and CodeIgniter are popular. Other programming languages have their own rich frameworks: GWT, .net, TurboGears, Ruby on Rails, to name just a few. Lately, I've been implementing a web-based application using CakePHP, and I can attest to its convenience and power. But, as far as I know, the RPG community has nothing like these frameworks. IBM i does support a number of modern tools and languages. But then, unlike RPG, those tools are not limited to IBM i.

That is, when using an interpreted language like PHP, you have something that a language like RPG can never have: platform independence. For my own modest CakePHP application, I can run it on Windows and I can run it on Linux. I'll bet that it could also run on IBM i! In other words, by using many of these rich frameworks, you can run on many different operating systems, and so, you can render the choice of operating system platform irrelevant. To get back to the original question, should or shouldn't everything run on IBM i? I say this: It doesn't matter. And hasn't mattered for a long time.

Hans