Question and Answer Session with the Author

September 23rd, 2006

1. How did you learn programming? Were any schools of any use? Or maybe you didn’t even bother with any schools?

I am self-taught, and did not attend any courses at college/university or certification/training seminars.

2. What do you think is the most important skill every programmer should have?

Effective design techniques. The key mark of a good design technique is that it can be re-used as a problem solving technique equally as well.

3. Do you think mathematics and/or physics are an important skill for a programmer? Why?

Mathematics is definitely a valuable skill set for a programmer. Everything with computers is number-based. One could go on and on for a long time with examples, but they are generally self-evident.

An understanding of physics is equality important for some types of programming (image analysis, game development, etc), although not generally required for some fields of development.

The importance of other studies should not be ignored either. For example, an aptitude for genetics could be a help with various forms of programming in the fields of artificial and adaptive intelligence. Equally, an understanding of natural biology and the evolution and adaptation of species could prove invaluable to a programmer who wishes to create long-term technology solutions which will adapt and change over time.

4. What do you think will be the next big thing in computer programming? X-oriented programming, y language, quantum computers, what?

I think low-cost/personal clusters will be at the forefront soon.

5. If you had three months to learn one relatively new technology, which one would You choose?

C - It’s not new by any means, but it is the only major language I don’t know very well.

6. What do you think makes some programmers 10 or 100 times more productive than others?

Productivity is contextual. Some programmers have minds which lend themselves to what I call ‘production code’, that is, the ability to produce mass amounts of functional code consistantly over time. Other programmers do better when they multitask, making smaller steps on many projects. A third group of programmers is suited for working on large/complex issues which have not been attempted before. It really depends how the programmer’s mind is wired. There are even some programmers who can switch gears and be in any of the three modes as needed.

7. What are your favorite tools (operating system, programming/scripting language, text editor, version control system, shell, database engine, other tools you can’t live without) and why do you like them more than others?

OS: GNU/Linux (currently Fedora Core 5), but I have also built my own custom distro which I base my internet application servers on.
Language: PHP for web and shell scripting; Gambas for GUI work; Pike/Python for various tasks.
Editor: Eclipse for projects; UltraEdit (running under WINE) for single file/basic editing. VI for fast work.
RCS: Subversion
Shell: BASH
DB: MySQL for web-based or heavy searching systems; PostgreSQL for heavy transaction load projects;
Browser: Swiftfox, which is Firefox, compiled for specific architectures.
Graphics: the GIMP and Inkscape.
Docs: DocuWiki for online documentation / project notes. Easy to generate flat documentation packages in TXT and (x)HTML.
Bugs: Flyspray for bug/task tracking. Possible to generate change logs and collate with subversion change logs.
Publishing: Scribus for layout work; Open Office for general documents.

8. What is your favorite book related to computer programming?

Spidering Hacks (published by O’Reilly) — I wrote a few pages of it. :-) I don’t use books for programming/computer work very often, so I don’t really have a favorite.

9. What is Your favorite book NOT related to computer programming?

How about a series? The Posleen War series by John Ringo.

10. What are your favorite music bands/performers/compositors?

Richie Valens, Buddy Holly (I grew up in Holly’s hometown), Deep Purple, Depeche Mode, Roxette, Ace of Base, U2, Van Halen, Berlin, Madonna, others. I also like folk music from various regions of the world, particularly Celtic, Eastern Indian, and Arabic.

Wedding Picture

September 13th, 2005

James & Gail

Marriage

September 13th, 2005

This is a transcript of the vows from our wedding:

OFFICIANT:

We gather here today to celebrate the union of James and Gail as they publically proclaim their love. By this union, they begin a new part of life’s journey - a time wherein they look not with their own eyes, but with the eyes of the other. In this, they see the world not only as themselves, but together as one. By this bond, James and Gail hold each other in equality, with honor and compassion, forsaking all others, as they walk together through life.

All of you are James and Gail’s community, and each of you has played some part in bringing them to this moment. This is why gathering as a community is such an important part of this day. James and Gail are now taking a new form as a married couple, and in this form, they become part of their community in a new way.

James and Gail, we are here to remember and rejoice with you and to recount with one another that it is love that guides us on our path, and to celebrate as you begin this journey together. It is in this spirit that you have come here to today to exchange these vows.

VOWS

James, repeat after me:

