We’re pleased to announce that effective immediately, users of the free Odolog application can download an update which will make all future updates completely automatic.
Previously, if you needed to update your version of Odolog, the only way to do it was by reinstalling Odolog from scratch.
Starting now, we have incorporated the ability to update Odolog automatically.
Do I need this update?
Here’s a quick way to find out if you already have the newest version. While running Odolog, choose Help … About.
If you see version 1.2.68 (or higher), you already have the latest version and don’t need to install this one-time update.
If your version is not 1.2.68 or higher, it would be a good idea to perform this special update. Why? Because in the future, any time we deploy an bug fix or enhancement update, it will install itself automatically.
To install this special update, please follow these eight easy steps:
What happens next?
In the future, whenever we release a new version of Odolog, you will see a dialog–asking whether you want to install the latest update.
One Final Note:
Odolog is free, and we don’t have any plans to start charging for it. But if these instructions seem overwhelming and you’d like us to deploy the one-time update for you, we’ll be happy to help.
|If you have any questions or concerns in this regard, please feel free to contact me.|
Recently we switched to a new Voice-over-IP provider, which now allows for direct inward dialing (DID).
If you’d prefer contacting the programmer who’s working on your project directly (instead of going through the automated attendant menu), please feel free to dial any of the following, and your call will be routed directly to that person’s phone:
|If you have any questions or concerns in this regard, please feel free to contact me.|
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.
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!
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 www.odolog.info.
Our company’s experience with migrating from one telecom provider to another.
When 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.
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.
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, Salesforce.com 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.
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:
- Assemble a list of prospects who meet your target demographic
- Pick up the phone and dial
- Recite your script
- Schedule follow-up appointments
- 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 …
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.
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 …
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 www.iotechno.com/toodles.aspx
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…)
“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.