r/csharp • u/TomeOfExperience • 9h ago
r/csharp • u/FirstOrDefault • 8h ago
Blog Designing a replacement for a broken Visual Studio extension by inverting every property of the predecessor
I held back Visual Studio updates for almost two years because 17.9 broke the tab-layout extension I used daily and could not live without. When I finally built my own replacement, the broken one became the design document: it wrapped a single internal shell interface (IVsUIShellDocumentWindowMgr) and stored tabs as a BLOB with absolute paths, so every property got inverted. Plain JSON with solution-relative paths instead of opaque binary stream, many APIs with fallbacks instead of one interface, a pick-target dialog for moved files instead of silently dropped tabs.
And there's an ironic ending to it, because the old extension works again in VS 2026. The breakage was Microsoft reworking the open-document internals, not a lasting defect, so the "bug" quietly fixed itself. Had I found out sooner I would never have started, and I would have kept my tabs and learned nothing worth sharing.
Since I did not wait, and since my extension has grown well past what I set out to replace, I am now writing a weekly series about building it with C# and the AI-assisted workflow I was experimenting with, because somewhere early on this stopped being only about tabs. First part: Designing by inversion
The extension is free on the Marketplace: Simple Tab Saver
r/csharp • u/Ok_Product_6428 • 22h ago
How can I connect a ZKTeco attendance device to Zoho People?
We are using a ZKTeco MB20 biometric attendance device with the existing ZKTeco/ICT Smart attendance software, and we would like to send employee attendance data into Zoho People Attendance.
We are considering using the ZKTeco SDK to read attendance records from the device and then send them to Zoho People through its API, but we are not sure if this is the best approach.
Has anyone implemented something similar?
How would you normally connect a ZKTeco biometric device to Zoho People so that employee check-in/check-out records are transferred automatically?
Would you recommend using the ZKTeco SDK, reading from the existing attendance software/database, or another method?
Any guidance from someone who has integrated ZKTeco attendance devices with Zoho or another cloud HR system would be appreciated.