I James take you Gail to be my wife.
I promise above all else to live in truth with you and to communicate fully and fearlessly.
I give you my hand and my heart as a sanctuary of warmth and peace and pledge my love and devotion in honor as I join my life to yours.

Gail, repeat after me:

I Gail take you James to be my husband.
I promise above all else to live in truth with you and to communicate fully and fearlessly.
I give you my hand and my heart as a sanctuary of warmth and peace and pledge my love and devotion in honor as I join my life to yours.

RINGS

For thousands of years lovers have exchanged rings as a token of their vows. These simple bands are not of great value in themselves, but are made precious by our wearing of them. Your rings say that even in your uniqueness you have chosen to be bound together. Let these rings also be a sign that love has substance as well as soul, a present as well as a past, and that, despite its occasional sorrows, love is a circle of happiness, wonder, and delight.

James, take Gail’s ring and put it on her finger, and repeat after me:

Just as this circle is without end, my love for you is eternal. Just as it is made of indestructible substance my commitment to you will never fail. With this ring I take you to be my trusted confidante and partner for life.

Gail, take James’s ring and put it on his finger, and repeat after me:

Just as this circle is without end, my love for you is eternal. Just as it is made of indestructible substance my commitment to you will never fail. With this ring I take you to be my trusted confidante and partner for life.

James, you may now kiss your bride.

(Signing of register)

PRONOUNCEMENT

James and Gail, although I’m officiating here today, it is not truly in my power to sanctify, legitimize or bless your relationship in any way, because the two of you have already done that in your hearts. So, by joining hands right now and looking into each other’s eyes, let it be known that you are joined - body, soul, and spirit - in this lifetime, and that this bond is sacred and eternal. And now that you have stood before me and exchanged these rings and these vows, and have agreed to be married according to the laws of Ontario, it gives me gives me great pleasure to announce you as Husband and Wife.

About the Author

October 27th, 2004

Family

My family tree is a little confusing, but let’s suffice it to say that I have a medium-sized family, of which I’m the youngest. My parents are James Sr. (Jim) and Jennifer, and I have six siblings, sorta. Not all of the siblings are physically related, but for the most part, we ignore that. I have two brothers, David and Chad, and four sisters, Melodie, Charity, Faith, and Laurie-Ann. That leads us to me, James Jr.

History

I was born in southern California, but spent my childhood in west Texas. While in Texas, I had many experiences that have shaped my life. I was one of those kids that was never really happy, always needing something new and interesting to do, but I couldn’t handle playing with other kids for too long. The private school I went to didn’t help my attitude much, but my parents were smart, and let me experiment with hobbies. They also had friends that taught me the basics of various trades (plumbing, electrical, framing, concrete, metal fabrication). The best things I remember about growing up are all centered around going to work with my dad, installing audio/video and telephone/paging systems. My mom taught me the basics of taking care of a home, but like most young boys, I didn’t much like it. In 1992, at the age of twelve, I recieved my amateur radio operator’s license - KB5UMQ, which I still hold. That was the same year that I met three of my siblings that I hadn’t ever seen before - David, Melodie, and Chad.

Halfway through my freshman year of high school, my family relocated to northern California. For the next three and a half years, I went to another private school, but this one actually made me work hard. After school and in the summers, I either worked for the local construction company, mostly hanging sheetrock, or for a local haying contractor, which also had a small fleet of transport trucks. I didn’t like the construction work much, but I learned a lot from it, so I can’t complain. Working on farm equipment and trucks was much more fun, and mostly, even harder work than hanging sheetrock. Five months before I was to graduate from high school, I was in an accident at work that put me on crutches for about a month. Fortunately, chronic arthritis in my right knee is the only permanent injury I suffered. Three days after graduation in June of 1998, I moved back to Texas to live with my brother David.

In 1999, I came up to Canada for the first time, and other than the snow and cold, it wasn’t bad. After my visit, I went back to Texas, but by then, I was talking reguarly to a woman I’d met in Ontario. By late 2000, I was back in Canada. In June of 2003, Gail and I were officially engaged, and I’m looking forward to getting married in the near future.

Update: Gail and I were married September 3, 2005, which you can read about in the Marriage entry.

What I Do

