Absolute vs. Relative Values

Absolute vs. Relative Values (Don’t be fooled)
————————————————————————————————————
It’s amazing just how misleading some claims being made are. OK, it’s advertising, but seriously?

When an ad claims that their product “improves ‘x’ by 50%”, does that mean it improves ‘x’ (or whatever ‘x’ is) by 50% relatively or absolutely, and what’s the difference?

Example 1 (using fictitious lightening data):

Say, the absolute risk of being struck by lightening is 0.00001% or 1 in 1,000,000 (made up number for illustration).

Then, let’s say the absolute risk of being struck by lightning while holding an umbrella under a tree in a thunderstorm is 0.00003%. So, in absolute risk terms, we’ve only increased our risk by 0.00002% or about 1 chance in 333,333. Not that much in absolute (real) terms, right?

What an advertisement might do to make their product more compelling would be to focus on the relative risk instead of the absolute risk (or benefit). That is, focus on the risk increase itself “relative to” the initial absolute risk of 0.000002.

Mathematically, that “relative” risk just a percent difference, or:

((Risk2-Risk1)/Risk1)*100

(0.0.00003 – 0.00001)/0.00001)*100 = 200%.

WOW. Looking at only the relative risk, it’s now a 200% (relative) increased risk!
(or 200% “benefit”, depending on how they’re pitching the number.)

To summarize, our new (fictitious) absolute risk of being struck by lightening by holding an umbrella under a tree during a thunderstorm is: 0.00003% or about 1 in 333,333.

Our relative risk is 200% higher to not having an umbrella and not standing under a tree in a thunderstorm. That (fictitious) risk was 1 in 1,000,000.

So the next time you hear that something is x% more or x% greater than something, ask yourself x% of “what”?  Since this % increase is often a relative and not absolute difference, that part is left out.

Below is a graph split into two sections (separated by the horizontal red line). The top portion has the relative risk pairs and the bottom portion (below the red line) is the absolute risk pairs. Note that the risk pairs below the red line are indistinguishable at even a tiny 2% scale.

The actual data for this graph are:
——————————————————————————
x-axis (vert)        y-axis (horizontal)
——————————————————————————
1                0.000001
2                0.000003
3                1
4                2

Caveat Emptor
——–

Please read our disclaimer available from our home page

The Potential High Cost of Rapid Development Software

Most software developers work under tight deadlines so finding software that makes their jobs easier or helps getting the job done more quickly is always a good thing, right?

Well, maybe not.

Consider the case when the company that makes your cool Rapid Application Development (RAD) software tool decides to do something “it” considers important, but you don’t see the benefit for you or for your organization at all.

For example, maybe the company decides it’s time to jump onto the “Forced Subscription Model” (as opposed to the “perpetual license”, which has long been the norm). Maybe the company never tells you anything about future direction leading to more uncertainty.

Then, after multiple software versions, you find that company won’t support the current product version the instant the new product version ships. And, to make matters worse, that product may not function properly when there’s a new version of the OS. And, of course, the company’s only suggestion at this point is to “upgrade”. Yeah, right.

And you have work to do, but now the software isn’t working!

Assuming only constant costs increases, when costs go up, the money for those costs needs to come from somewhere. Either you eat those costs or you pass them along to your customers.

Say you decide to stick with the current version, but that version all of a sudden has bugs with a new OS release. You don’t want to upgrade since could mean you have to sign up for a new subscription model. But, best case, if the fixes are only in the new product, you’d at least have to upgrade for “bug fixes”.  

How do companies get away with this behavior? (Hint: a basically good product in a niche market with little or no competition.) Look at ever-increasing cable company prices for another example.

In any case, you now decide it’s time to look for alternatives, but because you picked this unique (read: Proprietary) product, there really aren’t any readily available alternatives like one that could read your files natively and let you keep working.

