diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/blog/2023-01-28-windows-desktop/settings.png | bin | 0 -> 43045 bytes | |||
| -rw-r--r-- | src/blog/2023-01-28-windows-desktop/tiling.png | bin | 0 -> 68884 bytes | |||
| -rw-r--r-- | src/blog/2023-01-28-windows-desktop/windows-desktop.md | 200 | ||||
| -rw-r--r-- | src/blog/blog.md | 1 | ||||
| -rw-r--r-- | src/blog/feed.xml | 7 |
5 files changed, 208 insertions, 0 deletions
diff --git a/src/blog/2023-01-28-windows-desktop/settings.png b/src/blog/2023-01-28-windows-desktop/settings.png new file mode 100644 index 0000000..85ec492 --- /dev/null +++ b/src/blog/2023-01-28-windows-desktop/settings.png | |||
| Binary files differ | |||
diff --git a/src/blog/2023-01-28-windows-desktop/tiling.png b/src/blog/2023-01-28-windows-desktop/tiling.png new file mode 100644 index 0000000..dd1f3ec --- /dev/null +++ b/src/blog/2023-01-28-windows-desktop/tiling.png | |||
| Binary files differ | |||
diff --git a/src/blog/2023-01-28-windows-desktop/windows-desktop.md b/src/blog/2023-01-28-windows-desktop/windows-desktop.md new file mode 100644 index 0000000..7b59742 --- /dev/null +++ b/src/blog/2023-01-28-windows-desktop/windows-desktop.md | |||
| @@ -0,0 +1,200 @@ | |||
| 1 | # The year of the Windows desktop | ||
| 2 | |||
| 3 | Last year I started a new job, and my company gave me a laptop. | ||
| 4 | This laptop runs Windows, an operating system I have used in the | ||
| 5 | past, but that I am not very familiar with. It is a closed-source | ||
| 6 | OS, developed by a company called Microsoft, whose main paradigm | ||
| 7 | is letting the user interact with the system via a | ||
| 8 | [graphical user interface](https://en.wikipedia.org/wiki/Graphical_user_interface). | ||
| 9 | |||
| 10 | I have tried Windows a couple of times in the past, but I never stuck | ||
| 11 | with it. Around the year 2000 my family had Windows ME desktop, and a | ||
| 12 | few years later I have used Windows XP for a while. It was not unusable, | ||
| 13 | but I have always found it a bit abstruse. Performing basic tasks such | ||
| 14 | as writing a shell (or *batch*) script or editing a configuration file | ||
| 15 | was hard or straight-up impossible. Somehow, the system got slower and | ||
| 16 | slower after a few months of use. And finally, while I recognize | ||
| 17 | that the closed-source development process has some advantages over | ||
| 18 | community-driven open source management, I personally prefer to use | ||
| 19 | things that are libre and free of charge. | ||
| 20 | |||
| 21 | But a long time has passed since I have last used Windows, and it would | ||
| 22 | not be fair to judge Windows 10 based on my sub-par experience with | ||
| 23 | older versions. In this post I'll review my recent experience with this | ||
| 24 | operating system and I'll try to answer the famous question: Is 2023 | ||
| 25 | going to be year of the Windows desktop? | ||
| 26 | |||
| 27 | ## General use | ||
| 28 | |||
| 29 | ### Desktop and window management | ||
| 30 | |||
| 31 | Let's start with a pleasant surprise: window management is actually | ||
| 32 | quite good for my taste, much better than I remembered from my ME / | ||
| 33 | XP times. Windows now offers virtual desktops, like any classic DE | ||
| 34 | you are used to. Moreover, you can move your windows to the edges of | ||
| 35 | the screen or maximize them with keyboard shortcuts (namely Super key + | ||
| 36 | arrow keys). You can even do some (manual) tiling: | ||
| 37 | |||
| 38 |  | ||
| 39 | |||
| 40 | The desktop looks fairly standard, similar to KDE or Cinnamon: a | ||
| 41 | bottom bar with some launchers, some status and a menu on the bottom | ||
| 42 | left. I approve of not changing things when they are not broken, good | ||
| 43 | job Microsoft! | ||
| 44 | |||
| 45 | The start menu now is also searchable by typing, a nice improvement. | ||
| 46 | |||
| 47 | ### Default apps | ||
| 48 | |||
| 49 | There are some default apps installed in Windows, although I can't say | ||
| 50 | which of them were actually included in Windows and which have been | ||
| 51 | installed by my organization. | ||
| 52 | |||
| 53 | The browser is called Edge, and it is just another Chrome fork. There | ||
| 54 | is an email client called Outlook, a collaboration / video call app | ||
| 55 | called Teams and an office suite called Office. In general these apps | ||
| 56 | work... ok. They are all quite bloated and offer a lot of options. | ||
| 57 | They have their bugs and glitches (see below), but they do their job. | ||
| 58 | |||
| 59 | Honestly I am not impressed by these apps. They don't seem to offer | ||
| 60 | much more than 20 years ago - except perhaps Teams, which is a recent | ||
| 61 | addition. I guess users who make extensive use of their office suite | ||
| 62 | might prefer this, but you'll need a pretty powerful machine to run | ||
| 63 | these programs smoothly. | ||
| 64 | |||
| 65 | As a positive note, the default text editor Notepad is nice and | ||
| 66 | lightweight, a good piece of software. | ||
| 67 | |||
| 68 | ### Package management | ||
| 69 | |||
| 70 | Traditionally, the only way to install new applications on Windows | ||
| 71 | was getting them from a third party source (website, CD-rom, ...) and | ||
| 72 | running an installer. Things are much better now: Windows offers both a | ||
| 73 | graphical "app store" and a command-line tool called Winget. There are | ||
| 74 | also third-party tools such as [Chocolatey](https://chocolatey.org/). | ||
| 75 | |||
| 76 | ### Bugs and sluggishness | ||
| 77 | |||
| 78 | Now let's move on to some of the bad stuff. The system overall feels | ||
| 79 | quite slow and sluggish. I would normally not complain about it - after | ||
| 80 | all, not all software is meant to be lightweight and quick, and Windows | ||
| 81 | is clearly opting for feature richness over speed. However, with a core | ||
| 82 | i9 CPU, two GPUs and 64Gb of RAM I would have expected better performance. | ||
| 83 | |||
| 84 | I have also noticed quite a large amount of small bugs and a few crashes | ||
| 85 | while doing completely normal operations. They range from minor graphical | ||
| 86 | glitches, to workflow problems (e.g. windows rearranging in position | ||
| 87 | when resuming from screen lock, video player freezing until reboot) | ||
| 88 | to complete crashes. The search feature in the file explorer seems to | ||
| 89 | be straight-up broken. The list goes on. | ||
| 90 | |||
| 91 | All of this is not a deal-breaker. It reminds me of the early KDE 4 days | ||
| 92 | - you are constantly fighting with an unstable system, but you can get | ||
| 93 | your job done. Unfortunately for Microsoft, I expect this to put off | ||
| 94 | many new users trying out Windows for the first time. | ||
| 95 | |||
| 96 | ### Games | ||
| 97 | |||
| 98 | Unfortunately, Windows 10 does not come with any game included :( | ||
| 99 | |||
| 100 | ## Advanced use | ||
| 101 | |||
| 102 | ### Configurability and settings | ||
| 103 | |||
| 104 | One of the mistakes you can make when using Windows is trying to use it | ||
| 105 | as if it were Linux. This applies in particular when configurina | ||
| 106 | the desktop to your taste. | ||
| 107 | |||
| 108 | First of all, Windows does not offer as much configurability as Linux | ||
| 109 | does. I am not completely against this approach, it just feels limiting | ||
| 110 | not being able to tune every aspect of my OS. | ||
| 111 | |||
| 112 | Secondly, the only way to configure your Windows system is via a graphical | ||
| 113 | user interface. I find this approach vastly inferior to simply editing | ||
| 114 | a configuration file, for many reasons: things are harder to find, often | ||
| 115 | hiding behind multiple layers of settings menus; the system is not | ||
| 116 | reproducible, i.e. I can't copy my configuration files and move them to | ||
| 117 | my next installation; and so on. | ||
| 118 | |||
| 119 |  | ||
| 120 | |||
| 121 | One terrible experience I had was trying to configure the keyboard | ||
| 122 | layout to the one I am used to, that is US layout with Right Alt as | ||
| 123 | [Compose key](https://en.wikipedia.org/wiki/Compose_key). It turned | ||
| 124 | out that this is not possible at all! There is also no way to swap | ||
| 125 | the Escape key with Caps Lock, but I was able to work around this with | ||
| 126 | [AutoHotkey](https://www.autohotkey.com/). | ||
| 127 | |||
| 128 | But again, I should not complain so much: I should use Windows as Windows | ||
| 129 | and accept its choices, and not get mad at it for not being Linux. | ||
| 130 | |||
| 131 | ### Software development | ||
| 132 | |||
| 133 | Although it does not look like software developers | ||
| 134 | are a target user for Windows, it is still possible | ||
| 135 | to do some programming in it. Microsoft even offers an | ||
| 136 | [IDE](https://en.wikipedia.org/wiki/Integrated_development_environment) | ||
| 137 | called Visual Studio, and its own framework called | ||
| 138 | [.NET](https://en.wikipedia.org/wiki/.NET). | ||
| 139 | |||
| 140 | Personally I don't like Visual Studio, although many of my colleagues | ||
| 141 | swear by it. I find it slow (more than one minute from launch to | ||
| 142 | "ready"!) and its celebrated auto-completion features seem fine only | ||
| 143 | for trivial stuff, making blatant mistakes as soon as your code has some | ||
| 144 | bits of complex logic in it. | ||
| 145 | |||
| 146 | One very positive note: Microsoft does offer some | ||
| 147 | incredible online documentation for developers, available at | ||
| 148 | [learn.microsoft.com](https://learn.microsoft.com). It is truly | ||
| 149 | well-written, and a big help both for learning and as a reference | ||
| 150 | manual. A win for Microsoft here! | ||
| 151 | |||
| 152 | ### The command line | ||
| 153 | |||
| 154 | Although for Windows the command line is a second-class citizen, it does | ||
| 155 | have one, called **Powershell**. It is also possible to install **WSL** | ||
| 156 | to run a small Linux system inside Windows. | ||
| 157 | |||
| 158 | The Powershell's language is different from the UNIX shell. There | ||
| 159 | are many similarities, such as the basic commands for listing, copying | ||
| 160 | and removing files, but internally it is much different. There is no | ||
| 161 | [piping](https://en.wikipedia.org/wiki/Pipeline_(Unix)), the shell's | ||
| 162 | interpreter is case-insensitive and even its auto-completion feature | ||
| 163 | differs from Bash's! Overall this is not good or bad, just different. | ||
| 164 | |||
| 165 | [WSL](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux), | ||
| 166 | short for **W**SL i**S** not an emu**L**ator, is basically a virtual | ||
| 167 | machine with access to the host file system. It can be hit or miss with | ||
| 168 | graphical applications (support for X was added relatively recently), | ||
| 169 | but it generally works fine for command line tools. | ||
| 170 | |||
| 171 | WSL saved my life a couple of times when I had to edit a file with a | ||
| 172 | quick `sed` command. Working in WSL kind of defeats the purpose of using | ||
| 173 | Windows, but if you really struggle without some of your favorite | ||
| 174 | programs, it is at least an option. | ||
| 175 | |||
| 176 | ## Conclusion | ||
| 177 | |||
| 178 | The first impression I had of Windows was that it is not an OS for | ||
| 179 | everyone. Sure, if you need an advanced integrated office suite or a | ||
| 180 | complex calendar + email + video call system, it might be the OS for | ||
| 181 | you. But I just don't think it is suitable for a regular software | ||
| 182 | developer like myself, and the frequent bugs and general sluggishness | ||
| 183 | are going to put off any occasional user. | ||
| 184 | |||
| 185 | But, to be fair, all software has some bugs, including Linux. People who | ||
| 186 | complain that "Windows sucks" or "it just does not work" probably just got | ||
| 187 | used to the stuff that "sucks" or "does not work" on Linux. Or perhaps | ||
| 188 | they don't want to make the effort to learn a different system, or to | ||
| 189 | spend a few hundred bucks for a Windows license. | ||
| 190 | |||
| 191 | So why is Windows not so popular? I believe it is because people just | ||
| 192 | use the OS that comes with the hardware they buy, without even wondering | ||
| 193 | what operating system they are running. If more hardware vendors offered | ||
| 194 | Windows instead of Linux, it would probably gain popularity. Nobody | ||
| 195 | would complain that they can't run systemd or Vim, because most of the | ||
| 196 | stuff people need is just a webapp nowadays. | ||
| 197 | |||
| 198 | If Microsoft ever manages to convince hardware vendors to ship Windows on | ||
| 199 | their products, maybe then the year of the Windows desktop will come. I | ||
| 200 | wish them good luck, but I'll stick to Linux for now. | ||
diff --git a/src/blog/blog.md b/src/blog/blog.md index 135dc86..d6ce61d 100644 --- a/src/blog/blog.md +++ b/src/blog/blog.md | |||
| @@ -5,6 +5,7 @@ | |||
| 5 | 5 | ||
| 6 | ## 2023 | 6 | ## 2023 |
| 7 | 7 | ||
| 8 | * 2023-01-28 [The year of the Windows desktop](2023-01-28-windows-desktop) | ||
| 8 | * 2023-01-11 [Aaron Swartz](2023-01-11-aaron-swartz) | 9 | * 2023-01-11 [Aaron Swartz](2023-01-11-aaron-swartz) |
| 9 | 10 | ||
| 10 | ## 2022 | 11 | ## 2022 |
diff --git a/src/blog/feed.xml b/src/blog/feed.xml index 12297bc..9bbb571 100644 --- a/src/blog/feed.xml +++ b/src/blog/feed.xml | |||
| @@ -9,6 +9,13 @@ Thoughts about software, computers and whatever I feel like sharing | |||
| 9 | </description> | 9 | </description> |
| 10 | 10 | ||
| 11 | <item> | 11 | <item> |
| 12 | <title>The year of the Windows desktop</title> | ||
| 13 | <link>https://sebastiano.tronto.net/blog/2023-01-28-windows-desktop</link> | ||
| 14 | <description>The year of the Windows desktop</description> | ||
| 15 | <pubDate>2023-01-28</pubDate> | ||
| 16 | </item> | ||
| 17 | |||
| 18 | <item> | ||
| 12 | <title>Aaron Swartz</title> | 19 | <title>Aaron Swartz</title> |
| 13 | <link>https://sebastiano.tronto.net/blog/2023-01-11-aaron-swartz</link> | 20 | <link>https://sebastiano.tronto.net/blog/2023-01-11-aaron-swartz</link> |
| 14 | <description>Aaron Swartz</description> | 21 | <description>Aaron Swartz</description> |
