Category Archives: Custom Software Development

What’s YOUR programming philosophy?

We met with a prospective client recently, who asked me, “What is your programming philosophy–do you prefer Waterfall or Agile?”

If you’re unfamiliar with the terms, here’s a brief overview:

Waterfall Software Development

The waterfall approach to software development breaks the overall project into several distinct phases:

Requirements
 Design
  Build
   Test
    Deploy

For Waterfall to work, developers can move on to the next phase only when its preceding phase has been completed and reviewed. We can’t swim upstream, and there are no fish ladders available.

The Waterfall Challenge.
The biggest problem with this approach is that clients seldom have a firm grasp on exactly what their requirements are. If requirements are unclear, the project will never get past the requirements-gathering phase.

But if a client insists on moving forward without completing each phase, software developers will likely end up throwing portions of the code away, as the project scope changes later on.

Agile Software Development

Several years ago, to address the limitations of the Waterfall approach, a group of seventeen software developers met to discuss alternatives. They published the following Manifesto for Agile Software Development:

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions    over    Processes and tools

Working software    over    Comprehensive documentation

Customer collaboration    over    Contract negotiation

Responding to change    over    Following a plan

That is, while there is value in the items on the right, we value the items on the left more.

Kent Beck   James Grenning   Robert C. Martin
Mike Beedle   Jim Highsmith   Steve Mellor
Arie van Bennekum   Andrew Hun   Ken Schwaber
Alistair Cockburn   Ron Jeffries   Jeff Sutherland
Ward Cunningham   Jon Kern   Dave Thomas
Martin Fowler   Brian Marick

© 2001, the above authors. This declaration may be freely copied in any form, but only in its entirety through this notice.

Agile software development offers an appealing alternative to Waterfall. Rather than scoping out a massive project and trying to address every possible detail, it breaks development down into bite-size chunks. As each new chunk is finished and tested, it moves into production immediately. This approach is known for its ability to deliver working software to customers faster. Then, as end users begin working with the new features, they often provide valuable feedback to drive future development.

Some of the best software we’ve written was developed using the Agile approach; we met with our customer to identify an overall goal, then wrote self-contained modules which performed specific functions fairly quickly.

The Agile Challenge.
But there’s a potential tradeoff. Developing software without an overall project design is akin to building a house without a blueprint. Unless project stakeholders pay close attention to the overall project evolution, the final result can end up looking like the cobbled-together effort that was used to put it together.

Oh, and then there’s one other small (almost trivial) issue: cost. Agile tends to be a pay-as-you-go approach. As a result, Agile projects can end up costing considerably more than anticipated.

Don’t get me wrong–if your company’s goal is quality software written quickly, then Agile makes a lot of sense. Just realize that if you’re working within a fixed budget, you may end up with less functionality than you envisioned. I.e., you may run out of budgeted funds before the evolving goals for your project all come to fruition.

You’ve probably noticed that I haven’t really answered the question. Why? Because I won’t be writing the check for your software project. More important than asking, “What’s I/O Technologies’ development philosophy?” is the question, “What is YOUR development philosophy?” If you need software quickly and don’t have all the details fleshed out, then Agile is the way to go. On the other hand, if you are faced with a fixed, not-to-exceed budget and can put together a well-defined project specification, then let the water fall!

FERC Report Format Change

The Federal Energy Regulatory Commission announced on April 16 that Electric utilities will need to begin filing FERC reports using XML instead of the current Visual Foxpro format, since Microsoft no longer supports VFP. This affects Form 1, Form 1F, Form 3Q and Form 714.

If your electric utility needs help making the switch to the new XML format, please contact us.

Source: http://www.rtoinsider.com/ferc-briefs-041615/

Please Join Us for Our Open House on Oct 28

Oct. 20, 2014

I/O Technologies Relocates to Accommodate Continued Business Growth, New Staff

Software firm’s move coincides with its 20th anniversary

CONTACT: Jeanie Martin, I/O Technologies, (262) 437-3239, jmartin@iotechno.com

Germantown, Wis. – I/O Technologies, southeastern Wisconsin’s premier source for custom software and software support solutions, has moved to a new, larger office to accommodate its burgeoning business and growing staff.

The tailored software company’s new address is N116-W15830 Main St., Suite 101, Germantown, Wis., 53022. The office is marked by a shiny new sign in the front window.

I/O Technologies didn’t move far – its previous office was on Fond du Lac Avenue in Germantown – but the shift to a more spacious headquarters reflects steady growth in customer orders and production needs. Its software development staff has grown by 33 percent in 2014. Additional hiring is expected soon, said Jeanie Martin, President of I/O Technologies.

“No one likes the work of moving, but we’re doing so with a smile because our company’s growth is driving the need the additional space,” she said. “We thank our great customers who rely on us for custom software solutions, and our business partners who have been with us every step of the way.”