You lack, for example, an alternative like OpenOffice, LibreOffice, or any of the other MS-compatible office suites if you wanted to, say, ditch MS Office.  Or, say you use a Java IDE and the company starts to charge money for a subscription model. Now, in this software space, you have other alternatives, some free, so you can leave quickly if you want. Yes, you may lose some productivity, but you can keep working. It’s interesting to note that the Java IDEs that charge yearly fees don’t charge that much. Hmmm, maybe we’re on to something.

But without these alternatives available, you may be stuck for the time being.

It’s unlikely that anyone considers a vendor “lock-in” issue when they get that fancy software that lets them “be more productive” right away. And of course it’s always possible that you’ll still be able to stick with that company too, despite the lock-in, even if you can pass along the costs.

But what about future cost increases and uncertainty in general.

Thus, it’s a good idea to consider the cost of proprietary solutions up front as they’re not always the cost saver, due to productivity increases found, as hoped or even promised.

If the software you’re using was database software, as one example, a possible solution would be to come up with a migration plan to move to another vendor. That plan’s costs would need to be carefully considered up front and for the long term.

So, carefully consider that RAD software up front and possible migration alternatives to handle various (not only the ones mentioned here) scenarios!

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Please read our disclaimer available from our home page

Are Community Colleges Pricing Themselves Out of the Market?

Not too long ago, a community college might charge up to $100 for all the classes you might want to take after the “full load” of classes. Today, a single 3 credit class can cost over $500!  Then, you have to buy books, parking, and possibly pay other fees previously not charged.

Various studies have shown that college tuition increases have outpaced other costs of living such as housing.

Without examining the causes of constant tuition increases, what are some of the effects these increases have?

1.  Huge debt loads for students
2.  Deciding if college is even worth it
3.  Only taking classes that are absolutely required
4.  Community colleges not offering some interesting classes (side effect of 3)
5.  Difficult without a community college financial commitment to find instructors who can teach specialized classes for working professionals
 
Thus, unlike in the past where you could count on a community college to offer a class that could be helpful to you as a working professional, nowadays the offerings are much more vanilla. Given the huge cost of a single class, professionals have better options that take less time:

1. A one-week class for a given software product or framework
    (Expensive, but focused, and fast. Exactly the content you need.)
2. Harvard, MIT, and others have plenty of FREE online courses
3. A yearly subscription to Lynda.com or similar
    (Huge course offerings.  No instructor support.  Some plans include sample files.)
4. You-Tube Videos
    (Free)
5. Tutorials
6. User groups

So, why spend $500+ for a single community college class, assuming there even was a course that could help you improve your professional skills, when there are plentiful cheaper options that are more focused, have less hassle, and have more user interaction?

Several reasons to opt for the community college approach include the slower and methodical pace, evaluated assignments, and instructor feedback. The college environment is compelling for many students — especially those changing fields. Yet, this option is moot if the classes simply don’t exist for the working professional

Thus, except for being a better deal relative to four-year colleges for “required” courses, community colleges are indeed pricing themselves out of the market for working professionals looking to improve their skills. This market exclusion is from either by not having the financial commitment to hire specialized instructors for those classes or by continually raising prices on the vanilla classes that might help career changers.

Some people are thus now rethinking the value of college, in general, for reasons stated here and for other reasons.

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Please read our disclaimer available from our home page

Using a Database: How To Get Rid of Junk (Snail-) Mail

One of the questions we often get in our intro to databases (conceptual intro) course is…in what kinds of real world problems could we use a database? One answer is consider using a database to help track a lot of data or complicated data, or both.

We wrote a recent blog on stopping junk mail so we won’t duplicate that, but instead expand on it to explain how you might use a database to track contacting companies to opt out of mailings and other activities.

Although in our intro to databases class we go through several case studies explaining different types of applications for which students could use databases, this blog posting discusses an applicable example. As with blog postings, we won’t go into any implementation details (see our Programming Tips for coding!), but rather just pose certain questions. This blog is by no means assumed to be the best way or only way to stop junk mail; it’s just one idea.

