Tuesday, August 29, 2006

Transit: Viva answers

Viva is a transit system, part of the York Region Transit authority, that runs buses north of Toronto. The bus fleet of Viva consist of some of the newest buses to run in Canada. They set themselves apart from your average transit buses with their LED schedule displays at each stop (which are 90% accurate to the minute), clean buses and shelters, honour system ticketing (no need to display a ticket unless a ticket agent checks), and voice announcements in the buses.

Just to put this into perspective, the newest TTC (Toronto Transit Commission) buses have none of those qualities, except perhaps the odd clean bus in the morning.

The most interesting item for me was the voice announcer - although very close, it didn't sound human. I wasn't quite sure that it wasn't a recording until it bumbled on "...York Region Transitt Routes." It raced through "Transit" and the 't' was emphasized too much.

I wanted to know more about this system. How was the TTS system implemented? Was it based on VoiceXML (a perfect application for it, by the way). Given that the Viva website didn't explain the process, and I wanted to know more about the Viva system in general, I sent the following questions (responses lie underneath):

1) The voice in the VIVA bus sounds like it is generated dynamically using some kind of TTS (Text-To-Speech) engine. Is it VoiceXML based? Who developed it for VIVA?

The voice used on the Viva buses is TTS and was developed by INIT (Innovation and Technology) out of Germany.

2) How do the VIVA stops know that the bus is no longer 'Due' and has passed? Is there a wireless receiver that obtains a signal from the bus?

Viva buses are equipped with a transmitter that sends departure information to the Control Centre after leaving a Viva stop. Control
Centre then sends converted information to the VMS display at the Viva stop.


3) I noticed that the VIVA system along Highway 7 crashed last week, and the displays went blank for the whole day. What happened?


A bug during a software upgrade caused this problem. It was subsequently repaired over the weekend.

4) Why are the metal benches in VIVA shelters sloped? They are uncomfortable to sit on.

The benches in Viva shelters were sloped to prevent people from loitering in the shelters.

5) Why were VIVA bus shelters not covered in tinted glass? Not only do they provide no shelter at all from the sun, but the glass design doesn't seem to be able to provide any shelter during cold winter months.

Unlike other transit shelters, the new Viva shelters contain a fare vending machine. The fare machine is inside the shelter so that passengers can use it under cover. The large opening in the front of the shelters is intended to make it easier for people to use the fare machine while others are moving into and out of the shelter.

Tinted glass was not considered for safety reasons.


Since when did sloped benches deter loiters? No wonder no one sits on them... they're more uncomfortable than the vertical cement posts that protect the shelters from vehicles. Give me a break!

As for the shelter design, you can take a look at a Viva shelter from this album.

The trick with creating structures for public use is to balance design and utility, creating a useful yet attractive space. These shelters were not built with the public in mind, that's for sure.

Just look at the positioning of those glass panes. If the wind is blowing towards the front of the shelter in winter, the snow may hit the glass panes, but the huge gaps and slope will funnel it right into the shelter. That, combined with the angled steel benches, and you're standing in the worst structure around. Even the TTC bus shelters, of which the newest batch are advertising hubs, shield you better from the elements. I wouldn't sleep in those if I was homeless.

Next are the glass panes themselves. This time, picture a hot sunny day, with no clouds in the sky and the sun beating down on you. Again, Viva bus shelters offer no shelter at all, with crystal clear glass being all that stands between you and the summer glare. Go to any shelter and I can almost guarantee that the people there are actually hiding behind the metal ticket machine, rather than cooking themselves in those glass terrariums.

The Viva folks seem concerned about safety, but I don't think they have tried hard enough to cater to their customers in this case. Surely, adding a strong tint to the upper half of the windows would not compromise the safety of those inside the shelter. You can still see the person's feet and you can damn well hear any screams or yelling from the giant openings, if it ever came to that. Tinting barely affects visibility from the inside-out, so the excuse that people's field of view would be compromised is just weak.

I wasn't expecting such a timely and detailed response in the first place, so I guess I have to give Viva praise for that. They could stand for some improvement in their other areas though.

If you're interested in learning more about the brains behind much of Viva's transit innovations, take a look at INIT's website.

Monday, August 28, 2006