The move coincides with the 20th anniversary of the 1994 founding of I/O Technologies. The company provides tailored software that simplifies day-to-day business activities, and gathers, transfers and reports key business information. All lead to better decisions and lower operating costs.

The Germantown and Brookfield chambers of commerce will hold a joint ribbon-cutting Oct. 28 at 11 a.m. to celebrate I/O Technologies’ new headquarters. The company belongs to both chambers.

I/O Technologies has built a solid reputation for creating custom software solutions that provide a reliable alternative to off-the-shelf packages that might – or might not – perform as needed. Every product has a 100 percent risk-free, money-back guarantee. More information is available at www.iotechno.com, or by calling (262) 437-3239.

Where To Go After FoxPro

The number of Visual FoxPro programmers dwindles ever smaller as Microsoft’s end-of-life deadline for VFP (January 13, 2015) looms closer on the horizon. Most programming companies have long since abandonded FoxPro, opting to migrate to new development platforms. (Side note: our company continues to support all versions of VFP).

Some time in the future, Visual Foxpro applications will either need to get migrated to something more current, or put out to pasture. So where does that leave savvy business owners who have invested a ton of thought, resources and money into a legacy FoxPro application?

For starters, understand that your FoxPro application(s) will likely continue to run just fine for many more years–maybe even a decade or longer. The sky will not fall just because of an arbitrary support cutoff date. FoxPro is a 32-bit application just like thousands of other 32-bit apps, which run perfectly well in Windows 7 and Windows 8. It’ll probably be quite some time before Microsoft releases a new operating system that doesn’t support 32-bit apps.

But what if your company has decided it’s time to migrate to a new development platform? Unfortunately, there’s no magic button that’ll automatically migrate your VFP application to a current development platform. But today you have more options available than ever before. It all depends on how data flows in and out of your application, whether your company has an IT policy in place, and what that policy mandates regarding preferred vendors and required databases.

For example, if your company has committed to use only Microsoft software and SQL Server, you’ll want to find a knowledgeable software developer who’s skilled at Visual Studio .NET development. On the other hand, if you run with the Open Source crowd, start by seeking out developers who know their way around LAMP (Linux / Apache / MySQL / PHP).

Another key question to ask yourself: how and where should your data be accessible? If users need to access your application and data from outside your office, developing a web or mobile application will probably narrow your needs down to an ASP.NET Developer (for Windows) or a PHP programmer (for Linux-based solutions). On the other hand, if all data entry is done from user desktops, you’ll want to find a company with experience in developing desktop applications.

If you’ve reached this point, call us for a free, no-obligation consultation. We’ll help identify your needs and how best to move forward.

Making data Input more fun, and data Output more valuable.

Do you host your own web server inside your office? Probably not.

Our customers’ web sites are often hosted on servers hundreds or thousands of miles away–not running inside their office.

If the only purpose for your web site is to EXHALE, i.e., advertise products and list your store locations, then there’s no problem.

But what if you want to collect data from your visitors (and that’s always a good idea)? How does that data get from the web server running thousands of miles away, to you in your office?

Many web developers send the data to you in an email. But then you’re forced to copy/paste the data from the email and manually rekey it into your systems inside your office.

We can make this process more fun and easy:

  • First, we can write an interface where users just drag the emails from Outlook and drop them onto our software. The software reads the emails, then pushes the meaningful data into your internal database.
  • Or, even better– we can install a little engine out on the web server that will let you download the data directly –without using email at all.

If the prospect of having to re-key data from your web site into your internal system makes your skin crawl, give us a call!

I’m Dave Martin from I/O Technologies, where we make data Input more fun, and data Output more valuable.

Bringing Function to the Dysfunctional Office

Have you ever had a friend or family member confide in you–“you know, I sure hope Mary never decides to leave our business. She’s the only one who knows how to run the computer systems. If she left, we’d be in serious trouble.”

If you’re the manager of a dysfunctional office–one where everybody knows that if one or two key employees walked out, the business would be in jeopardy–we should talk.

We can write software that addresses the dysfunction head-on: First, we can simplify things, so if it takes 14 steps to generate invoices, we can often reduce that down to one or two steps.

Second, we can incorporate context-sensitive help. So if you don’t know how to do something, press F1 and there are the step-by-step instructions, right where you need them.

Our programmers love bringing function to dysfunctional office environments.

Is the Upcoming Election Responsible for Non-Decision?

Over the past month, I’ve noticed that the number of inquiries and requests for proposals has been on the rise–and significantly. Part of the reason for the increase has to do with ramping up our marketing efforts, to get our name out there and market I/O Technologies Inc more aggressively. Another reason probably relates to increased optimism about where the US economy is headed.

But I’ve also noticed something else. The number of people who actually pull the trigger on new projects is very low–at least for now. The only ones that have moved forward are crisis-level projects–something’s broken and has to be fixed right away. Otherwise, if a project can be viewed as discretionary, no decision is forthcoming no matter how many follow-up calls I make or emails I write.