The basic idea is to model the opt out workflow that captures the data and automates as much of the letter writing, label printing, reporting, and other activities.

Getting started…

So how exactly would you stop all junk mail? What would the database need to look like (table structure)? What types of responses from companies would you need to track? How long does it take to stop all junk mail?

All good questions.

Considering the OPT OUT portion of the database:

To set up a database, first consider that you need to capture the company information but also each response you get from the company. Should you have a separate address table? (Probably) In database terminology when you have a single table possibly related to multiple items in another table, this is a “one to (possibly) zero or many” relationship. In our intro to database course we talk about different types of relationships that you would model in most databases. We also discuss the cardinalities with these relationships (1:M, 1:1, M:M, M:1).

Document Your Assumptions for the System Up Front:

One initial “getting started” activity is to write down all your assumptions and then examine them later for refinement. It’s nearly impossible to get it all right the first time since what happens in the real world will sometimes defy logic. Your assumptions could be perfectly reasonable, yet the real world may challenge them.

One assumption you might reasonably make would be that you could just call the company one time and they’ll stop sending you junk mail, but this is rarely the case. Sadly, often, it will take two, three, four, or more attempts to get the company to stop sending you junk. Your contact attempt may include letters, phone calls, and in the worst case even submit a USPS prohibitory order so the USPS will contact that company on your behalf. Do you see this might be a “one to many” relationship somewhere in our database?

Determine if Your Application Is a “Workflow”.

Since all of these activities involve workflow (do step 1, then step 2, …) you want to have the the database’s data entry, and other activities, fit that model.

With a prohibitory order, for example, you can automate much of the data entry using the data you already entered on the OPT OUT form. You already have, for example, the company information from the OPT OUT form so you could copy it (or just “link it”, referentially, depending on your design). Also, since at least two prohibitory order dates depend on the date the order goes into effect, then the database should calculate these two dates automatically after you enter the initial date.

Create a workflow diagram

The diagram below is a (early, draft) starting point to model what we want using a workflow approach. Once you diagram the system, it’s easier to spot workflow problems or other things in the database that might still need attention. You’ll more easily see that the diagram may be missing some decisions or flows. Or, possibly the flows that are there need refinement. Don’t focus on trying to get everything perfect in version 1, but rather get the basic flows as close as possible to how you envision they would actually work.

Note that the diagram below uses a UML “State Diagram”, which is useful for modeling workflow models.

Automate Letter Writing

Your database could also have multiple form letters you pick when you write a company to “OPT OUT” of receiving junk mail from them. You could modify the form letter for each company, if needed. You could automate printing a label for the envelope, too. The database could then save each letter you sent into the multiple contacts (as many as needed) for that company. You could even track postage.

Reports

You’ll also probably want a report showing you which orders are still in effect on the date you run that report. Another key use for a database: reporting.

Graphs:

Maybe you want a graph showing the worst junk offenders or possibly junk mail by type of mailing. How about a report showing the list of companies and the number of contacts for each company ordered by date? Your database may offer graphics or you may need a plug-in for your existing database.

Scanned Images

You’ll have to decide how much to scan and keep as part of the database. In this actual working example database, we captured the prohibitory order application, and the USPS prohibitory order received as searchable PDFs. Back in the OPT OUT form, we had the ability to capture an image in any of the possibly many interactions with a particular company (remember that the company table is related to one or possibly many contact actions. You could conceivably have zero actions if you chose to enter a company in by itself with no junk mail from them.)

Surprises along the way.

One of the things you will probably notice, once you start calling and writing companies to stop sending you junk mail, is that many companies are not really in charge of their data. Either they “farm out junk mail sending” to some third party or they don’t have sophisticated database folks you can talk to on their toll free number(s). If the company farms out their junk mail sending to a third party, you may never be able to get the message to the right person. It’s also possible since these companies like to send junk mail, that their hearts are not in stopping it just because you called or wrote them.