VoiceXML: The Beginning

VoiceXML is my newest focus these days simply because it's so different than anything else I've tried before. You may recognize it as the technology behind those Interactive Voice Response (IVR) systems that commonly greet you when you call your bank or before you reach customer service. Many people become frustrated when presented with a non-human voice belting out ordered options over the phone, but I believe that the technology is capable of much more user friendly applications than have so far been introduced.

VoiceXML is a W3C standard markup language for voice-driven audio applications, featuring digitized speech, recorded dialogs, DTMF signaling, and speech recognition. Traditionally, previous IVR systems hosting voice applications were difficult to program, with vendor-specific languages and proprietary technologies. A new system was needed to provide developers with the tools that they needed to transfer applications from one platform to another, and to reduce the costs associated with IVR's. That's when VoiceXML was developed.

Well-implemented VXML based systems can be very efficient and beneficial to us - but only in the correct circumstances. Telephone banking, weather reports, and status updates about events like concerts and services, are all good candidates for a voice based application. These services can be easily automated and do not generally require human intervention, however it's always a good idea to present the option of talking to a person just in-case. Frustrations with these systems are generally few and far between.

When you have many complicated options or near-endless possibility of customer questions, it's better to focus on a mostly human operated system. That's not to say VoiceXML can't be useful in these types of situations, but it's not a good idea to over-do it. A few options at the start of a call to forward it to the correct department, or even to provide a responder with basic details of a particular call, are acceptable.

Although many IVR style systems require servers and telephony hardware, they're not necessary to develop VXML applications - you can find many free development environments or online services that can be accessed to suit your needs. Personally, I use VoiceGenie, which is based in Toronto and provides multiple extensions to call to test VoiceXML applications. It has multiple ASR and TTS engines to support your application.

If VoiceXML interests you, as it did with me, dive right into some tutorials. I'm betting you'll have a blast with the TTS engines, especially over at VoiceGenie. Happy developing :).

Saturday, August 26, 2006

September reading

I find myself getting more and more behind on my learning of new (and old) technologies, with work taking up the majority of my day and the transit trips sucking my energy away. I'm hoping I'll have better luck managing my time in September, despite looming deadlines at work (IBM Canada). Here are a few book titles that I have in my sights for next month:

C in a Nutshell
Publisher: O'Reilly
Pages: 599
With courses under my belt covering introductory C, UNIX, data structures, and operating systems, I figured that a book such as this wouldn't be needed. C programs aren't generally an issue for me, but you never know when a book can surprise you with new and interesting facts, and that's why I grabbed it. It covers the basics, the explanations, and the advanced, both quickly and painlessly.

Professional Java User Interfaces
Publisher: Wiley
Pages: 632
I can see this book as being part of some sort of GUI design course, given its abundant helpful tips for creating GUIs in Java applications. It's a little light on code and heavy on explanations, so sometimes the text becomes a blurry mess that could've been easier demonstrated through examples. However, many of the suggestions offered in the text, especially related to creating well-organized, object-oriented GUIs, are quite helpful if you dig deep enough.

Firefox Hacks
Publisher: O'Reilly
Pages: 365
Quick, easy to digest 'hacks' are the name of this book. This was probably the most interesting read that I've had in a while, and I even worked out my own tutorial on Firefox search plug-ins (posted in July) based on a few of the hacks. I learned a lot from this book, which is more than I can say about some of the other books in this series.

Definitive VoiceXML

Publisher: Prentice Hall
Pages: 454
The first time I saw this book on the shelf, I knew I had to take it out. Two and a half months later, I still have it, even after multiple library renewals. That's a testament to both the writers and the engaging realm of VXML. Expect to see a set of tutorials from me soon, geared towards voice/web applications that utilize VoiceXML and related technologies.

The Mythical Man-Month
Publisher: Addison Wesley
Pages: 322
I had heard of this book before, and I was in a reading mood rather than a studying mood, so I grabbed it. I admit though, that I haven't had the chance to look very far beyond the front cover.

XPath and XPointer
Publisher: O'Reilly
Pages: 195
This is the only book on this list that specifically deals with part of my job. I think that the best way of detailing the behaviors of certain technologies is to use them myself, at least for a few days. I'm hoping that this book will give me that extra understanding to improve the quality of my work.

Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Applications