Here’s my theory as to why: it’s the election, stupid. Regardless of their political leanings, I suspect that decision makers will continue to dawdle on making any commitments until after the presidential election. In all likelihood, they’ve carved out two alternative plans–let’s call them Plan O and Plan R. Our proposals most likely fall under Plan R, but would be modified or scrapped altogether under Plan O.

Granted, this is mostly conjecture on my part. I welcome your theories and comments on what other factors might be involved. At any rate, it sure will be interesting to see how this plays out in a few weeks, and what happens afterward.

Thanks for Doing Business With Us!

I really appreciate the folks who have taken the risk of working with a software company–oftentimes working with programmers they’ve never met in person–entrusting us with their data, business rules and trade secrets. Hopefully we’ve demonstrated that we’re worthy of your trust, and proven that our business relationship has been mutually beneficial.

Of course, I realize we’re not the only software developer available. Most days, I/O Technologies, Inc. probably isn’t anywhere near the top of your stream of conscious thought. But when you find yourself facing new challenges–whether that be responding to a new customer with unique requirements, complying with new government regulations, or changes in your way of doing business, please remember we’re ready and willing, any time you need us. We’re committed to helping you grow your company as rapidly and profitably as possible.

If you’ve realized tangible benefits from being associated with us, could I ask a favor? Can you think of a friend or business acquaintance who might benefit from implementing a tailored software solution? Would you be open to passing our name along to them? Or, how about posting a customer review on the Better Business Bureau’s web site?

Thanks in advance!

-Dave Martin

Spam Filter for Inbound Telemarketing Calls

Over the years, I’ve grown slightly more cynical and less willing to accommodate unsolicited sales pitches. I don’t try to be rude, or slam the phone down. But there are only 480 minutes in any regular work day. Too much of this time already gets chewed up in less-than-productive activity. So I try to save the telemarketer’s time (and mine) by getting to the point very quickly. In short: if they’re not responding to a request or product inquiry that originated from us, we ask them to send an e-mail to our general ContactUs address.

But some simply will not take “No” for an answer. Some try calling repeatedly, dialing different extensions at different times of the day–almost to the point of harassment. For these, we have the perfect solution:

At our office, we’ve written an application that displays our Asterisk phone system’s call history database. For any phone number that’s in the database, we select the record, then press the Blacklist button to add the phone number to our blacklist database. As a result, all future calls from these repeat offenders dump into our general voicemail box immediately. It would have been just as easy to simply disconnect the call, but we give them the option of leaving a voicemail just in case. Oftentimes they decide to stop calling of their own accord, once they realize we’re not going to waste valuable time explaining why we’re not interested.

How You Can Gain an Unfair Advantage

You’ve always had competition. In today’s environment, if you come in second, you run the risk of losing the race altogether.

But who says you have to settle for last place, or even second best? Here’s a little insight into what many of your competitors are doing, and how you can gain an unfair advantage…

1) Many of your competitors are determined to run their businesses using pre-packaged software. The trouble is, they spend more time trying to adapt their business processes to conform to the software instead of tailoring their software to accomodate their way of doing business. So the tail ends up wagging the dog. Employees gripe. Management gets frustrated by less-than-optimum productivity levels. And software that’s supposed to make life easier, actually ends up costing more than it’s worth.

2) Others have become hopelessly mired in custom software minutia. They tried designing massive custom software solutions to address every last need. They’ve invested inordinate amounts of time, energy and money writing up detailed specifications. They’ve spent countless hours reviewing specifications, polishing presentations for key decision makers, and ironing out every last detail. As a result, they blew past any realistic budgets or timelines long ago. And the pie-in-the-sky software solution everyone is banking on never actually materialized. Or it’s become so bloated and complicated as a result of trying to handle every conceivable scenario, that end users throw up their hands in frustration.

That’s why you have an unfair advantage. You’ll be taking an entirely different approach. You recognize that there truly IS a better way. You’re not going to be manhandled by pre-packaged software. Nor are you willing to get bogged down by bloated, impossibly-complicated custom software that never gets off the ground.

Instead, you’re going to start small. While you’ll always have the big picture in mind, you’ll start by identifying individual processes that could benefit the most from custom software. You’ll collaborate with a developer you trust, tackling one processs at a time.

The benefits of this approach are threefold: 1) Turnaround time will be a matter of weeks, not months or years. Your developer will be communicating with you on a regular basis–asking questions, demoing each feature, confirming that it meets your requirements. 2) The cost for individual components will be lower. You won’t be tying up huge down payments without having anything to show for it until a massive project is complete. 3) You’ll start realizing a return on your investment as soon as the first component has been implemented. And you’ll see continued improvements in ROI as each new component goes live.

At I/O Technologies, we believe custom software should make your life easier sooner than later. Give us a call to discuss how we can help you gain a competitive advantage and leave your competition in the dust.