Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.    By clickin

pbatard / rufus

submited by
Style Pass
2021-05-30 14:00:06

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Therefore, if we wanted to build Terminal as a UWP app in 2018, then any of the shells that we would spawn (like cmd.exe, powershell.exe or bash) would be unable to do anything to the system. Could you imagine using your shell without being able to change directories, read file contents, or launch any other processes that you could interact with? Obviously, this was a non-starter for us.

In other words, it's not because you were able to create a simple UWP application in less than 5 minutes, that does not need to perform any kind of system access, that UWP is suitable to something else. Just redesigning the UI of Rufus for version 3.0, to make it look more "fluentish" took me about 4 months full time work, and there was nothing that special about it: it's just how long it takes when you take something that looks deceptively simple like Rufus ("How hard can it be to create a bootable drive, right? It's just creating a partition, formatting it and copying a bunch of files from an ISO, right?") and update the myriad of elements that need to be taken care of whenever you touch anything from a UI. And, yes, I did consider trying to go through a UWP layer at the time, just like the Windows Terminal folks did, but I can safely say that, had I done that, it would have taken me much longer than the 4 months I spent on the 2.x to 3.x redesign, since it would have required me to split the app into multiple layer (yeah, it sounds simple on paper, but wait until you actually try to do just that), and it would have meant that Windows 7 users would have been be stuck with Rufus 2.x, even though their platform was still officially supported then.

At this stage, it'd probably be 2023 (Windows 8.1 formal end of support) before I can realistically look at transitioning away from tried and trusted (and universal) Win32/GDI to something else, especially considering that Microsoft is still promising that they might try to get their shit together in terms of allowing Win32 apps to use modern UI APIs with the NOT YET FINALIZED AND WAY TOO NEW TO TRANSITION TO WinUI 3.0 (https://github.com/microsoft/microsoft-ui-xaml/blob/master/docs/roadmap.md#winui-3), which, realistically, should be a much better transition path than UWP.

Leave a Comment
Related Posts