Publisher: The Pragmatic Bookshelf
Pages: 161
I was a fan of this series way back when I received The Pragmatic Programmer as a gift. Simplifying what I do on a daily basis is always great, especially when the info I need to do so is compacted into just 161 pages. This book has a strong Java slant to it (hence the title), but the processes explained could probably be applied just as effectively to other languages. It seems to be a good read thus far.

Thursday, August 24, 2006

Science: And then there were 8

The International Astronomical Union decided to do a complete 180 in their latest view of our solar system. There are now 8, not 12, planets! Pluto got the boot and is now classified as a 'dwarf planet', while the remaining 8 are the classical planets.

The general consensus is that if we start calling Xena, Charon, and all other 'ice balls' out there planets, we'll soon be considering the entry of dozens upon dozens of planets into our neck of the woods. Not only that, but many of the 'dwarf planets' are in fact larger and more massive than Pluto. So if Pluto was a planet, they would have to be considered planets too.

Be sure to check the headlines tomorrow... we might be the last planet left soon!

Wednesday, August 23, 2006

You know your neighbourhood is in the shitter when...

...loads of instant-money or check-cashing services pop up in your area. Weston, my area of Toronto is becoming poorer and poorer, and you can see it creep in. First it's the big chain like Money Mart... then it's the smaller ones you've never even heard of. Fees, fees, more fees. Less money in the hands of residents leads to fewer purchases, increasing numbers of dollar stores, and a crappier neighbourhood.

People don't even go NEXT DOOR to the bank and open an account, which will save them loads of money in the long run.

Wonderful.

Sunday, August 20, 2006

Politics: Arctic Sovereignty

I'll say it right now... I don't like Canada's Prime Minister, Stephen Harper, and I like most of his policies even less.

But when he agreed to attend to his previous commitment of traveling to the Canadian arctic instead of going to the international AIDS conference in Toronto, I was pleased. While AIDS is certainly a very significant problem for the world and I support its elimination, I feel that Harper did the right thing.

The issue of Canadian arctic sovereignty was one of Harper's primary campaign points, and it should be expected that he come through on his promises, rather than suddenly go AWOL and fly back to do something he wasn't born to do (I'm of course referring to Harper making speeches, both cold and rehearsed, about things he doesn't care much about). He threw billions of dollars into the military so just let him do his thing.

With Global Warming opening up shipping lanes through the arctic and peaked international interest, it's only a matter of time until other northern countries start to really understand how insignificant the current Canadian arctic presence truly is. Once that happens (if it hasn't already), any small chance that Canada once had to demonstrate that the waters surrounding our northern islands are truly ours would be lost, and along with it possibly billions of dollars related to fishing, oil, and gas revenues. Is that what we want?

Harper is actually the first Prime Minister in the post-Cold War years (to my knowledge) to truly recognize the threat to Canada's territory and identity that is present. The Liberals under Chretien and Martin barked a lot, but didn't have much bite. Whether Prime Minister Harper's resolve is truly genuine or not has yet to be seen. It's one thing to stand up to the Dutch over the tiny rock called Hans Island and claim it for our own, but it's an entirely different matter to tell an American nuclear submarine to get lost.

Most other countries don't even recognize our territorial rights in the arctic, claiming that our northern waters are international waters. They reject any claim that we have over those arctic waterways. Inuit have recorded sightings of strange objects in those waters before, possibly even nuclear submarines from both the U.S. and Russia. If they're up there and don't see any red and white flags flapping in the wind, it's no surprise that their countries don't give a rat's ass about whatever we claim.

As it stands, Canada's military presence in the North is pitiful at best. A volunteer band of mostly Inuit reserve soldiers compose the Canadian Rangers, overwhelmingly tasked with patrolling the huge Canadian arctic coastline. They do this partly on snowmobiles with WW-II era rifles. I feel my confidence drifting away already.

The navy stands only slightly better, with icebreakers arriving during the summer for mostly resupply missions. Occasionally, you get a frigate to head north, such as when the Hans Island operation took place, but even those vessels are easily stranded in thick ice.

