Problem With Level3 Phone Service

We’ve received notification from our VOIP service provider that Level3 phone lines are experiencing sporadic problems. This outage apparently spans the entire continental US.

If you’re having problems reaching us today, this is most likely the reason. We continue to be accessible via email.  Also, if you need to reach me directly, please feel free to call me on my cell: 414-870-8406.   Thanks for your patience and understanding in this regard.

How a Flight Notification Board Almost Gave Me A Heart Attack

Late Friday afternoon I was sitting in the business center at the Baton Rouge airport, waiting for a flight to Atlanta.  It was originally scheduled to depart at 5:25pm.  I kept one eye on the flight status board, just in case my flight might get delayed.

Wouldn’t you know it?  The board reported that the flight was delayed.  No problem–I should still make my connection in Atlanta.  So I settled in and continued working on my laptop.

Then, a little later, I looked up and was shocked to see that the flight was now scheduled to depart 4 minutes earlier than originally scheduled!  Here’s a photo… Note the line for the flight to Atlanta:


If that information was accurate, it was already well past boarding time!   So I made a mad dash to the gate–praying that I could still get on  the plane.  But when I arrived at the gate, people were still sitting in their chairs.  Boarding hadn’t begun yet.  And the gate signage continued to indicate that the flight was delayed:


Note to Delta–if you need help fixing that software, just let us know!

Announcing a New Mileage Logging Service

Our business office actually manages the finances and operation of two companies:  I/O Technologies, Inc as well as the local Squeegee Squad window cleaning franchise.   While it’s important for businesses to keep accurate mileage logs, it used to be a real pain to keep track.

So to address this, we created software for the sake of data entry.  And we took it a step further.  Rather than expecting drivers to faithfully write down their mileage, we set up a voicemail box on our PBX, assigning it a unique phone number.

Now, drivers simply need to speed dial the mileage logging number, state their current odometer reading and explain where they’re headed (or where they’re getting back from).  Then, at the end of each month, our faithful employee Patty E. works through the voicemails and generates reports and spreadsheets from the voicemails.

Since this has been working so well for our companies, we’ve decided to offer this service to other companies throughout the United States.

For more information, please visit


Our company’s experience with migrating from one telecom provider to another.

unpluggedWhen you’re shopping for a new vendor, it’s not uncommon to read horror stories about service providers, especially in the realm of telecommunication. So I wasn’t surprised to see the name of our previous telecom provider mentioned again and again in negative reviews. Talk about horrible customer service, high prices and slow speeds—I could write a book!
But rather than adding to the plethora of negative reviews, I want to focus on a much better experience—with our new telecom vendor.

As our telecom contract was coming up for renewal, we were determined to find better service. We’d read about the recent merger of Time Warner Cable (TWC) and Charter, and were concerned about signing up with an unknown entity. But their broadband speeds and pricing were among the best available. So we decided to make the switch to TWC.

Telecom Wires

No matter which provider we chose, the sheer enormity of a telecom migration project was overwhelming. It involved migrating multiple servers, websites and firewalls. What’s more, this project also involved migrating our phone lines from Plain Old Telephone Service (POTS) to Voice Over IP.
We tried laying as much of the groundwork beforehand as possible. And we built in one month of overlapping service, just in case problems should arise.

To be sure, there were bumps along the road. As it turned out, we would need that overlapping service. While TWC’s broadband was great from the start, we encountered several issues with Voice-over-IP. These turned out to be very challenging to troubleshoot, and required many hours (plus swapped-out equipment) to resolve. I won’t bore you with the technical details. But we were very impressed with how quickly the support team and local service technicians responded to our needs every step of the way.

Now that this project is coming to a successful completion, I’m pleased to report that our overall experience with Time Warner Cable has turned out to be surprisingly positive. Our broadband speeds have nearly tripled, while our overall telecom costs have actually decreased.

Although the TWC installation wasn’t perfect, their people bent over backwards to help us out, and make things right. Great customer service is no accident. It takes a coordinated effort, from the top levels of management down to the folks who interact with customers. Kudos to TWC for their obvious commitment to customer service.

Custom Software versus SaaS