I’ve always been a techie, like my dad, and my brother. At the age of 7, I was writing BASIC programs on my TI99-4a, saving my code to cassette tapes. Not long after that, I put together an 8086 machine out of parts and got into DOS and batch programs. In the intervening years, I’ve learned various other languages: ASP (VBScript/JScript), PHP, JavaScript, CSS, (x)HTML, and XML in general. I’m not fluent, but I can find my way around Python and Java, and just barely do some C. I’ve learned the ins and outs of various operating systems from Windows 3.1 to Windows 2000, and various distributions of Linux, but primarily Red Hat.

I’m a geek of many trades, but generally, I develop web-based applications using mostly PHP and MySQL. Sometimes, I have to step back into the Microsoft world and develop something with ASP and Access, but I’ve managed to avoid that for most of the past couple years. Having gotten rid of all traces of Microsoft from my server farm, I now maintain half a dozen Linux servers.

Work

In 2001, Gail and I decided to start our own technology solutions business, Ticluse Teknologi. Since then, we’ve been building applications for organizations from both the public and private sectors. While I generally enjoy writing code, I find that the type of systems we are building are very similar, and the monotony rubs on me sometimes.

Update: Since January 2006, I have been operating the business under the name of Eidix Labs. I also do some renovation work under the name of Dereco Contracting.
Projects

Currently, I have the great joy to be able to work on my dream project, Open Genesis, around work, of course. Because Open Genesis is really an uber-project, I get to spend a little time dabbling in a lot of different things, like Project Gutenberg, FreeDB, the Open Directory Project, Wikipedia, etc. We’ll be getting an official site up for the project soon, and you can read more about it there.

A few friends and I have recently started the Eidix GNU/Linux Project, with the specific goal of creating a purely server-based Linux distribution. I’ve been running RedHat systems for years, but I’ve gotten tired of RPM and general bloat associated with generic distros.

Update: Eidix GNU/Linux development is currently on hold, but a beta release is available upon request for those interested in it.

Politics & Religion

When it comes to politics, I’m pretty middle of the road, but I do have distinctly formed opinions about some issues. Having grown up in a religious environment, I’ve been firmly steeped in various doctrines, but I’m not particuarly religious.

Photo of the Author

July 16th, 2004

Photo of the author, taken by Rannie Turingan, July 2004. This was not a truly posed picture, Rannie is simply very skilled at making normal people look good.

Photo of the author

War: The philosophical approach

March 19th, 2003

In response to a discussion which suggested certain political leaders should be assasinated.

For the record:

I am neither Canadian, nor American, neither Jew, nor Gentile - I am Human. I have just as much in common with Bush as I do with Hussein or Cretian or Blair, or the retired gentleman who lives down the street, or the school children who play on the same street.

I am neither anti-, nor pro- war, and I am certainly not pro-assasination. When it comes to moral lines, assasination is exactly the same as war.

Does this make me an anarchist? No, it certainly does not. I believe in law and order, and the proper implementation of force to encourage and support it.

If your anti-war stance is on a moral soapbox, you have perjured yourself in the mere suggestion of assasination.

The fact remains: the US (and allies) are going to war - it has been obvious for months. Bitching about it isn’t going to do anything. One does not have to support it, but one does not have to waste other’s time with such useless demonstrations of hypocrisy.

The moment one commits a crime, any crime - they become a criminal. The details of the crime matter not, a crime is a crime, whether against one, or against millions. Does this excuse the “lesser” crime, or belittle the “greater” crime? No, of course it does not, but the fact stands. Humanity is criminal in nature, and only by education and experience will we collectively rise above our own weakness. In the process, we are not absolved of our responsibility for those who may or may not be as willing or capable of following such a path. Political, religious, sexual, or moral affiliation - or lack thereof - does not matter. We are humans, and as such, we learn together, either by success or failure. Those who stand aside and scoff at others will gain nothing. Ignorance is not bliss, nor is Arrogance a savior.

If you can understand all that, you have read too much Ralph Waldo Emerson. (Like myself)

Origin of a Generation

April 1st, 2002

Three teenagers are hanging out at the local skate park, discussing what to do with their summer vacations, which start next week. After talking about various summer jobs and their constant conflict with the general idea of a vacation, the three switch to musings about parties, hot dates, and general goofing off. The general consensus is that even parties and hot dates will get boring before the summer vacation is half over.

One of the kids (we will call him Chris) offers a suggestion, and judging from the shocked looks from the other two, I would assume it was a completely novel idea. Chris reaches into one of his over-sized pockets and pulls out a personal communicator, punches a few keys, and smiles at the other two while reading his screen. He starts jibbering excitely, his antics forcing the others to crowd around Chris and read over his shoulder. Chris calms down a bit, and stands up, motioning for the other two to back up a bit. With a sly grin, Chris punches a couple more keys and soon, I can hear a smooth voice running through a list of local activities and events. At the end of quite a long list, the voice says something about “being a service of the local library”.

