
In my last post, I ended things by discussing my dilemma between focusing on the legacy issue and focusing on production. Near the beginning of the month, I made the decision to focus solely on the legacy issue, but with a twist.
More background
Last month (Month six), I had my Senior developer work on the Proof of Concept(POC) to solve the Windows 11 issue. To give more insight into the issue, the VB.Net application we support has a feature that allows a user to view and edit a Microsoft Word document directly in the app; an embedded Word document if you will. The technology to get this working is fairly old and mostly deprecated (but hey, it’s the government and things change slowly). All works well on Windows 10 since it still supports Internet Explorer. But with Microsoft removing Internet Explorer in Windows 11, the libraries were not playing nice and Word was no longer embedded in the application.
In his POC, my Senior dev was able to build something called CKEditor, a web-based WYSIWYG editor that lets you load a word document and display in the editor, while also being able to edit it. Pretty cool. VB.Net has a “Webview2” based on Microsoft Edge browser that can easily display web pages. The thing that gave me pause was the different pieces needed to get this web portion up an running. This solution would need a fair amount of API and database work, while still needing to do some work on the legacy application. Needless to say, I wanted a different solution.
Breaking down the decision
After searching for a couple of days, I was able to find a Rich-Text Editor that would work without the Web; a “native” version so-to-speak. However, because I was not confident about it working, I made a decision to work on both the web and native options simultaneously. By doing this, I was sort of hedging my bets. The web version needed to get done anyways since it is part of the modernization effort. So if the native way came up empty, I could just fall back on the web version. It made sense to me.
Tradeoffs and the doubts they bring
Of course, most decisions in life have tradeoffs. For this decision, I essentially had both my Senior Dev and myself working on the same feature when one of us could have been working on the other stories needed for the production release. I felt pretty good at the beginning, feeling hopeful that I would be able to knock out the native stuff pretty quickly. However, as the days went on, and as things didn’t quite go smoothly, I started wondering if I should have went down a different path. There is a saying:
“A person often meets his destiny on the road he took to avoid it”
– Jean de La Fontaine
This phrase always comes to mind for most things I do. And with me trying to avoid the complexity of the web implementation, it was front of mind. Is me taking on the native going to end with just doing the web version anyways? Should I stop when I hit any resistance? How far could I be with the production release if I had just focused on that from the start? These thoughts suck and they are difficult to ward off. As a man of faith, I pray a lot, and I was really asking for sign that I was on right path. Up until now, I have not received one which further adds to the doubt. I gave myself an internal deadline for the end of January to see if the native solution is viable. If not, then I will pivot… again.
RELATED POSTS
View all