Did you know that right now, there’s a major change going on in the software industry? It has to do with how software companies license their software. For example, did you know that when you install Microsoft’s Office 365 on your computer, you’re renting the software for a limited period of time—you don’t own it? In fact, most software vendors are moving to this Software as a Service model, because it’s much more profitable for them.

As more and more software vendors move to Software As A Service, the demand for custom software has been increasing as well. Why?  Think of it this way:  when you hire a company like ours to write a custom software solution, you OWN the software. You’re investing in an asset.  You’re increasing your company’s net worth.   Nobody’s going to be metering your usage ever again.  So you can forget the days of creative seat counting just to stay under arbitrarily-imposed usage levels.  Most importantly, with custom software you own 100% of your data. You, and nobody else, have complete control over who can access your information, and what they can do with it.

So does that mean that everyone needs custom software? Not necessarily—packaged software apps like Quickbooks, and Microsoft Office meet the needs of many businesses just fine. But if your people waste precious time every day rekeying customer data, purchase orders or payroll data into separate systems, we can do something about it. Or if your company needs a solution tailored to your specific way of doing business, that’s where we can help.

I’m Dave Martin, with I/O Technologies. We write custom software that’s good for business.

Making Cold Calling More Productive

Love it or hate it, one thing is clear: stick with it long enough, and cold calling will generate leads.

And what could be easier? All you need is a phone, a list, and a little time. Moderately thick skin won’t hurt, either.

The process itself is fairly straightforward:

  1. Assemble a list of prospects who meet your target demographic
  2. Pick up the phone and dial
  3. Recite your script
  4. Schedule follow-up appointments
  5. Wash, rinse and repeat until your schedule is full

And here’s one surefire way to improve the odds in your favor: keep track of your efforts.

Keeping track means more than tallying the number of calls you’ve made and appointments scheduled. Your goal is to identify:

  • the best day(s) of the week to make your calls.
  • the best time of day
  • the most effective script

Over time, as patterns emerge, you can tailor your scripts and schedule to make calls when they’re most likely to produce optimum results.

While you could log your efforts using pencil and paper, a spreadsheet will probably enable you to crunch the numbers faster. But wouldn’t it be nice to standardize and automate the process even more? That’s why recently, I’ve begun writing a desktop application that integrates directly with our PBX.
Here’s a screenshot of what the main form looks like …
Click multiple items, then press save
For me, this application offers even more time-saving advantages. First, it automatically dials the numbers, so I don’t waste time punching out individual digits on my phone’s keypad. Secondly, it logs the call date, time and duration (see them at the bottom of the form?). So it’s impossible for me to forget to log my calls. Most importantly, I can run SQL queries against the data I’ve captured, to generate reports and graphs that spell out what’s working, and what isn’t.

So what do you think? What features would make this application even more useful?

I’d welcome your feedback about this application.

Toodles! enhancement

One of the software applications we’ve developed for internal use, and then shared freely with the world, is Toodles!

This simple To-Do list manager allows me to schedule both one-time as well as recurring to-do items for my office staff.  It also helps me to manage a separate list of things I’ve assigned to myself.

Previously, if you wanted to use the [ ] Completed checkbox as a way of controlling which items continue to appear on your list, you’d have to edit the specific to-do item, check the [ ] Completed checkbox, then press Save.  It would be so much easier if you could just check your completed items off on the List page.  Well now, you can …

Click multiple items, then press save

To use this functionality, just head on over to the List tab, and start checking off those items that have been completed (see the checkboxes in the far right column?).  When you’re finished, press Save, and all your updates will be saved at once.

For more information about Toodles! and how to download, visit

Just because someone fancies him/herself a competent programmer does not make it so!

While updating an application we inherited recently, Jeremy (one of our programmers) emailed me this example.  (This happens to be Visual FoxPro code, but we often encounter similar programming in Visual Basic, C++, and PHP code we inherit…)

This is really a circuitous way of performing a simple function.

This is really a circuitous way of performing a simple function.

“OK, Dave,” you’re probably saying–what’s so bad about it?  Well, a few observations come to mind:

1) Even with the comment above this code block, it’s difficult to understand what in the world the programmer was attempting to do.  There are much better ways to strip embedded spaces from fields.