USPS Prohibitory Order – When they just refuse to stop sending junk

Fortunately, the supreme court decided in the ‘70s that you can stop any mail you do not wish to receive. Simply fill out PS-1500 and send it to the USPS (note the instructions). As described above, the workflow would capture all that information as well.

Conclusion:

We’ve covered a lot. Specifically, in our database, we are:

  1. Enforcing a workflow
  2. Automating date calculations
  3. Reporting so we know how we’re doing
  4. Graphing for getting the big picture quickly
  5. Supplying canned form letters
  6. Automating other activities including data validation
  7. Fixing user entry errors: if they enter “ca” for California, automatically change this to “CA”. Use Title Case fixes in other case, all automated!
  8. Tracking stamp costs in OPT OUT and Prohibitory Order forms
  9. Doing basic accounting for stamp payments
  10. Tracking the average time between junk mail for both new junk mail and junk mail actions with existing companies. This display uses a nice bar graph on our OPT OUT form.
  11. Tracking the average time it takes USPS to process a prohibitory order after we send it (about a month!)
  12. Printing labels if desired
  13. (More!)

Here is the nice graph that we show for 10 above:

————-

It’s probably clear that trying to do all these activities with complicated data, without a database, would be difficult if not impossible.

Even with automation, expect stopping junk mail to be, probably, a six month effort. (Companies don’t always make this easy.)

The database makes tracking and reporting straightforward, but for even low to moderate junk mail (a few pieces a day), stopping junk mail will take serious dedicated effort.

Finally, getting a “perfect” database application to model the real world is quite difficult. Consider all the bug fixes and updates for every piece of software you use. No other company, anywhere, can get any of their software defect free either. Perfect software does not exist so expect your database application to be a work in progress as you make it better and better over time.

Enjoy!

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Please read our disclaimer available from our home page

Ask Your Wallet if Forced Software Subscriptions Are Right For You.

Introduction:

 
Many computer users are too young to remember mainframes typified by large cooled rooms with raised floors, dumb terminals. and the data center overlords who “granted” you access to data, memory, and applications. Control was the key. And the computer overlords had it.

Fast forward to today.

You may have noticed that more and more software companies are going to the “Forced Subscription” (aka “Take It Or Leave It” — pay monthly) model often with their proprietary and required cloud access. This forced approach is similar in many ways to the mainframe model. And, perhaps unsurprisingly, this forced software model yields the best cash flow for the company. Shocking!

Control? As with mainframes (or other centralized control): you lose it.

This new forced subscription model, simply put, means you pay regularly – whether you use the software or not — or, usually, your software stops working. While this model is great for the company with regular cash flow (or else!), the model may not match how you use the software or want to pay for it.

Whether this software model bothers you is largely personal, but your choice to not pay until you are ready for a new version is currently being eroded with forced subscription software models. Also, as stated, loss of control of your data can go hand in hand with this subscription model, especially if the company forces their cloud solution on you.

The Case for Software Subscriptions

The case for software subscriptions includes always having the most up to date software, often not needing to configure, install, or maintain subscription software. No licenses to keep track of. For teams of people, a subscription often means making one regular payment for working software for the team. Whether these subscriptions should be forced on you as the only option available is the key point here.

The Case Against Software Subscriptions

The case against Forced Subscription software is compelling.

Number one among the various reasons against forced software subscriptions is that forced software subscriptions are, well, forced. Take it or leave it.

If the company then also forces their cloud “solution” on you to use their software, do you want these companies to have access to and even control your data? You should read the fine print in your Terms and Conditions before simply clicking “Accept”.

Moreover, do you want the drip…drip…drip of your money now regularly going to a third party for software you can, or used to, just update (and then pay for) when you wanted to?