Chris closes his communicator and looks up at his friends, who start pestering him with questions immediately. He passionately explains that the local library recently launched a new initiative allowing people access to a host of information, including electronic catalog searching and community-wide events, etc. His friends begin to wonder when technology suddenly arrived at the archaic library, which once was a great source of “book relocation” and hide-and-seek games when their mothers weren’t watching.

In the end, I find out that they decided to attend a summer volunteering and employment conference being hosted by the library to further explore their summer possibilities.

A month later, I happened to stop at the library and noticed them sharing a computer terminal, reading an electronic book and quietly discussing various aspects of the content. It surprised me that three teenagers were spending a sunny afternoon inside a library, and not out at the skate park or the beach. Back in my day, when you actually had to have a book to read, we were not very likely to sit for hours reading, much less discussing it. With a regular book, sharing with another reader was hard, removing an element of fun and companionship that literature has the power to give.


Did this story really happen? No, not yet, but it will. I have never met a kid, or teenager, who didn’t want to know more about something. I also know many, many such young people who watch their lust for knowledge slowly die off, like a battery, slowly at first, then more rapidly, until one day, there is no more power left. Normal education will never fulfill every kid’s desire to know, but it is the foundation to allow them to indulge in “information carnage” throughout their life.

I can see your eyes popping out of your head as you read that phrase, “information carnage”, so let me explain. I use the term “carnage” because it evokes a strong emotional reaction while throwing the mind into a quandary. “Information carnage” is not the gruesome slaughter of a human beings, as “carnage” is commonly defined. It is the reckless aggregation and dissemination of knowledge within one’s own desire to learn and expand horizens.

Children, teenagers, and even adults are prone to indulge in one extreme or another. A child indulges in birthday cake, without thought to the upset stomach that will surely come later, while a teenager or young adult indulges in extreme sports, double-devil-dares, and other forms of personal endangerment encapsulated by the cliche, “No pain, no gain.” I will leave the examples of adult indulgances to your imagination, after all, I don’t want to give anyone any ideas.

It is part of humanity, part of what defines us as a species, this drive to push the limits, whether physical, mental, or emotional. Lawyers collect legal precedents and court rulings. Accountants gather stock reports and financial statements. Marketing agents amass demographic reports. Housewives tally chore lists. Librarians sift through book reviews and publisher lists. Every profession is constantly involved in gathering and analyzation of information, whether “on the record” or mentally. Our brains are made to constantly aggregate, analyze, sort, and disseminate knowledge of all kinds. The recently coined phrase We are the blog is more true than many people realize - it is our core nature to blog. (For those of you not familiar with blogging, I just summed it up a moment ago in italic print.) Unfortunately, only recently has technology caught up to humanity’s primal instinct to gather and share knowledge. No other known species has this drive for knowledge - it must mean we are meant to utilize it to benefit all species.

So, back to “information carnage” and how it affects one’s life. As knowledge becomes more readily available to the masses, humanity will become smarter and smarter as a whole. Right now, we have a large deficit before us. Technology has given us the way, and we, as humans, have the will, now, we must do.

Literally hundreds of thousands of books and documents can be put into digital formats, available to the general public, a global library without regard to race, nationality, or gender. Knowledge is the property of humanity, not a select few people (often referred to as publishers). As this global library grows, people will have enjoyable activities to do, such as reading the same book with a group of friends. This creates less and less opportunity for aimless wonderings, particuarly for teenagers, aimlessness which often leads to disasters.

By giving teenagers (in particular) the ability to indulge some of their primal urges, which I call information carnage, we help them become more and more civilized and well-rounded as human beings. This is done without forcing them indoors or constantly monitoring their activities - nurturing at their level, as only their own internal instincts can define. By giving them access to electronic books, documents, horoscopes, reviews, news, and any other kind of information via personal communicators, people can sit at the beach, or at their favorite coffee shop with a couple friends - aggregating and consuming knowledge at the speed of their passion.

Libraries, as the historical centers of knowledge, are once again at the center of this picture. It is up to the libraries and educational institutions to empower the next generation, to give it life - to be The Origin of a Generation.