Online vs Offline Draft Software
June 30, 2022
Note from the future: DraftKick today is a web-based application and does not require any installation or downloads. Although I originally considered building a standalone offline version, I decided to focus all development on the web app for the best possible experience and easiest updates.
The Early Days: Offline Apps
The early draft software -- what I've labeled as "Traditional Desktop GUIs" -- were offline. You weren't guaranteed to have wifi at many draft locations, so this made sense. They were designed to work offline. Maybe they can call home for projection updates, but that's it.
Obviously, the world has changed since then. Most places where you might have a live draft offer wifi. And online drafts are more common, so you obviously have an internet connection available for that.
The Rise of Online Only
I've noticed that many newer tools are built to run online. I think RotoChamp was an innovator here with their fully browser-based experience. The places that offer a draft syncing feature (Fantasy Pros, Fantasy SP) are also online only.
What really got me thinking about the choice was Draft Hero, a fantasy football draft app in development. I feel like it hits closest to the interface that I've been working on for DraftKick. It is all online.
DraftKick Could Be Both
Here's the thing with DraftKick: I intentionally picked a technology stack that allows it to work both offline (installed as a desktop app) and online (pointing your browser to a webpage).
- Oh, your friends are drafting at a restaurant where an internet connection can't be counted on? Install the app on your computer, download the latest projections, and you're good to go.
- Oh, you want to monitor your slow draft from any computer/tablet/phone? Go to the website and login to see your drafts.
That's beautiful.
But Which Is First?
The question I'm still reflecting on: Do I prioritize building the offline or online version first?
An online version adds some complexity. I need to have user accounts and password resets. I need a way to save and retrieve each user's draft info. Those things take time to build, and I had thought I was avoiding them when I decided to draft software. (My initial vision was for offline-only, despite using technology that allows both.)
But there were a couple of lingering questions with the offline version, too. How do I accept payment and provide the software? How do I handle licensing? There's probably some online component for that.
Or: Can I allow people to import projections? That seems random, but some people might not pay next year if they can import new projections into a previous year's version. So I either don't allow imports, or I need some way to disable the feature before next year.
Which leads me to perhaps starting with the online version first.
One big reason: The fall is slow draft season. An online version works great for slow drafting, because the draft itself is online, and you may need to make your pick from anywhere. I can get online working first and still have an offline version before the spring drafts.
So here's how it could work:
Anonymous Users
- You can try out the app online with no account (online DEMO mode). Your data isn't saved. There are only 2022 projections, and no importing projections.
- You can download the app. Your data is saved. Trying to update the projections asks for a username/password.
Free Accounts
- You create an account to customize the online DEMO. Now, your data is saved, but you still can't update to real projections.
- The offline version is no different whether or not you have an account. If you put in your username/password, it tells you that you need to pay to access that feature.
Paid Users
- You purchase 2023 DraftKick. Now, you can update projections, but the feature is disabled before 2024.
- The offline version is the same. When you put in your username/password, your payment status for 2023 is verified, and you are able to continue.
I am still concerned about the potential for confusion if I have online and offline versions. Maybe I drop off anonymous users, and require an account to demo the offline and online versions?
Either way, the website calls-to-action would need to be super-clear.