Other Questions…

  1. Who at the software company has access to your “Cloud” data (aka, simply your data they store on their servers) Programmers? Admins? Others?
  2. What happens if you stop paying (credit card expires, for example)? Is your data access terminated, your data deleted, or what exactly? How soon is the data deleted if deleted?
  3. What happens if your data is lost by the company?
  4. Does the company have and guarantee backups?
  5. Is your data encrypted on a cloud (Internet) servers?
  6. Where exactly is your data stored?
  7. How private is your data?
  8. Do you need this software up to date all the time as a subscription might offer?
  9. What happens when the company is hacked? Security in general?
  10. Do you have control do permanently delete your account and your data?
  11. Once you’re roped into Forced Subscriptions, will companies try as hard to come out with new exciting software?
  12. Why pay a monthly free for software you might rarely use?

Unexpected Consequences—Where Did My Data Go?

The costs of forced software subscriptions can add up, both financially, and from unexpected consequences.

One of our readers had an issue, for example, with a well-known company she used for email. She paid a monthly fee for that email service and had used this company for over twenty years. Yet, one month, her credit card expired. And, in just 6 hours, before she could update her credit card information, the company had deleted all her server email going back 20 years! Multiple calls to the company, letters to the president, and other attempts went nowhere. Her email data was gone. Period.

We’ve Got You!

When using software that needs “The Cloud” (aka “a hard drive somewhere on the Internet” others control) to run, companies could use this dependency to implicitly force a software subscription model on you. Consider when, at some point, cloud access itself ceases to be free, or becomes more expensive over time (as you become more dependent on it), etc.

A Ray of Sunshine — Lots of Software Options

Fortunately, there are many companies that don’t force a software subscription model on you. Instead of Office 365 (subscription), consider OpenOffice or LibreOffice. Both these MS Office alternatives are free for personal and for commercial use. Instead of TextExpander (previously recommended, but now recently changed model to forced subscription and forced, currently un-encrypted, cloud storage of your data), consider aText (one time $4.95 fee). Programmers can use the free “Eclipse” instead of now-subscription IDE offerings. With IDEs as well as other software, there may be tradeoff between cost and productivity that you should consider.

Let Companies Know How You Feel:

Companies are really thinking about jumping on the bandwagon and moving to this model. When you contact companies with questions for support or other contacts, let them know how you feel about forced subscription models.

Conclusion

Harkening back to the mainframe computer days, “The Cloud” and Forced Subscription models put the control with a third party, not with you. And of course, that’s the point: keep you paying … or else (software stops working, data gone, …) While you may get convenience or slightly more up to date software, you are also giving up control and are now paying regularly just to use your software.

Forced software subscriptions are becoming more common, but many choices for avoiding forced software subscription exist and should continue to exist. Unless forced software subscriptions are right for you (they’re not bad in all cases), look around for alternatives and take back (or keep) control of your software!

Enjoy!

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Please read our disclaimer available from our home page

Are you paying for a proprietary Word Processor?

With all the zero-day exploits and other hacks on the DOC format, as one example. it’s amazing people still use it. Who feels comfortable double-clicking a “.DOC” file received in an email? Ahhh, well, ahhh, ….

Instead, why not just use a really great text editor? Text is the common denominator. No company can stake out “text” as proprietary and then hold you over a barrel to extract higher and higher fees with more and more restrictive Terms and Conditions.

Some companies with proprietary word processors now demand you pay a monthly fee (a “subscription” – $-$-$: Drip-Drip-Drip) to use their software. Stop paying and guess what happens? If you really need the Office Formats, why not check out the free Office Suite LibreOffice (a favorite of students and professionals)? Additionally, also consider other office suites such as Google Docs that are also free. And, as of April, 2017, Apple now offers, free of charge, all its iWork products including Pages, Numbers, and Keynote!

The great news, however, is that regular text editors are free, plentiful, and universally understood. Text is also distraction-free: you just type the text! Every program understands text. Moreover, most non-bare-bones text editors include powerful search and other features for professionals. And, text editors now support images and other advanced features.

So, why not get off the “We Got You” proprietary model merry-go-round?

Declare your independence using text today!

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Please read our disclaimer available from our home page