Long-range, all-weather aircraft are so few and far between that even if a ship was discovered in the north that shouldn't be there, it'd be too late to scramble any sort of response.

As you can see, Canada's hold over its arctic waters is weak at best. Canada needs the three all-season polar icebreakers that Harper had promised in his military budget, early in 2006. Unfortunately, those ships have yet to be officially announced, let alone constructed. Harper also described an arctic sensor net, which could possibly work, although shifting ice flows and weather would certainly make such a system a nightmare to maintain. Despite those flaws, I believe that our Prime Minister is on the right path to securing our northern region from interlopers.

Given that the land and waters are so treacherous within the Arctic circle, I would say that a satellite or two to assist in monitoring efforts would be worthwhile, especially if global warming continues to melt polar ice. I also don't see why Canada couldn't develop its own all-weather semi-autonomous drone aircraft to identify naval vessels - the technology and brain power is certainly available.

Saturday, August 19, 2006

Science: 12 Planets!


Not since Pluto was discovered has any event changed the outlook of the solar system so much. The picture above, courtesy of the IAU, is certainly one that you'd better get used to. With the newest draft definition of a planet developed by the IAU, our solar system has gained a minimum of 3 new planets; Charon, Ceres, and 2003 UB313 (Xena). A dozen or so other planet-like objects may also join the orbiting bandwagon around our sun in the near future. Welcome to 2006 - when we started having 12 planets.

Here is the new draft definition of a planet:
A planet is a celestial body that (a) has sufficient mass for its self-gravity to overcome rigid body forces so that it assumes a hydrostatic equilibrium (nearly round) shape, and (b) is in orbit around a star, and is neither a star nor a satellite of a planet.

Heh. Astronomy textbook publishers are probably wetting their pants as we speak, eager to replace the now millions of books that have suddenly become obsolete.

I'm just glad that they've finally come to their senses and pumped out a definition. An object in the black of space is now either a planet or not. No more "ummm..uhh..yea..maybe..." from astronomers.

The fact that Charon was classified as a planet baffled me at first. After all, wasn't it always considered as Pluto's moon? However, given that Charon has a mass that is significant enough to be considered a planet, and that it is gravitationally linked to pluto, it is counted as a "double-planet". (http://www.iau2006.org/mirror/www.iau.org/iau0601/iau0601_Q_A.html)

Also with the planet definition is the new "pluton" definition. This group includes all planets that require 200 years to orbit their sun, of which Pluto, Charon, and Ceres are part of. Because of their generally high-tilted, elliptical orbits, these planets are thought to be different enough to be classified in a collection of their own. The "planets" currently under consideration would be plutons.

What a wonderful universe that we live in.

Wednesday, August 02, 2006

Dating a developer

There are certainly some common traits that many developers have obtained through years of pounding away at the keyboard, and although I don't consider myself a true developer (yet), I also see these traits in myself. They include: an obsession about technology, very late nights of work, and cursing wildly at the monitor with the occasional urge to throw something that will shatter into a thousand pieces. These aren't particularly bad things in themselves (unless you start throwing expensive electronics around), but they can be tough to live with sometimes.

Women courageous enough to date developers may not realize how common these attributes are, and there are a few things that these women should know. The original post is no longer functional, so I've linked to the google cache.

I personally found a lot of truth in that post, although I can't see myself purchasing hordes of geeky t-shirts that few people could ever understand. Nor can I ever imagine #2 being true... I mean, when was the last time you saw a processor with boobs, ass, and personality to boot? ;)

Firefox: Foxmarks

A few weeks ago I was playing with the idea of hacking together a script that would painlessly export my current Firefox bookmarks to my USB thumb drive, since occasionally I'll find a bunch of great sites while at work and I would like to be able to return to them when I get home.

After looking into the issue further I discovered a neat plugin called Foxmarks that will act as a bookmark repository and automatically synchronize your bookmarks as you browse. Not only can I forget about the scripting, but I can also leave the USB drive in my backpack for when I really need it.

Foxmarks is especially useful if you're one of the people who constantly switch back and forth between different computers at home, but don't want the hassle of maintaining two sets of bookmarks. In fact, it has become so ingrained in my Firefox usage, it's hard to imagine browsing without it.