Loupe 3.8? Nope, we're going for 4.0!
We’re stingy with version numbers. Really stingy. A big reason for this is we know that folks assume compatibility only between major versions, so we’ve been very reluctant to change the major version unless we were making serious, breaking changes to everything. For example, 2.0 was a complete rewrite of the original COM-based system into .NET. For version 3.0 we changed how log files were moved between agents, server, and the desktop. We’ve had our eye on some major agent changes and figured that’d be when we’d switch to 4.0. So, we’ve been inching forward from 3.0:
- Loupe 3.5: Added the first Loupe Server UI and redid major portions of the Loupe Desktop UI to the ribbon design.
- Loupe 3.6: Added Loupe Enterprise, Issue Management, and very large session support in Loupe Desktop.
- Loupe 3.7: Added Active Directory integration, Loupe Desktop can connect to multiple server repositories, and changed the security protocol between Desktop and Server.
Looking back, we probably should have called Loupe 3.5 version 4.0. Why? Because we’ve heard from folks that never checked out the new server UI because they assumed it couldn’t be a big change since it was just a minor release.
Why bring all this up? Because we’ve gotten feedback from folks that have tried Loupe 3.8 Beta 1 or participated in the webinars we did that this is a big release, and we should call it 4.0. We pulled out the new feature list internally and challenged ourselves to justify it:
- If you’re using our latest release (3.7) and installed this version would it seem like a major upgrade?
- If you haven’t looked at Loupe in a while, would these changes be big enough to make it important to re-evaluate Loupe?
- Are we changing the compatibility story; is it important to upgrade Agents or change how they are used to take advantage of this release?
The more we thought about it, the better it felt - this is going to be Loupe 4.0. For example, changes we made to Loupe Desktop are backwards compatible, but users really should upgrade both Desktop and Server or they’d be missing out on a lot of features. You can now use just Loupe Server and get access to sessions and computers so it’s reasonable to exclusively use the Server UI which is a big upgrade. Combine that with the new Desktop to Server integration, JavaScript Agent, and you’ve got a great reason to re-examine Loupe if you haven’t checked it out in a while.
Forward to Version 4!
Once we’d crossed the Rubicon and decided this had to be version 4.0 we asked ourselves what else needed to change to fully earn that label? We reviewed our backlog and customer feedback and hit a few things that just felt essential:
- JavaScript Logging: Loupe has always been all about .NET, but most Loupe users are combining .NET with JavaScript. Not having a way to integrate errors and log messages from those JavaScript clients with what’s happening on the server is a deal breaker for folks. We’ve started making good on this already with the new Loupe Agent for JavaScript.
- Deeper User Understanding: We discussed basic user tracking features for Loupe Server in the original plan but we realized that some of the fuzzier parts of Loupe are fuzzy because what users really wanted to know was how many users, what specific users, and other details that put users first. That’s a more pervasive change to the UI both in flow and presentation.
- Effective Start Screen: We’ve known for a while the current Home Dashboard users see when first logging into Loupe Server just isn’t effective. It doesn’t even tease most of the functionality in the server and doesn’t answer questions on its own. We need a new approach that touches on more of the platform and feels genuinely useful to both first time and experienced users.
- Updated Web Style: The current web look & feel was designed about three years ago and while it’s aged well, for a major release we want to take the opportunity to clean up some bits we don’t like and modernize it so it’ll feel fresh.
- New Agent Config Options: There are some minor changes to how the Loupe Agent gets its configuration needed to support scripting environments and easier externalized configuration. With this being a major release, it’s a great time to add those in.
We’re also going to go back in the blog and revise our labeling to make sure everything makes sense; that means any reference to 3.8 is going to change to 4.0.
Yet More New Features? That Sounds Like…
We’re going to need more time. We were previously on target to ship the final release at the end of May, but adding these new features (as well as other, more minor, points) inevitably adds time. As we see it, as long as we could ensure everything shipped over the summer then it was a good trade. Therefore, we’ve pushed back to the following schedule:
- Loupe 4.0 Beta 2 (Early July): A feature complete version of Loupe, likely just missing updated documentation and the new web style. This is critical for Beta users to give us good feedback on the effectiveness of the new features.
- Loupe 4.0 RTW (Late August): The final build will be published both for Loupe Service and Loupe Server customers.
This is going to be a full court press for the team to make sure we can hold to this schedule, but shipping this summer is important. Otherwise, our users would have been better off for us to ship 3.8 functionality as it was and then add another release later.
We did turn this around and look at it from the other side: As appealing as this new functionality is, why not put a pin in what we’ve already completed, ship it, and then just add those new items for 4.0? The problem with this is it’d add a fair bit of time to the calendar before we could ship the features we listed above. The reason is that we’d have to fully converge the new web UI (which is already a complete rewrite) and then diverge it again significantly to add the new user features, styling, and dashboard. While 3.8 would be out the door faster, 4.0 would be pushed to late this year. We didn’t want that, we thought a more compelling release at the end of the summer was better value for our community. Plus, since Beta 1 was already available customers using private servers could already take advantage of the new functionality on the original schedule.