What does "offline" and a few other words mean
If you get bored in this section you can safely skip it… jump to Why offline?
If you KNOW why offline and just want to DO it … jump to What is off-lined?
These definitions are good working for definitions for talking off-line, not technical definitions.
Offline means that a copy of the data is on your local device, your phone, your tablet, your laptop, your desktop computer, and you can access it without having to go to the server, you can access it when you have no internet and no intranet connection. In our products it also always means we won't throw away your changes – we'll save them for when you are back on line.
Internet: At the risk of simplifying it: The public access network the world shares and has been used by some of us since early 1991 when we first encountered the WWW in beta. Noting that beta means a few people, like one of the founders of our company, we allowed to test it before it became public a few weeks later.
WWW: This is NOT the Internet. This is agreed upon rules, protocols, for using the internet. For most people, the world wide web is what 'made' the internet. Programmers, like us, use other protocols as well, but the WWW is the most obvious face of the internet. HTTP and HTTPS are essentially WWW. HTTP was invented back in the days when most people on the Internet were trusted. HTTPS is the secure version that was necessary once untrusted, bad, people were allowed on the internet.
Intranet: Like the internet, but a smaller version that only works on your company's computers.
Server: The location, a computer, where the official record of your EAMS/CMMS data and some software is stored. The data in a CMMS will be on a server, be it on a SaaS or be it on your corporate server, it really doesn't matter to you, what matters is – you need a connection to be able to get that data.
Cloud: A fancy word for a server on the internet that is not in your office.
When you see a blue cloud icon, it means the data is "over there in the cloud" or "over on the server where your data is". It is not on your device.
SaaS: Software as a Service, this is where your data is stored in a cloud computer that is not owned by you. Someone else (like us) does all the work to keep it going, you don't have to. This contrasts with:
On-Prem: as in "On premise", meaning the server computer it is on is owned and managed by your company, not on a SaaS. Some people use the term "cloud" to refer to their corporate server as well.
Aren't offline and internet mutually exclusive?
No – that's just the way that virtually everyone on the internet wants you to think. They want you to do everything in the cloud. It is so much easier for them to write code that forces you to always have a good connection than it is for them to write code that works in the real world. And for the past 30 years, all of us have been so thrilled with having so much information at our fingertips, that we put up with all this poorly written code that forces you to always have a solid connection. We pay more and more on our phones to have faster and faster access and more reach and access in more and more places because we are frustrated that most people don't make offline work. For many of us, checking a coverage map before choosing a provider is just being prudent.
When offline works – your online experience is better too, so if you never have even temporary outage, you will still benefit from not always going back to the server for every little thing.
Almost everything on the internet is designed to only work when you have a connection. The thought was that there would be hardly ever be a place where you couldn't get a connection – after all, before devices like the Palm pilot and the Windows Pocket PC – you obviously had to be in a building with a good connection – you wouldn't think of using a 'computer' anywhere else.
The reality seems at times awfully close, and every year since about 1995, people tell us that "next year, off-lining will no longer be necessary."
The problem is, there are always going to be places it won't work. Things like corrugated metal roofing cause distorted signals. Water, concrete and iron (including rebar in concrete) block the signal. Yes you can do things like putting a WiFi receiver or phone signal boosters at the top of an elevator shaft to give better reception there so that you don't have to use the stairs, but as one author put it, 5G is 5 steps forward 3 steps back – because while it can handle more data, it's signal strength doesn't cut through the ground (basements) concrete, metal or water as well as 4G – so you better reception in fewer places.
CMMS companies and others keep saying that 'this year' or 'next year' you won't need offline anymore.
Our stance since 2003 is that the internet is flakey and sometimes not there, and so we developed with that in mind. We are not convinced that it will ever go away, because as we solve one problem – people want to have it work in the next location that it doesn't. But here is the nice reality: If YOU don't NEED offline because your internet is perfect – you can still benefit greatly from the side effects of off-lining data.
The better your connection – we take advantage of it for you! The worse your connection – we manage things to put you in the best possible situation for what you have.
Why offline?
There are three normal reasons to offline data. Noting that when we say this, we say it knowing that almost no applications other than MCe do any sort of intelligent off-lining of data, or they do extremely limited low intelligent off-lining of data:
- You want to get some work done and you don't want to lose your all your work when you hit the OK or Save button just because you lost connection for a few seconds, or because the server was rebooting.
- You want to get some work done and you are in the boiler room, out in the yard, on the subway, in the artic on dogsled for days (yes we really had this for one of our Canadian customers,) out in the ocean in a submarine or on an oil rig or other ship with no internet access (again … real customers) and you will have long period of time where you need access to data, need to edit data, need to have your changes preserved for when you next connect. While 'doing' a WO is an obvious for this, it also may be that you are taking a bunch of unassigned work orders with you that you are assigning while riding the subway into work (real example again, actually, all here are real examples) or you are working on building procedures, or you are creating new work orders that need procedures, all while you have no, limited or flakey connection to the internet.
- You want higher performance; you don't want to have to wait for the server to respond – like 99+% of the internet. Being able to pick from a picklist of perhaps people that can be assigned to a work order
But my phone has 3 (or 5) bars of signal? Why is my internet so crappy? Because on a phone, if you lose 1/3 of your data, you can probably still carry on a conversation, occasionally saying 'Can you repeat that?'. But with "data" if you lose 1/3 of your data .. if you lose even 1 byte out of every packet – the whole packet must be resent. Data is either perfect or non-existent. Phone companies show you full strength regardless of whether the signal is garbled (but garbled at full strength) or not. They also show you full strength (typically 3 or 5 bars of signal) at as low a signal as possible – because they want you to think your new phone is better than your old phone. "Look, my new phone has 5 bars of signal here, my old phone only had 4".
With Data – we prefer 2 bars – but low error rates, to lots of power, with signal bouncing off everything. Of course, 5 bars of good quality strength is also good. But here's the thing with data: If you have ENOUGH signal strength to get the message through – all that matters is: Is it corrupted.
And here's where offline comes in. If you don not have a good quality signal … then working from your offline data means you can continue, you can always sync your data later when you get to a Timmies or a Starbucks.
What is off-lined?
First some special cases. Because while they are special, they really are often the most important ones for people accessing a CMMS system, that is part of the "intelligent" that we mentioned earlier.
- Procedures for making WO. This one makes sense, if you have either a small number of procedures, or if you can define a subset of many procedures that would be useful for an individual or group of individuals such as by repair center or by access group.
- "My Assigned WOs", it makes sense for you to have your current list of WOs that have been assigned to you.
- WOs that are not assigned, it makes sense if your job is to assign work orders for people and you want to be able to do it off-line, perhaps on your subway ride to the office, to have some or all of the 'not assigned' work orders on your device so that you can do that, and then when you get an internet connection, your assignments are saved, and then we try to get some more records for you to work on.
Favorites:
- If you are going to be working on editing 1, 3, 10 (no real limit) procedures over the next day or next few weeks it makes sense to 'favorite' those procedures so that they are always off-lined. Then, when you no longer need them maintained every 30 minutes you are online – unfavorite them.
- If you are going to be working in a specific factory for several days, it may make sense to favorite several pieces of equipment to make sure that, while you are crawling around with metal all around you – you have the asset that you haven't used yet on your device.
- Typically, WOs would be something that make little sense to favorite, because we are already having all the work orders assigned to you on your device.
For most queries, we limit, by default, an admin can change it, the off-lined rows to a maximum of 50.
For Pickers, just the pickable info is off-lined, and by default most of these are limited to 2000, but again, an admin can change that limit up or down.
If a query has been off-lined, either because like "My Assigned WOs" we do it for you, or because an administrator has assigned you some procedure (likely because you need them for building WOs)
- You can filter, but you can't set criteria. The criteria is used to specify what is downloaded to your device and so the admin that set it up will have specified these. But then you can use the filtering to narrow down to find the one you want to work on.
How and when is it off-lined?
With data you are actively working on, we check every minute or so to see if you have a connection and if so, whether someone else has changed it.
When you make changes, we save them the next time you have a connection – now if you have one. We have a little bit of what we call 'debouncing' so that we are not saving every character you type, you have a bit of time to fix things up before it becomes part of the permanent 'change history'.
With data your device is keeping off-lined, if it is data you are not actively looking at or editing, we by default check for updates by other people every 30 minutes1. An administrator can change that up or down for performance of the system (making it longer than 30 minutes) or to be up to date (making it shorter than 30 minutes.)
We do this in as light a touch on the server as possible, to enable that we record history of changes in a way that means we can find data changes fast2.
Things that are offline get updated in the background automatically for you, as above using rules like "is the data active on the device?" and "has an administrator specified that it should be offline for you."
If you select something that is not off-line currently, it gets off-lined for a period, that keeps getting extended if you keep editing it.
When you select something as a favorite, if it isn't already off-lined, we immediately offline it if you have a connection, or we do so when you get back your connection.
Why you SHOULD offline more queries.
If you have people who work in a disconnected environment, such as has been discussed above, then you might offline things like procedures (for creating WOs) or unassigned WOs (so they can be assigned while riding the bus, taxi or subway). But …
Why you should NOT offline more queries.
Like many things in life, off-lining data is a compromise. If you've just come from one of our competitors, you might think you should offline EVERYTHING now that you have that ability. But don't, use it efficiently, think laser not shotgun.
Because, when you are working on something, you already have that item automatically off-lined, so no need to slow the server down and increase the data on your device with no benefit.
Because, when you are making a change, if you happen to be offline for a second, a minute, a month – we save that change to sync when you get a connection, so no need to offline lots of rows for saving.
Because you can favorite specific items to force them off-line. So no need to cause a constant slow down with lots of records when you can be more targeted.
Because the pick list queries typically have enough info to be picked and used. (Procedures are a special case for some people documented above.)
Because every time you offline more queries you:
- Slow the server down a bit
- Slow the sync down a bit
- Use up more data (matters really only if the phone is on a data limited plan)
- Use up more memory on the device so it can't cache as much that you are actually using as it otherwise could.
- With a slower sync, the interval between checks gets a little longer (we count the 30 minutes starting when the previous sync ended, not when the previous sync started.)
Deciding how much to off-line is a compromise. Very few devices can handle having all the data in their server database being off-lined to them, and even if they could, the sync might take literally hours or days for our larger customers. instead, we want to be intelligent about it:
- Data you NEED to do your job all the time when offline is the priority
- Things you need to pick but don't need the details should be your next priority (and we try to do this automatically for you)
- Special cases, like someone who needs certain procedures offline or the manager who needs to do assignments of unassigned work orders while riding the bus or subway to work.
Everything else typically is best left to be grabbed from the server when you first need it, then we'll cache it for a time for you.
How do I off-line more?
Use favorites. If that isn't enough…
Use offline queries.
To do that, you have to be an admin, or have and admin do it for you.
Then you go into preferences, find the queries, and decide who should have them off-lined and, if needed, change the default such as the limit. Perhaps you have a good reason why for one person the limit should be 75 or 800 instead of 50 for a specific query.
Just remember that ever time you add a query to be off-lined, it will slow down the server a bit and it will use up more memory on the devices that it is off-lined to which could block other data from automatically caching on the device. It does not make sense (or doesn't normally make sense) to offline dozens of queries for everyone, or to offline 1000's of rows.
Think of the "offline query" tool as a scalpel, not a sledgehammer.
Footnotes
-
1: The default is "30 minutes after the last background major sync ended, start a new one." So on a typical device it will be every 30 or 31 minutes, but if you have a lot of data being off-lined and/or you have a slow and/or flakey connection, that time from start to start will increase. ↩
-
2: MC does not have any features like this, so changes by MC will not typically be picked up until the 30-minute sync. To maximize your currency and minimize the load on your server, as much as possible, you should use MC for reporting and viewing and use MCe modules for making changes to the data. ↩