2) The code uses single-letter variable names.  Suppose the program bombs, returning an error  message such as:  “Variable N not found.”  Guess how many times the letter ‘N’ occurs in this program?  How long will it take to find the specific ‘N’ being referenced?   Better:  use Hungarian notation.  For example:  lnX = AT(‘ ‘, … etc).   It’ll be a whole lot easier finding lnX in the code than trying to locate the specific instance of ‘N’ that caused the error.

3)  This code will write and rewrite strings to the database up to 20 times per record–when a single write per record would suffice.

4) This logic, spanning nine lines of code, creates a nested looping structure.  Nine lines will be much more difficult to maintain (and debug) than what’s needed.

So, how would we recommend changing the coding above?  How about a single line of code: 

UPDATE <table> SET ponumb=STRTRAN(ponumb,’ ‘) WHERE AT(‘ ‘,ALLTRIM(ponumb)) > 0

An added bonus:  this logic will only write to the database when a PO number actually contains embedded spaces.  The fewer times our code updates the database, the better.

Positive Feedback

Yesterday, a visitor to our website named Adam downloaded a copy of Contact! — our free contact manager software. But recent updates we made had introduced a problem with the installer.  This was the kind of problem that that wasn’t easily uncovered during beta testing.

When Adam called it to our attention, we updated the logic to address his issue.

I thought I’d share his response …

Subject: RE: Email verification for Contact
Date: 2015-11-24 16:50
From: “Adam”
To: <>
Hiya Dave 

The new download has resolved the issue.
Thank you very much for your prompt response and resolution of my issue with
your software.
It's nice to find a company that is prepared to take the time to resolve an
issue with their product instead of just ignoring the request. Even more so
when you consider the fact that your product is a free one.
Hats off to you Sir.

Kind Regards
Ajay (Adam)

To RoboDial, or Not?

RobodialerWhich of the following phone calls would you tolerate? And which might you even welcome?

  1. Your family has gathered at the table for dinner when the phone rings. It’s a recording. The nice lady on the other end has an “important message for you about your credit card account”. She doesn’t identify your specific card or mention your bank’s name. You hang up immediately.
  2. A political candidate robodials your cell phone, asking for your support in the upcoming election.
  3. Your dentist’s autodialer calls, reminding you of an appointment you had forgotten to enter into your calendar.

Welcome to the brave new world of Robodial! Like it or not, autodialer software has become part of our culture–even if accepted grudgingly. How does it work? You simply import a list of phone numbers, record an outgoing message, and launch the software. The autodialer dials each number on your list, plays the appropriate recording, and logs the result of each call. Most autodialers offer the ability to respond. For example, ‘Press 1 to talk with a human, or 2 to leave a message.’

While any technology can be abused, autodialers can serve a useful purpose. Resourceful business owners may want to explore this capability as a part of their overall marketing and customer retention strategy.

Let’s look at the potential advantages from a business owner’s perspective. Would autodialing be an acceptable means of contacting your customers in any of these situations?

  • Your shop phone is ringing off the hook with calls from customers, asking for their order status. Contacting them proactively makes more sense, but your staff is already swamped, and you can’t afford to hire another employee just to make phone calls.
  • Your organization needs to contact all its members about a weather-related cancellation.
  • You wish you could call each of your clients personally to remind them of upcoming appointments, but simply don’t have the time or resources.
  • Your mortgage loan customers ask you to contact them immediately when rates dip, so they can lock their loan at the lower rate.
  • Business has slowed for your company. You decide to reach out and remind past customers of all the services your company offers.

Compare how much time it would take for someone at your office to make thousands of calls—when an autodialer could do the work with minimal effort.CyberOperator

Being on the receiving end of an unexpected robocall can be very annoying. And the last thing you want to do is irritate your customers. But there are measures you can take to avoid incurring their wrath.

For example, you could offer autodialing to customers as an opt-in service, letting them decide whether to receive automated phone calls. And, be sure to cross-reference your list of phone numbers with the national Do Not Call registry, so you don’t dial the number of anyone on the list.

Given a choice, most folks would prefer talking with a real person rather than listening to a recorded message. But when used judiciously, an autodialer can be a powerful tool to stay in touch with your customers and prospects.
If you’d like more information, please give me a call.